原文链接: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  % 用于重现性 randnexp(X)*weights + 1

构建数据的泊松回归模型的穿插验证lasso正则化。

查看穿插验证图以查看Lambda 正则化参数的成果 。

Plot('CV'); legend

绿色圆圈和虚线定位 Lambda 穿插验证误差最小的地位。蓝色圆圈和虚线定位具备最小穿插验证误差加一个标准偏差的点。

找到对应于两个辨认点的非零模型系数。

FitInffind(B

FitInfmin1fnd(B)

来自最小加一标准误差点的系数正是用于创立数据的那些系数。

应用lasso正则化预测值

加载 学生考试成绩数据集。将上次考试成绩转换为逻辑向量,其中 1 代表80以上0 的问题, 代表80以下的问题。

ynm = (y>=80);

将数据划分为训练集和测试集。

rng default % 设置可重复性的种子Xi = X(iTain,:);yran = yBinomyTe = 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语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测