主要内容

规范逻辑回归

此示例显示了如何正规键化二项式回归。二项式回归的默认(规范)链接函数是逻辑函数。

步骤1.准备数据。

加载电离层数据。响应y是一个细胞阵列'G''B'字符。将单元格转换为逻辑值真正的代表'G'.删除的前两列X因为它们具有一些尴尬的统计属性,这超出了本次讨论的范围。

加载电离层Ybool = Strcmp(Y,'G');x = x(:,3:结束);

步骤2.创建交叉验证的拟合。

使用25构建正则化二项式回归lambda.值和10倍交叉验证。这个过程可能需要几分钟。

rng (“默认”的)再现性的百分比[b,fitinfo] = lassoglm(x,ybool,“二”......'numlambda',25,'简历'10);

步骤3.检查绘图以找到适当的正则化。

Lassoplot.可以给出标准的跟踪图和交叉验证的偏差图。检查两个图。

Lassoplot(B,FitInfo,'plottype''简历');传奇('展示'“位置”'最好的事物'的)%显示传奇

该曲线标识与绿色圆圈和虚线的最小偏差点作为正则化参数的函数lambda..蓝色圆圈点具有最小偏差加不超过一个标准偏差。

Lassoplot(B,FitInfo,'plottype''lambda''xscale''日志');

跟踪绘图显示非零模型系数作为正则化参数的函数lambda..因为有32个预测因子和一个线性模型,所以有32条曲线。作为lambda.向左增加,lassoglm.将各种系数设置为零,从模型中删除它们。

跟踪曲线有点压缩。放大以查看更多细节。

xlim([。01 .1]) ylim([-3 3])

作为lambda.朝向绘图的左侧增加,仍然存在更少的非零系数。

找到非零模型系数的数量lambda.最小偏差值加上一个标准差点。正则化模型系数列示FitInfo。Index1SEB.矩阵。

indx = fitinfo.index1se;B0 = B(:,Indx);非安利斯= SUM(B0〜= 0)
诺塞洛斯= 14.

当您设置lambda.FitInfo。Index1SElassoglm.删除32个原始预测因子的一半。

步骤4.创建正则化模型。

恒定的术语在于FitInfo。Index1SE进入fitinfo.intercept.向量。称这个价值叫CNST.

该模型是Logit(MU)= log(mu /(1 - mu))=X * B0 + CNST.因此,对于预测,mu =exp(X*B0 + cnst)/(1+exp(X*B0 + cnst))

glmval.函数评估模型预测。它假设第一模型系数与常数术语有关。因此,首先创建具有恒定术语的系数矢量。

cnst = FitInfo.Intercept (indx);B1 = [cnst; B0];

步骤5.检查残差。

绘制针对正规化的模型预测的培训数据lassoglm.模型。

preds = glmval(b1,x,'logit');直方图(Ybool -仅仅)%绘图残差标题('来自Lassoglm Model的残差'的)

步骤6.替代:在最小二乘广义线性模型中使用识别的预测器。

您可以使用仅识别的预测器来制作不偏的模型而不是使用模型中的偏见预测。

预测器=查找(b0);非零预测器的%指数mdl = fitglm(x,ybool,'线性'......'分配'“二”'predictorvars'预测)
mdl =广义线性回归模型:y ~[14个预测因子中15项线性公式]分布=二项估计系数:Estimate SE tStat pValue _________ _______ ________ __________ (Intercept) -2.9367 0.50926 -5.7666 8.0893e-09 x1 2.492 0.60795 4.099 4.1502e-05 x3 2.5501 0.63304 4.0284 5.616e-05 x4 0.48816 0.50336 0.9698 0.33215 x5 0.6158 0.62192 0.99015 0.3221 x6 2.294 0.5421 4.2317 2.3198e-05 x7 0.77842 0.57765 1.3476 0.1778 x12 1.7808 0.54316 3.2786 0.0010432x16 -0.070993 0.50515 -0.14054 0.88823 x20 -2.7767 0.55131 -5.0365 4.7402e-07 x24 2.0212 0.55639 3.5067 0.00045372 x25 -2.3796 0.58274 -4.0835 4.4363e-05 x27 0.79564 0.55904 1.4232 0.15467 x29 1.2689 0.55468 2.2876 0.022162 x32 -1.5681 0.54336 -2.8859 0.0039035 351观测,336误差自由度1 Chi^2-statistic vs. constant model: 262, p-value = 1e-47

绘制模型的残差。

plotresids(MDL)

正如预期的那样,来自最小二乘模型的残差略小于正则化模型的剩余。但是,这并不意味着mdl是新数据的更好预测因素。