主要内容

正规化泊松回归

此示例显示了如何从广义线性模型中识别和删除冗余预测器。

用20个预测器创建数据,只使用只有三个预测器以及泊泊响应以及常数。

RNG('默认'的)再现性的百分比x = randn(100,20);mu = exp(x(:,[5 10 15])* [。4; .2; .3] + 1);y = poissrnd(mu);

构建数据的泊松回归模型的交叉验证的套索正则化。

[b,fitinfo] = lassoglm(x,y,'泊松''简历'10);

检查交叉验证情节以查看效果lambda.正则化参数。

Lassoplot(B,FitInfo,'plottype''简历');传奇('展示'的)%显示传奇

图包含轴对象。带有标题交叉验证偏差的轴对象的轴对象包含5型误差栏,线路的对象。这些对象代表偏离误差栏,LambdamIndeviance,Lambda1se。

绿色圆圈和虚线定位lambda.具有最小交叉验证错误。蓝色圆圈和虚线定位具有最小交叉验证错误加上一个标准偏差的点。

找到与两个已识别的点对应的非零模型系数。

Minpts =查找(b(:,fitinfo.indexmindeviance))))
minpts =7×13 5 6 10 11 15 16
min1pts = find(b(:,fitinfo.index1se))))
min1pts =3×15 10 15.

来自最小加标准错误点的系数正是用于创建数据的系数。

在最小加上一个标准错误点找到模型系数的值。

B(min1pts,fitinfo.index1se)
ANS =.3×10.2903 0.0789 0.2081

正如预期的那样,系数的值小于原件[0.4,0.2,0.3]。套索通过“收缩”,使预测器系数偏向零。

恒定的术语在于fitinfo.intercept.向量。

fitinfo.intercept(fitinfo.index1se)
ans = 1.0879.

恒定项近1,这是用于生成数据的值。