gpt4 book ai didi

python - 具有非正则化截距项的 Scikit-learn Ridge 回归

转载 作者:太空狗 更新时间:2023-10-29 21:43:05 25 4
gpt4 key购买 nike

scikit-learn Ridge 回归是否在正则化项中包含截距系数,如果是,是否有一种方法可以在不对截距进行正则化的情况下运行岭回归?

假设我拟合岭回归:

from sklearn import linear_model

mymodel = linear_model.Ridge(alpha=0.1, fit_intercept=True).fit(X, y)
print mymodel.coef_
print mymodel.intercept_

对于某些数据 X, y,其中 X 不包括一列 1。 fit_intercept=True会自动增加一个截距列,对应的系数由mymodel.intercept_给定。我无法弄清楚的是这个截距系数是否是优化目标中正则化求和的一部分。

根据 http://scikit-learn.org/stable/modules/linear_model.html ,优化目标是最小化 w:

||X*w - y||**2 + alpha* ||w||**2

(使用 L2 范数)。第二项是正则化项,问题是在我们设置fit_intercept=True的情况下是否包含截距系数;如果是这样,如何禁用它。

最佳答案

拦截不会受到惩罚。只需尝试一个具有大截距的简单 3 点示例。

from sklearn import linear_model
import numpy as np

x=np.array([-1,0,1]).reshape((3,1))
y=np.array([1001,1002,1003])
fit=linear_model.Ridge(alpha=0.1,fit_intercept=True).fit(x,y)

print fit.intercept_
print fit.coef_

截距设置为 MLE 截距 (1002),而斜率被惩罚(0.952 而不是 1)。

关于python - 具有非正则化截距项的 Scikit-learn Ridge 回归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26126224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com