机器学习笔记02-多变量线性回归模型

一、 回归问题的符号说明

    n 代表特征的数量
     x ( i ) x^{(i)} x(i)代表第i个训练实例,是特征矩阵中的第i行,是一个向量。
     x j ( i ) x_j^{(i)} xj(i)代表特征矩阵中第i行的第j个特征。

二、假设函数

    支持多变量的假设h表示为: h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 + . . . + θ n x n h_\theta(x)=\theta_0+\theta_1x_1+\theta_2x_2+...+\theta_nx_n hθ(x)=θ0+θ1x1+θ2x2+...+θnxn
    这个公式中有n+1个参数和n个变量,为了使得公式能够简化一些,引入 x 0 = 1 x_0=1 x0=1,则公式转化为: h θ ( x ) = θ 0 x 0 + θ 1 x 1 + θ 2 x 2 + . . . + θ n x n h_\theta(x)=\theta_0x_0+\theta_1x_1+\theta_2x_2+...+\theta_nx_n hθ(x)=θ0x0+θ1x1+θ2x2+...+θnxn
此时模型中的参数是一个n+1维的向量,任何一个训练实例也都是n+1维的向量,特征矩阵X的维度是m*(n+1)。因此公式可以简化为: h θ ( x ) = θ T X h_\theta(x)=\theta^TX hθ(x)=θTX,其中上标T代表矩阵转置。

三、代价函数

     J ( θ 0 , θ 1 . . . θ n ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) − y ( i ) ) ) 2 J(\theta_0,\theta_1...\theta_n)=\frac {1}{2m}\sum_{i=1}^m(h_\theta(x^{(i)}-y^{(i)}))^2 J(θ0,θ1...θn)=2m1i=1m(hθ(x(i)y(i)))2

     其中 h θ ( x ) = θ T X = θ 0 x 0 + θ 1 x 1 + θ 2 x 2 + . . . + θ n x n h_\theta(x)=\theta^TX=\theta_0x_0+\theta_1x_1+\theta_2x_2+...+\theta_nx_n hθ(x)=θTX=θ0x0+θ1x1+θ2x2+...+θnxn

四、多变量梯度下降

    我们的目标和单变量线性回归问题中的一样,是要找出使得代价函数最小的一系列参数。
    多变量线性回归的批量梯度下降算法为:
    Repeat{
         θ j : = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 . . . θ n ) \theta_j :=\theta_j-\alpha\frac{\partial }{\partial \theta_j}J(\theta_0,\theta_1...\theta_n) θj:=θjαθjJ(θ0,θ1...θn)
    }

    即:
    Repeat{
         θ j : = θ j − α ∂ ∂ θ j 1 2 m ∑ i = 1 m ( h θ ( x ( i ) − y ( i ) ) ) 2 \theta_j :=\theta_j-\alpha\frac{\partial }{\partial \theta_j}\frac {1}{2m}\sum_{i=1}^m(h_\theta(x^{(i)}-y^{(i)}))^2 θj:=θjαθj2m1i=1m(hθ(x(i)y(i)))2
    }

    求导数后得到:
    Repeat{
         θ j : = θ j − α 1 m ∑ i = 1 m ( ( h θ ( x ( i ) ) − y ( i ) ) ⋅ x j ( i ) ) \theta_j :=\theta_j-\alpha\frac {1}{m}\sum_{i=1}^m((h_\theta(x^{(i)})-y^{(i)})\cdot x_j^{(i)}) θj:=θjαm1i=1m((hθ(x(i))y(i))xj(i)) (for j=0,1,…,n)
    }
     我们开始随机选择一系列的参数值,计算所有的预测结果后,再给所有的参数一个新的值,如此循环直到收敛。

    梯度下降法实践1-特征缩放

    当我们面对多维特征问题的时候,我们要保证这些特征都具有相近的尺度,这将帮助梯度下降算法更块地收敛。(尝试将所有特征的尺度都尽量缩放到-1与1之间,令: x n = x n − μ n s n x_n=\frac {x_n-\mu_n}{s_n} xn=snxnμn,其中 μ n \mu_n μn是平均值, s n s_n sn是标准差)

    梯度下降法实践2 -学习率

    梯度下降算法的每次迭代受到学习率的影响,如果学习率 α \alpha α过小,则达到收敛所需的迭代次数会非常高;如果学习率 α \alpha α过大,每次迭代可能不会减小代价函数,可能会越过局部最小值导致无法收敛。通常可以考虑尝试学习率: α \alpha α=0.01, 0.03, 0.1, 0.3, 1, 3, 10

五、正规方程

    正规方程是通过求解下面的方程来找出使得代价函数最小的参数的: ∂ ∂ θ j J ( θ j ) = 0 \frac {\partial }{\partial \theta_j}J(\theta_j)=0 θjJ(θj)=0
    假设我们的训练集特征矩阵为X(包含了 x 0 = 1 x_0=1 x0=1)并且我们的训练集结果为向量y,则利用正规方程解出向量 θ = ( X T X ) − 1 X T y 。 \theta=(X^{T}X)^{-1}X^{T}y。 θ=(XTX)1XTy对于那些不可逆的矩阵,正规方程方法是不能用的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值