普通最小二乘法 LinearRegression

普通最小二乘法  (正规方程组)

拟合一个带有系数w = (w_1, ..., w_p) 的线性模型,使得数据集实际观测数据和预测数据(估计值)之间的残差平方和最小。数学表达式:

 \underset{w}{min\,} {|| X w - y||_2}^2

LinearRegression 会调用 fit 方法来拟合数组 X, y,并且将线性模型的系数 w 存储在其成员变量 coef_ 中

from sklearn import linear_model

reg = linear_model.LinearRegression()
reg.fit ([[0, 0], [1, 1], [2, 2]], [0, 1, 2])
print(reg.coef_)  # [0.5 0.5]

LinearRegression(fit_intercept=Truenormalize=Falsecopy_X=Truen_jobs=None)

参数fit_intercept是否计算该模型的截距b。如果设置为False,计算中将不使用截距(例如,数据预期已经居中)。
 normalize当fit_intercept设置为False时,将忽略该参数。若为真,则回归前对回归量X进行归一化处理,取均值减去后除以l2-范数。
copy_X一个布尔值。如果为True,会复制X,否则会覆盖X
n_jobs用于计算的作业数。这只会为n_targets > 1和足够大的问题提供加速。

回值

coef_线性回归问题的估计系数。
 intercept_

b值。

方法fit(Xysample_weight=None)fit 方法来拟合数组 X, y
 get_params(deep=True)就是获得fit_intercept=Truenormalize=Falsecopy_X=Truen_jobs=None
predict(X)利用训练好的参数,来预测新的数据X对应的y
score(Xysample_weight=None)模型的效果
set_params(**params) 
from sklearn import linear_model

reg = linear_model.LinearRegression()
reg.fit ([[0, 0], [1, 1], [2, 2]], [0, 1, 2])
reg.get_params()
print(reg.coef_)
print(reg.intercept_)
print(reg.score([[0, 0], [1, 1], [2, 2]], [0, 1, 2.5]))
print(reg.get_params())
print(reg.set_params(copy_X=False,fit_intercept=False))
print(reg.get_params())

'''
[0.5 0.5]
1.1102230246251565e-16
0.9210526315789473
{'copy_X': True, 'fit_intercept': True, 'n_jobs': 1, 'normalize': False}
LinearRegression(copy_X=False, fit_intercept=False, n_jobs=1, normalize=False)
{'copy_X': False, 'fit_intercept': False, 'n_jobs': 1, 'normalize': False}
'''

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值