1.1 Linear Models线性模型

sklearn官方文档的中文翻译
https://scikit-learn.org/stable/modules/linear_model.html#ordinary-least-squares

IDE使用jupyter lab

1.1 线性模型

本章讲述一系列回归方法,这些方法假定因变量是特征(自变量)的线性组合,因此称他们为线性模型。
将待预测的因变量记作 y ^ \hat{y} y^, 线性模型的数学描述如下:
在这里插入图片描述

之后,我们把公式中的系数向量 w = ( w 1 , . . . , w p ) w=(w_1,...,w_p) w=(w1,...,wp)记作coef_,把截距 w 0 w_0 w0记作intercept_

1.1.1 普通最小二乘 OLS,Ordinary Least Squares

sklearn的linear_model模块中的LinearRegression()遵循最小二乘法进行拟合。拟合是指求出一个表现最好的模型的系数。
普通最小二乘法是衡量“表现最好”的一种方法:当由这组系数构成的这个线性模型的预测值 y ^ \hat{y} y^与数据中已有的因变量 y y y之间差的平方和最小,则认为该模型表现最好。数学描述如下:
在这里插入图片描述
使用sklearn中的线性回归模型时:
- 先实例化
- 然后用fit方法放入自变量矩阵X和因变量y,模型会根据最小二乘法进行拟合
- 拟合后得到的系数和截距存储在模型的coef_intercept_属性中
在这里插入图片描述

要注意的是:普通最小二乘法依赖于特征之间的独立性,如果自变量间有多重共线性(即几个自变量彼此高度相关),数据中因变量y值的随机误差的影响会很大。

1)非负最小二乘法

如果要拟合的模型的系数是非负的数量,比如频率、商品价格等,那么在实例化时可以设定LinearRegression(positive=True),将系数coef_限制为非负的(即可以是0)。

2)最小二乘法的复杂度

最小二乘法的计算是利用了特征矩阵X的奇异值进行降维,如果矩阵X的维度是(n_样本行数,m_特征列数),假定 n 样 本 行 数 > m 特 征 列 数 n_{样本行数}>m_{特征列数} n>m,那么该方法复杂度为 O ( n ∗ m 2 ) O(n*m^2) O(nm2)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值