Matlab广义线性模型glm泊松回归的lasso、弹性网络正则化分类预测考试成绩数据和交叉验证可视化 |
您所在的位置:网站首页 › 时间序列截面数据和面板数据的例子 › Matlab广义线性模型glm泊松回归的lasso、弹性网络正则化分类预测考试成绩数据和交叉验证可视化 |
最近我们被客户要求撰写关于Matlab的研究报告,包括一些图形和统计输出。 相关视频:R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险逻辑回归Logistic模型原理和R语言分类预测冠心病风险实例 ,时长06:48 使用冗余预测变量构建数据集并使用lasso和 glm识别这些预测变量 。 使用lasso正则化去除冗余预测变量创建一个X 包含 100 个观测值和 10 个预测变量的随机矩阵 。y 仅使用四个预测变量和少量噪声创建正态分布因变量 。 默认值 randn ; X*权重 + randn*0.1; % 小的附加噪音执行lasso正则化。 lasso求第 75 个Lambda 值 的系数向量 B。 lassoglm 识别并删除冗余预测变量。 相关 视频:Lasso回归、岭回归等正则化回归数学原理及R语言实例Lasso回归、岭回归等正则化回归数学原理及R语言实例 广义线性模型的交叉验证lasso正则化从泊松模型构建数据,并使用lasso 确定重要的预测变量 。 创建具有 20 个预测变量的数据。仅使用三个预测变量加上一个常数来创建泊松因变量。 rng % 用于重现性 randn exp(X)*weights + 1构建数据的泊松回归模型的交叉验证lasso正则化。 检查交叉验证图以查看Lambda 正则化参数的效果 。 Plot('CV'); legend绿色圆圈和虚线定位 Lambda 交叉验证误差最小的位置。蓝色圆圈和虚线定位具有最小交叉验证误差加一个标准偏差的点。 找到对应于两个识别点的非零模型系数。 FitInf find(B FitInf min1fnd(B)来自最小加一标准误差点的系数正是用于创建数据的那些系数。 使用lasso正则化预测值加载 学生考试成绩数据集。将上次考试成绩转换为逻辑向量,其中 1 代表80以上0 的成绩, 代表80以下的成绩。 ynm = (y>=80);将数据划分为训练集和测试集。 rng default % 设置可重复性的种子 Xi = X(iTain,:); yran = yBinom yTe = yBinom对训练数据进行 3 折交叉验证,对广义线性模型回归执行lasso正则化。假设 中的值 y 是二项分布的。选择对应于Lambda 最小预期偏差的模型系数 。 lasso(Trn,Tain,'binomial','CV',3); ince = FitIiance; FitIept使用在上一步中找到的模型系数预测测试数据的考试成绩。使用 指定二项式因变量的链接函数 'logit'。将预测值转换为逻辑向量。 使用混淆矩阵确定预测的准确性。 confuhart该函数可以正确预测 31 个考试成绩。然而,该函数错误地预测了1名学生获得B或以上的成绩,4名学生获得B以下的成绩。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |