美文网首页学习scikit-learn
scikit-learn--Generalized Linear

scikit-learn--Generalized Linear

作者: DayDayUp_hhxx | 来源:发表于2017-06-06 15:13 被阅读34次

    最小二乘法

    LinearRegression使用系数w 拟合模型,最小化实际观测值和预测值的残差平方和。

    然而,最小二乘法的系数估计依赖于模型中变量的独立性,当模型中的解释变量存在相关关系,会导致多重共线性,例如,数据收集没有经过实验设计。

    岭回归

    岭回归通过对系数大小增加惩罚解决了最小二乘法的一些问题。岭回归使用L2正则


    alpha大于等于0是一个复杂系数,控制着收缩量,alpha值越大,收缩量越大,系数越稳健。
    RidgeCV通过alpha系数的交叉验证来建立岭回归。

    Lasso

    Lasso是一个估计稀疏系数的线性模型,它倾向于选择较少的参数值的解决方案,有效地减少结果所依赖的变量数。Lasso使用L1正则


    参数alpha控制着估计系数的稀疏程度。设置alpha参数有两种主要方法:交叉验证、基于模型选择的信息准则;

    • 交叉验证:LassoCV和LassoLarsCV。LassoLarsCV建立在Least Angle Regression算法基础上。对于有多重共线性的高维数据集,LassoCV通常是较好的。然而,LassoLarsCV在探索alpha参数方面更有优势,如果样本数小于观测值数,它通常比LassoCV更快。
    • 基于模型选择的信息准则。LassoLarsIC提出使用Akaike信息准则(AIC)和Bayes信息准则(BIC)。这些信息准则需要对结果自由度有适当的估计、来自大样本、假设模型是正确的等等。

    弹性网络(Elastic-net)

    弹性网络是一种使用L1和L2正则化方法的线性回归模型。它能够学习只有很少非零权重的稀疏模型(比如Lasso),也保留了Ridge的正则化功能。我们使用 l1_ratio 参数去控制L1和L2。
    当有很多特征高度相关时弹性网络很有用,Lasso可能是随机的选择了一个,而弹性网络可能选择了两个。


    ElasticNetCV能使用交叉验证来确定参数alpha和 l1_ratio。

    最小角回归(Least Angle Regression)

    LARS是一种用于高维数据的回归算法。
    LARS的优点:

    • 当维度比样本数多的时候,能高效计算;
    • 计算和向前选择方法一样快,复杂度和最小二乘法一样;
    • 生成完整的线性解路径,在交叉验证或模型调整时很有用;
    • 如果两个变量对因变量有几乎相等的关系,那么他们的系数也应该按大致相同的速率增加。LARS的表现和直觉期望的一样,也更稳定;
    • 很容易修改,产生其他的解决方案,例如Lasso。
      LARS的不足:
      由于LARS是基于残差的迭代修正,对噪音非常敏感。

    LARS Lasso

    LARS Lasso是Lasso模型的LARS算法实现,不同于坐标下降法,它将返回准确值。
    The algorithm is similar to forward stepwise regression, but instead of including variables at each step, the estimated parameters are increased in a direction equiangular to each one’s correlations with the residual.

    推荐博文

    作者对各种回归算法从损失函数、优化方法、验证方法、使用场景等方面进行了总结。
    http://www.cnblogs.com/pinard/p/6026343.html

    相关文章

      网友评论

        本文标题:scikit-learn--Generalized Linear

        本文链接:https://www.haomeiwen.com/subject/fyqbfxtx.html