线性回归 Linear Regression (1)

1. 什么是线性模型 (linear Regression model)

线性回归模型通过简单计算输入特征的加权和,再加上一个常数项,即 bias term (又称为 intercept term) 来进行预测,如式-1所示。

【式-1:线性回归模型预测】

ŷ =θ0+θ1x1+θ2x2++θnxx y ^ = θ 0 + θ 1 x 1 + θ 2 x 2 + ⋯ + θ n x x

- ŷ  y ^ 是预测值
- n n 是特征的数量(特征的维度)
- xi 是当前实例(instance)的第 i i 维特征的取值
- θj 是第 j j 个模型参数

式-1可以简洁表达为式-2的形式:

【式-2:线性回归模型预测-向量形式】

y^=hθ(x)=θTx

- θ=θ0,,θn θ = θ 0 , ⋯ , θ n ,是模型的 参数向量 (parameter vector)
- x=[x0,x1,,xn]T, x0=1 x = [ x 0 , x 1 , ⋯ , x n ] T ,   x 0 = 1 ,是当前实例的 特征向量
- hθ h θ 是 假设函数 (hypothesis function),模型参数为 θ θ

以上即为线性回归模型

2. 线性回归模型怎么训练?

我们说,训练模型指的是:调整模型参数数,使得模型能够最好地拟合训练数据。因此首先,我们需要确定一个标准(performance measure)来衡量 模型对训练数据拟合得到底有多好(以找到“最好”的参数)。

常见的 performance measure 有 RMSE (Root Mean Square Error), MSE (Mean Square Error),由于二者对应的最优解相同,而 MSE 更易于求解,因此也更为常用。

【式-3:线性回归模型的 MSE 代价函数/成本函数 (Cost function)

MSE(X,hθ)=1mi=1m(θTx(i)y(i))2 M S E ( X , h θ ) = 1 m ∑ i = 1 m ( θ T ⋅ x ( i ) − y ( i ) ) 2

- m m 训练集中的实例数
- XRm×(n+1),即,每一行对应一个实例

下面将 MSE(X,hθ) M S E ( X , h θ ) 简记为 MSE(θ) M S E ( θ ) 。在训练模型的过程中,只需要求得使得上述 MSE 代价函数 取值最小的参数即可。换句话说,训练过程就是优化问题 minMSE(θ) min M S E ( θ ) 的求解过程。一般来说,求解方法分为两种:
1. 直接求得解析解,
2. 利用迭代优化方法,逐渐将模型参数调整到能够在训练集上最小化目标函数

3. 标准方程 Normal Equation

minMSE(θ)=1mi=1m(θTx(i)y(i))2MSE(θ)=(Xθy)T(Xθy)=θTXTXθ2yTXθ+yTylet  d MSE(θ)d θ=0then  θ=(XTX)1XTy min M S E ( θ ) = 1 m ∑ i = 1 m ( θ T ⋅ x ( i ) − y ( i ) ) 2 M S E ( θ ) = ( X θ − y ) T ( X θ − y ) = θ T X T X θ − 2 y T X θ + y T y l e t     d   M S E ( θ ) d   θ = 0 t h e n     θ ∗ = ( X T X ) − 1 X T y

  • θ θ ∗ :是 优化问题的最优解 (使得代价函数取得最小的解)
  • y=[y(1),y(2),,y(m)]T y = [ y ( 1 ) , y ( 2 ) , ⋯ , y ( m ) ] T 是目标值向量
计算复杂度

这里我们再来看一下利用闭式解(closed-form solution)求解的计算复杂度问题。

利用闭式解求解时,复杂度主要体现在矩阵求逆的部分。我们知道, XTX X T X 是一个 n×n n × n 的矩阵,而 n n 阶矩阵求逆的典型复杂度为 O(n2.4) O(n3) O ( n 3 ) (具体与实现方法有关)。这就意味着,当特征维度增大一倍的时候,计算时间会粗略增长至原来的 22.4=5.3 2 2.4 = 5.3 23=8 2 3 = 8 倍。

因此,当特征维度较大时,通过闭式解求解需要消耗大量的时间。

另一方面,该算法与训练样本的数的关系是线性的,即 O(m) O ( m ) ,因此,当训练样本集很大时,若存储空间足够,该算法的效率较高。

该算法的复杂度为 O(mn)+O(nx), x[2.4,3] O ( m n ) + O ( n x ) ,   x ∈ [ 2.4 , 3 ]

由上面的分析我们知道,当 特征维度较大 或 存储空间不够时,利用解析解求解线性回归问题就会出现问题。

基于梯度下降求解 & 示例代码 请看 线性回归 Linear Regression (2)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值