关于数据挖掘:Matlab广义线性模型glm泊松回归的lasso弹性网络正则化分类预测考试成绩数据和交叉验证可视化

2次阅读

共计 1265 个字符,预计需要花费 4 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=24777 

应用冗余预测变量构建数据集并应用 lasso 和 glm 辨认这些预测变量。

应用 lasso 正则化去除冗余预测变量

创立一个X 蕴含 100 个观测值和 10 个预测变量的随机矩阵。y 仅应用四个预测变量和大量噪声创立正态分布因变量。

默认值
randn ;

X* 权重 + randn*0.1; % 小的附加乐音

执行 lasso 正则化。

lasso

求第 75 个Lambda 值 的系数向量 B

lassoglm 辨认并删除冗余预测变量。

狭义线性模型的穿插验证 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 以下的问题。


最受欢迎的见解

1.R 语言多元 Logistic 逻辑回归 利用案例

2. 面板平滑转移回归 (PSTR) 剖析案例实现剖析案例实现 ”)

3.matlab 中的偏最小二乘回归(PLSR)和主成分回归(PCR)

4.R 语言泊松 Poisson 回归模型剖析案例

5.R 语言混合效应逻辑回归 Logistic 模型剖析肺癌

6.r 语言中对 LASSO 回归,Ridge 岭回归和 Elastic Net 模型实现

7.R 语言逻辑回归、Naive Bayes 贝叶斯、决策树、随机森林算法预测心脏病

8.python 用线性回归预测股票价格

9.R 语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测

正文完
 0