主要内容

套索和弹性网,交叉验证

该示例显示了如何使用套索和弹性网方法来预测基于其重量,位移,马力和加速的汽车的里程(MPG)。

加载CARBIG.数据集。

加载CARBIG.

提取连续(非类别)预测器(套索不处理分类预测器)。

X = [加速位移马力重量];

执行10倍交叉验证的套索拟合。

[b,fitinfo] =套索(x,mpg,'简历'10);

绘制结果。

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

图包含2个轴对象。轴对象1带有标题跟踪图曲线图是空的系数拟合是空的。轴对象2带有Lasso的系数的标题跟踪图包含6个类型线的6个对象。这些对象代表Lambdaminmse,Lambda1se,B1,B2,B3,B4。

计算预测器的相关性。首先消除NANS。

nonan =〜任何(Isnan([x mpg]),2);xnonan = x(nonan,:);MPGNONAN = MPG(NONAN,:);corr(xnonan)
ANS =.4×41.0000 -0.5438 -0.6892 -0.4168 -0.5438 1.0000 0.8973 0.9330 -0.6892 0.8973 1.0000 0.8645 -0.4168 0.9330 0.8645 1.0000

因为一些预测器是高度相关的,所以进行弹性网配件。用Α= 0.5。

[ba,fitinfoa] =套索(x,mpg,'简历',10,'Α',.5);

绘制结果。为每个预测器命名,以便您可以判断哪个曲线。

pnames = {'加速''移位''马力''重量'};Lassoplot(Ba,Fitinfoa,'plottype''lambda''xscale''日志'......'predictornames',pnames);

图包含2个轴对象。轴对象1具有弹性网(Alpha = 0.5)的系数拟合系数的标题曲线图是空的。轴对象2带有弹性网(Alpha = 0.5)的系数的标题迹线图包含6个类型线的6个对象。这些物体代表Lambdaminmse,Lambda1se,加速,位移,马力,重量。

激活数据光标并单击绘图时,您会看到预测器的名称,系数,值lambda.和那个点的索引,这意味着列B.与适合相关联。

在这里,弹性网和套索结果不是很相似。而且,弹性网曲线反映了弹性网技术的显着定性特性。弹性网保留三个非零系数lambda.增加(朝向图的左侧),这三个系数达到0左右lambda.价值。相反,套索图显示了三个系数中的两个变为0的值lambda.,而另一个系数仍然是较高值的非零lambda.

此行为举例说明了一般模式。通常,弹性网倾向于保留或落入高度相关的预测因子组lambda.增加。相比之下,套索倾向于下降较小的群体,甚至是个体预测因子。

也可以看看

||||

相关话题