白话梯度下降
梯度下降是机器学习中最常见的优化算法之一。理解它的基本实现是理解所有基于它构建的高级优化算法的基础。

 
文章目录
- 优化算法
 - 一维梯度下降
 - 均方误差梯度下降
 - 什么是均方误差
 - 单权重
 - 双权重
 - 三权重
 - 三个以上权重
 
- 矩阵求导
 - 结论
 
优化算法

在机器学习中,优化是寻找理想参数或权重以最大化或最小化成本或损失函数的过程。全局最大值是函数定义域上的最大值,而全局最小值是函数的最小值。虽然只有一个全局最大值和/或最小值,但可以有许多局部最大值和最小值。成本函数的全局最小值或最大值指示模型参数生成接近实际目标的预测。训练模型时,局部最大值和最小值可能会导致问题,因此应始终留意它们的存在。上图显示了每种最大值/最小值的示例。
优化算法有几种不同类别的算法:包围算法、局部下降算法、一阶算法和二阶算法。本文的重点是使用一阶导数进行优化的一阶算法。在此类别中,梯度下降算法是最受欢迎的。
一维梯度下降
梯度下降是一种一阶迭代优化算法,用于最小化成本函数。通过使用偏导数、方向和学习率,梯度下降减少了预测值和实际值之间的误差或差异。
梯度下降背后的思想是每个权重的导数将揭示其方向和对成本函数的影响。下图中,成本函数为 f ( w ) = w 2 f(w) = w^2 f(w)=w2,它是一条抛物线。最小值位于 (0,0),当前权重为 − 5.6 -5.6 −5.6。当前损失为 31.36 31.36 31.36,橙色线代表导数,或权重的当前变化率,即 − 11.2 -11.2 −11.2。这表明权重需要“下坡”移动——或者变得更正——才能达到损失为 0 0 0 。这就是梯度下降的用武之地。

通过使用称为学习率的值缩放梯度并从其权重的当前值中减去缩放后的梯度,输出将最小化。可以在下图中看到。 在十次迭代( w 0 → w 9 w_0 \to w_9 w0→w9)中,使用 0.1 的学习率来最小化成本函数。

在下面的算法步骤中,权重由 w w w 表示, j j j 表示其当前值, j + 1 j+1 j+1 表示其新值。衡量误差的成本函数用 f f f 表示,偏导数是成本函数相对于参数的梯度。学习率用 α \alpha α 表示。
-  
选择学习率和迭代次数
 -  
选择参数的随机值
 -  
用下面的公式更新参数
 
w j + 1 = w j − α ∂ ∂ w j f ( w j ) w_{j+1} = w_j-\alpha\frac{\partial}{\partial_{w_j}}f(w_j) wj+1=wj−α∂wj∂f(wj)
- 重复第三步,直到达到最大迭代次数
 
当对函数求偏导数或梯度时,一次只能评估一个参数,其他参数被视为常数。对于上面的例子, 
     
      
       
       
         f 
        
       
         ( 
        
       
         w 
        
       
         ) 
        
       
         = 
        
        
        
          w 
         
        
          2 
         
        
       
      
        f(w) = w^2 
       
      
    f(w)=w2,只有一个参数,因此导数为  
     
      
       
        
        
          f 
         
        
          ′ 
         
        
       
         ( 
        
       
         w 
        
       
         ) 
        
       
         = 
        
       
         2 
        
       
         w 
        
       
      
        f'(w) = 2w 
       
      
    f′(w)=2w。 更新参数的公式如下:
  
      
       
        
         
         
           w 
          
          
          
            j 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           w 
          
         
           j 
          
         
        
          − 
         
        
          α 
         
        
          ( 
         
        
          2 
         
         
         
           w 
          
         
           j 
          
         
        
          ) 
         
        
       
         w_{j+1} = w_j-\alpha(2w_j) 
        
       
     wj+1=wj−α(2wj)
 假设学习率为  
     
      
       
       
         0.1 
        
       
      
        0.1 
       
      
    0.1,初始权重为  
     
      
       
       
         − 
        
       
         5.6 
        
       
      
        -5.6 
       
      
    −5.6,前十次迭代如下:

上表展示了公式的每个组成部分如何帮助最大限度地减少损失。通过负缩放梯度,新权重趋近于0,斜率变得不那么陡。随着斜率逐渐变小,每次迭代都会产生更小的更新。
梯度下降的这种基本实现可以应用于几乎任何损失函数,包括具有大量权重的损失函数。
均方误差梯度下降
什么是均方误差
机器学习中流行的损失函数是均方误差 (MSE)。
  
      
       
        
        
          M 
         
        
          S 
         
        
          E 
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
        
          ( 
         
         
          
          
            Y 
           
          
            ^ 
           
          
         
           i 
          
         
        
          − 
         
         
         
           Y 
          
         
           i 
          
         
         
         
           ) 
          
         
           2 
          
         
        
       
         MSE = \frac{1}{n}\sum_{i=1}^n(\hat Y_i-Y_i)^2 
        
       
     MSE=n1i=1∑n(Y^i−Yi)2
该函数用于计算模型的预测 ( Y ^ \hat Y Y^) 和预期输出 ( Y Y Y) 之间的差异。然后对差值进行平方以确保输出始终为正。这意味着计算差值时可以先考虑 Y ^ \hat Y Y^ 或 Y Y Y。这在一组大小为 n n n 的点上重复进行。通过将所有这些点的平方差相加并除以 n n n,得到均方差(误差)。这是同时评估模型在所有点上的表现的简单方法。下面是一个简单的例子:

在此公式中, Y ^ \hat Y Y^ 代表模型的预测。在回归中,模型的方程可能包含一个或多个权重,具体取决于训练数据的要求。下表反映了这些情况。
| 权重数量 | Y ^ \hat Y Y^ | MSE | 
|---|---|---|
| 1 | w X wX wX | 1 n ∑ i = 1 n ( w X i − Y i ) 2 \frac{1}{n}\sum_{i=1}^n(wX_i-Y_i)^2 n1∑i=1n(wXi−Yi)2 | 
| 2 | w 1 X + w 0 w_1X+w_0 w1X+w0 | 1 n ∑ i = 1 n ( w 1 X i + w 0 − Y i ) 2 \frac{1}{n}\sum_{i=1}^n(w_1X_i+w_0-Y_i)^2 n1∑i=1n(w1Xi+w0−Yi)2 | 
| 3 | w 2 X 2 + w 1 X 1 + w 0 w_2X_2+w_1X_1+w_0 w2X2+w1X1+w0 | 1 n ∑ i = 1 n ( w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 \frac{1}{n}\sum_{i=1}^n(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2 n1∑i=1n(w2X2i+w1X1i+w0−Yi)2 | 
| k k k | w k X k + ⋯ + w 2 X 2 + w 1 X 1 + w 0 w_kX_k+\dots+w_2X_2+w_1X_1+w_0 wkXk+⋯+w2X2+w1X1+w0 | 1 n ∑ i = 1 n ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 \frac{1}{n}\sum_{i=1}^n(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2 n1∑i=1n(wkXki+⋯+w2X2i+w1X1i+w0−Yi)2 | 
现在,要使用这些方程中的任何一个执行梯度下降,必须计算它们的梯度。梯度包含函数的偏导数:
  
      
       
        
        
          ∇ 
         
        
          MSE 
         
        
          = 
         
         
         
           [ 
          
          
           
            
             
              
               
               
                 ∂ 
                
               
                 MSE 
                
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  0 
                 
                
               
              
             
            
           
           
            
             
             
               … 
              
             
            
           
           
            
             
              
               
               
                 ∂ 
                
               
                 MSE 
                
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  k 
                 
                
               
              
             
            
           
          
         
           ] 
          
         
        
       
         \nabla \text{MSE} = \begin{bmatrix} \frac{\partial \text{MSE}}{\partial w_0} \\ \dots\\ \frac{\partial \text{MSE}}{\partial w_k} \end{bmatrix} 
        
       
     ∇MSE= 
              ∂w0∂MSE…∂wk∂MSE 
              
 必须计算每个权重的偏导数。偏导数的计算方式与普通导数相同,但每个未考虑的变量都必须视为常数。
单权重
∇ 1 n ∑ i = 1 n ( w X i − Y i ) 2 = [ ∂ ∂ w [ 1 n ∑ i = 1 n ( w X i − Y i ) 2 ] ] = 2 n ∑ i = 1 n X i ( w X i − Y i ) \nabla \frac{1}{n}\sum_{i=1}^n(wX_i-Y_i)^2 = \Bigg[\frac{\partial}{\partial w}\Big[\frac{1}{n}\sum_{i=1}^n(wX_i-Y_i)^2\Big]\Bigg] = \frac{2}{n}\sum_{i=1}^nX_i(wX_i-Y_i) ∇n1i=1∑n(wXi−Yi)2=[∂w∂[n1i=1∑n(wXi−Yi)2]]=n2i=1∑nXi(wXi−Yi)
当仅用一个权重求 MSE 的梯度时,可以计算关于  
     
      
       
       
         w 
        
       
      
        w 
       
      
    w 的导数。  
     
      
       
       
         X 
        
       
      
        X 
       
      
    X、 
     
      
       
       
         Y 
        
       
      
        Y 
       
      
    Y 和  
     
      
       
       
         n 
        
       
      
        n 
       
      
    n 必须被视为常数。考虑到这一点,分数和求和可以移到导数之外:
  
      
       
        
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
         
         
           ∂ 
          
          
          
            ∂ 
           
          
            w 
           
          
         
        
          [ 
         
        
          ( 
         
        
          w 
         
         
         
           X 
          
         
           i 
          
         
        
          − 
         
         
         
           Y 
          
         
           i 
          
         
         
         
           ) 
          
         
           2 
          
         
        
          ] 
         
        
       
         \frac{1}{n}\sum_{i=1}^n\frac{\partial}{\partial w}\Big[(wX_i-Y_i)^2\Big] 
        
       
     n1i=1∑n∂w∂[(wXi−Yi)2]
 从这里开始,可以利用链式法则计算关于  
     
      
       
       
         w 
        
       
      
        w 
       
      
    w 的导数:
  
      
       
        
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
        
          [ 
         
        
          2 
         
        
          ( 
         
        
          w 
         
         
         
           X 
          
         
           i 
          
         
        
          − 
         
         
         
           Y 
          
         
           i 
          
         
        
          ) 
         
         
         
           ∂ 
          
          
          
            ∂ 
           
          
            w 
           
          
         
        
          ( 
         
        
          w 
         
         
         
           X 
          
         
           i 
          
         
        
          − 
         
         
         
           Y 
          
         
           i 
          
         
        
          ) 
         
        
          ] 
         
         
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
        
          [ 
         
        
          2 
         
        
          ( 
         
        
          w 
         
         
         
           X 
          
         
           i 
          
         
        
          − 
         
         
         
           Y 
          
         
           i 
          
         
        
          ) 
         
         
         
           X 
          
         
           i 
          
         
        
          ] 
         
        
       
         \frac{1}{n}\sum_{i=1}^n\Big[2(wX_i-Y_i)\frac{\partial}{\partial w}(wX_i-Y_i)\Big]\\ \frac{1}{n}\sum_{i=1}^n\Big[2(wX_i-Y_i)X_i\Big] 
        
       
     n1i=1∑n[2(wXi−Yi)∂w∂(wXi−Yi)]n1i=1∑n[2(wXi−Yi)Xi]
 这样可以简化为:
  
      
       
        
         
         
           2 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
         
         
           X 
          
         
           i 
          
         
        
          ( 
         
        
          w 
         
         
         
           X 
          
         
           i 
          
         
        
          − 
         
         
         
           Y 
          
         
           i 
          
         
        
          ) 
         
        
       
         \frac{2}{n}\sum_{i=1}^nX_i(wX_i-Y_i) 
        
       
     n2i=1∑nXi(wXi−Yi)
双权重
∇ 1 n ∑ i = 1 n ( w 1 X i + w 0 − Y i ) 2 = [ ∂ ∂ w 0 [ 1 n ∑ i = 1 n ( w 1 X i + w 0 − Y i ) 2 ] ∂ ∂ w 1 [ 1 n ∑ i = 1 n ( w 1 X i + w 0 − Y i ) 2 ] ] = [ 2 n ∑ i = 1 n ( w 1 X i + w 0 − Y i ) 2 n ∑ i = 1 n X i ( w 1 X i + w 0 − Y i ) ] \begin{aligned} \nabla \frac{1}{n}\sum_{i=1}^n(w_1X_i+w_0-Y_i)^2 &= \begin{bmatrix} \frac{\partial}{\partial w_0}\Big[\frac{1}{n}\sum_{i=1}^n(w_1X_i+w_0-Y_i)^2\Big] \\ \frac{\partial}{\partial w_1}\Big[\frac{1}{n}\sum_{i=1}^n(w_1X_i+w_0-Y_i)^2\Big] \end{bmatrix}\\ &=\begin{bmatrix} \frac{2}{n}\sum_{i=1}^n(w_1X_i+w_0-Y_i) \\ \frac{2}{n}\sum_{i=1}^nX_i(w_1X_i+w_0-Y_i) \end{bmatrix} \end{aligned} ∇n1i=1∑n(w1Xi+w0−Yi)2= ∂w0∂[n1∑i=1n(w1Xi+w0−Yi)2]∂w1∂[n1∑i=1n(w1Xi+w0−Yi)2] =[n2∑i=1n(w1Xi+w0−Yi)n2∑i=1nXi(w1Xi+w0−Yi)]
当采用两个权重求 MSE 的梯度时,必须对两个参数  
     
      
       
        
        
          w 
         
        
          0 
         
        
       
      
        w_0 
       
      
    w0 和  
     
      
       
        
        
          w 
         
        
          1 
         
        
       
      
        w_1 
       
      
    w1 求偏导数。对  
     
      
       
        
        
          w 
         
        
          0 
         
        
       
      
        w_0 
       
      
    w0 求偏导数时, 
     
      
       
       
         X 
        
       
      
        X 
       
      
    X、 
     
      
       
       
         Y 
        
       
      
        Y 
       
      
    Y、 
     
      
       
       
         n 
        
       
      
        n 
       
      
    n 和  
     
      
       
        
        
          w 
         
        
          1 
         
        
       
      
        w_1 
       
      
    w1 被视为常数。对  
     
      
       
        
        
          w 
         
        
          1 
         
        
       
      
        w_1 
       
      
    w1 求偏导数时, 
     
      
       
       
         X 
        
       
      
        X 
       
      
    X、 
     
      
       
       
         Y 
        
       
      
        Y 
       
      
    Y、 
     
      
       
       
         n 
        
       
      
        n 
       
      
    n 和  
     
      
       
        
        
          w 
         
        
          0 
         
        
       
      
        w_0 
       
      
    w0 被视为常数。可以重复与前面示例相同的步骤。首先,分数和求和可以移到导数之外。
  
      
       
        
        
          [ 
         
         
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  0 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
              
                i 
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
              
              
                ) 
               
              
                2 
               
              
             
            
           
          
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  1 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
              
                i 
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
              
              
                ) 
               
              
                2 
               
              
             
            
           
          
         
        
          ] 
         
        
       
         \begin{bmatrix} \frac{1}{n}\sum_{i=1}^n\frac{\partial}{\partial w_0}(w_1X_i+w_0-Y_i)^2 \\ \frac{1}{n}\sum_{i=1}^n\frac{\partial}{\partial w_1}(w_1X_i+w_0-Y_i)^2 \end{bmatrix} 
        
       
     [n1∑i=1n∂w0∂(w1Xi+w0−Yi)2n1∑i=1n∂w1∂(w1Xi+w0−Yi)2]
 然后用链式法则计算每个权重的导数:
  
      
       
        
        
          [ 
         
         
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
             
               [ 
              
             
               2 
              
             
               ( 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
              
                i 
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  0 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
              
                i 
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
               ] 
              
             
            
           
          
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
             
               [ 
              
             
               2 
              
             
               ( 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
              
                i 
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  1 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
              
                i 
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
               ] 
              
             
            
           
          
         
        
          ] 
         
        
       
         \begin{bmatrix} \frac{1}{n}\sum_{i=1}^n\Big[2(w_1X_i+w_0-Y_i)\frac{\partial}{\partial w_0}(w_1X_i+w_0-Y_i)\Big] \\ \frac{1}{n}\sum_{i=1}^n\Big[2(w_1X_i+w_0-Y_i)\frac{\partial}{\partial w_1}(w_1X_i+w_0-Y_i)\Big] \end{bmatrix} 
        
       
      
              n1∑i=1n[2(w1Xi+w0−Yi)∂w0∂(w1Xi+w0−Yi)]n1∑i=1n[2(w1Xi+w0−Yi)∂w1∂(w1Xi+w0−Yi)] 
              
[ 1 n ∑ i = 1 n [ 2 ( w 1 X i + w 0 − Y i ) 1 ] 1 n ∑ i = 1 n [ 2 ( w 1 X i + w 0 − Y i ) X i ] ] \begin{bmatrix} \frac{1}{n}\sum_{i=1}^n\Big[2(w_1X_i+w_0-Y_i)1\Big] \\ \frac{1}{n}\sum_{i=1}^n\Big[2(w_1X_i+w_0-Y_i)X_i\Big] \end{bmatrix} n1∑i=1n[2(w1Xi+w0−Yi)1]n1∑i=1n[2(w1Xi+w0−Yi)Xi] 
最后化简为:
  
      
       
        
        
          [ 
         
         
          
           
            
             
              
              
                2 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
             
               ( 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
              
                i 
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
            
           
          
          
           
            
             
              
              
                2 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
              
              
                X 
               
              
                i 
               
              
             
               ( 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
              
                i 
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
            
           
          
         
        
          ] 
         
        
       
         \begin{bmatrix} \frac{2}{n}\sum_{i=1}^n(w_1X_i+w_0-Y_i) \\ \frac{2}{n}\sum_{i=1}^nX_i(w_1X_i+w_0-Y_i) \end{bmatrix} 
        
       
     [n2∑i=1n(w1Xi+w0−Yi)n2∑i=1nXi(w1Xi+w0−Yi)]
 请注意,方程之间的唯一区别是  
     
      
       
       
         X 
        
       
      
        X 
       
      
    X。
三权重
∇ 1 n ∑ i = 1 n ( w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 = [ ∂ ∂ w 0 [ 1 n ∑ i = 1 n ( w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 ] ∂ ∂ w 1 [ 1 n ∑ i = 1 n ( w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 ] ∂ ∂ w 2 [ 1 n ∑ i = 1 n ( w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 ] ] = [ 2 n ∑ i = 1 n ( w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 n ∑ i = 1 n X 1 i ( w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 n ∑ i = 1 n X 2 i ( w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) ] \begin{aligned} \nabla \frac{1}{n}\sum_{i=1}^n&(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2 \\ &= \begin{bmatrix} \frac{\partial}{\partial w_0}\Big[\frac{1}{n}\sum_{i=1}^n(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2\Big] \\ \frac{\partial}{\partial w_1}\Big[\frac{1}{n}\sum_{i=1}^n(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2\Big] \\ \frac{\partial}{\partial w_2}\Big[\frac{1}{n}\sum_{i=1}^n(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2\Big] \end{bmatrix}\\ &=\begin{bmatrix} \frac{2}{n}\sum_{i=1}^n(w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \\ \frac{2}{n}\sum_{i=1}^nX_{1i}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \\ \frac{2}{n}\sum_{i=1}^nX_{2i}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \end{bmatrix} \end{aligned} ∇n1i=1∑n(w2X2i+w1X1i+w0−Yi)2= ∂w0∂[n1∑i=1n(w2X2i+w1X1i+w0−Yi)2]∂w1∂[n1∑i=1n(w2X2i+w1X1i+w0−Yi)2]∂w2∂[n1∑i=1n(w2X2i+w1X1i+w0−Yi)2] = n2∑i=1n(w2X2i+w1X1i+w0−Yi)n2∑i=1nX1i(w2X2i+w1X1i+w0−Yi)n2∑i=1nX2i(w2X2i+w1X1i+w0−Yi) 
当采用三个权重求 MSE 梯度时,必须对每个参数求偏导数。当对一个权重求偏导数时, 
     
      
       
       
         X 
        
       
      
        X 
       
      
    X、 
     
      
       
       
         Y 
        
       
      
        Y 
       
      
    Y、 
     
      
       
       
         n 
        
       
      
        n 
       
      
    n 和其他两个权重将被视为常数。可以重复与前面示例相同的步骤。 首先,分数和求和可以移到导数之外。
  
      
       
        
        
          [ 
         
         
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  0 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
              
              
                ) 
               
              
                2 
               
              
             
            
           
          
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  1 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
              
              
                ) 
               
              
                2 
               
              
             
            
           
          
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  2 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
              
              
                ) 
               
              
                2 
               
              
             
            
           
          
         
        
          ] 
         
        
       
         \begin{bmatrix} \frac{1}{n}\sum_{i=1}^n\frac{\partial}{\partial w_0}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2 \\ \frac{1}{n}\sum_{i=1}^n\frac{\partial}{\partial w_1}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2 \\ \frac{1}{n}\sum_{i=1}^n\frac{\partial}{\partial w_2}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2 \end{bmatrix} 
        
       
      
              n1∑i=1n∂w0∂(w2X2i+w1X1i+w0−Yi)2n1∑i=1n∂w1∂(w2X2i+w1X1i+w0−Yi)2n1∑i=1n∂w2∂(w2X2i+w1X1i+w0−Yi)2 
              
 然后用链式法则计算每个权重的导数:
  
      
       
        
        
          [ 
         
         
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
             
               [ 
              
             
               2 
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  0 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
               ] 
              
             
            
           
          
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
             
               [ 
              
             
               2 
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  1 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
               ] 
              
             
            
           
          
          
           
            
             
              
              
                1 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
             
               [ 
              
             
               2 
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
              
              
                ∂ 
               
               
               
                 ∂ 
                
                
                
                  w 
                 
                
                  1 
                 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                3 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
               ] 
              
             
            
           
          
         
        
          ] 
         
        
       
         \begin{bmatrix} \frac{1}{n}\sum_{i=1}^n\Big[2(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)\frac{\partial}{\partial w_0}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)\Big] \\ \frac{1}{n}\sum_{i=1}^n\Big[2(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)\frac{\partial}{\partial w_1}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)\Big] \\ \frac{1}{n}\sum_{i=1}^n\Big[2(w_2X_{2i}+w_1X_{1i}+w_0-Y_i)\frac{\partial}{\partial w_1}(w_3X_{2i}+w_1X_{1i}+w_0-Y_i)\Big] \end{bmatrix} 
        
       
      
              n1∑i=1n[2(w2X2i+w1X1i+w0−Yi)∂w0∂(w2X2i+w1X1i+w0−Yi)]n1∑i=1n[2(w2X2i+w1X1i+w0−Yi)∂w1∂(w2X2i+w1X1i+w0−Yi)]n1∑i=1n[2(w2X2i+w1X1i+w0−Yi)∂w1∂(w3X2i+w1X1i+w0−Yi)] 
              
 最后化简为:
  
      
       
        
        
          [ 
         
         
          
           
            
             
              
              
                2 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
            
           
          
          
           
            
             
              
              
                2 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
            
           
          
          
           
            
             
              
              
                2 
               
              
                n 
               
              
              
              
                ∑ 
               
               
               
                 i 
                
               
                 = 
                
               
                 1 
                
               
              
                n 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               ( 
              
              
              
                w 
               
              
                2 
               
              
              
              
                X 
               
               
               
                 2 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                1 
               
              
              
              
                X 
               
               
               
                 1 
                
               
                 i 
                
               
              
             
               + 
              
              
              
                w 
               
              
                0 
               
              
             
               − 
              
              
              
                Y 
               
              
                i 
               
              
             
               ) 
              
             
            
           
          
         
        
          ] 
         
        
       
         \begin{bmatrix} \frac{2}{n}\sum_{i=1}^n(w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \\ \frac{2}{n}\sum_{i=1}^nX_{1i}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \\ \frac{2}{n}\sum_{i=1}^nX_{2i}(w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \end{bmatrix} 
        
       
      
              n2∑i=1n(w2X2i+w1X1i+w0−Yi)n2∑i=1nX1i(w2X2i+w1X1i+w0−Yi)n2∑i=1nX2i(w2X2i+w1X1i+w0−Yi) 
              
 如前所述,每个偏导数之间的唯一区别是输入特征  
     
      
       
       
         X 
        
       
      
        X 
       
      
    X。这可以在下一个示例中推广到  
     
      
       
       
         k 
        
       
      
        k 
       
      
    k 个权重。
三个以上权重
∇ 1 n ∑ i = 1 n ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 = [ ∂ ∂ w 0 [ 1 n ∑ i = 1 n ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 ] ∂ ∂ w 1 [ 1 n ∑ i = 1 n ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 ] ∂ ∂ w 2 [ 1 n ∑ i = 1 n ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 ] ⋮ ∂ ∂ w k [ 1 n ∑ i = 1 n ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 ] ] = [ 2 n ∑ i = 1 n ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 n ∑ i = 1 n X 1 i ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) 2 n ∑ i = 1 n X 2 i ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) ⋮ 2 n ∑ i = 1 n X k i ( w k X k i + ⋯ + w 2 X 2 i + w 1 X 1 i + w 0 − Y i ) ] \begin{aligned} \nabla \frac{1}{n}\sum_{i=1}^n&(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2 \\ &= \begin{bmatrix} \frac{\partial}{\partial w_0}\Big[\frac{1}{n}\sum_{i=1}^n(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2\Big] \\ \frac{\partial}{\partial w_1}\Big[\frac{1}{n}\sum_{i=1}^n(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2\Big] \\ \frac{\partial}{\partial w_2}\Big[\frac{1}{n}\sum_{i=1}^n(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2\Big] \\ \vdots \\ \frac{\partial}{\partial w_k}\Big[\frac{1}{n}\sum_{i=1}^n(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i)^2\Big] \end{bmatrix}\\ &=\begin{bmatrix} \frac{2}{n}\sum_{i=1}^n(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \\ \frac{2}{n}\sum_{i=1}^nX_{1i}(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \\ \frac{2}{n}\sum_{i=1}^nX_{2i}(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \\ \vdots \\ \frac{2}{n}\sum_{i=1}^nX_{ki}(w_kX_{ki}+\dots+w_2X_{2i}+w_1X_{1i}+w_0-Y_i) \end{bmatrix} \end{aligned} ∇n1i=1∑n(wkXki+⋯+w2X2i+w1X1i+w0−Yi)2= ∂w0∂[n1∑i=1n(wkXki+⋯+w2X2i+w1X1i+w0−Yi)2]∂w1∂[n1∑i=1n(wkXki+⋯+w2X2i+w1X1i+w0−Yi)2]∂w2∂[n1∑i=1n(wkXki+⋯+w2X2i+w1X1i+w0−Yi)2]⋮∂wk∂[n1∑i=1n(wkXki+⋯+w2X2i+w1X1i+w0−Yi)2] = n2∑i=1n(wkXki+⋯+w2X2i+w1X1i+w0−Yi)n2∑i=1nX1i(wkXki+⋯+w2X2i+w1X1i+w0−Yi)n2∑i=1nX2i(wkXki+⋯+w2X2i+w1X1i+w0−Yi)⋮n2∑i=1nXki(wkXki+⋯+w2X2i+w1X1i+w0−Yi) 
当采用 k k k 个权重求 MSE 的梯度时,必须对每个参数求偏导数。当对一个权重求偏导数时, X X X、 Y Y Y、 n n n 和其他 k − 1 k-1 k−1 个权重将被视为常数。如前面的示例所示,当权重超过两个时,只有每个偏导数的输入特征发生变化。
矩阵求导
上面的公式展示了如何在不利用向量和矩阵的优势的情况下执行梯度下降。然而,大多数机器学习最好通过矩阵或张量操作执行。本文的其余部分将致力于使用矩阵微积分来导出 MSE 的导数,更多背景知识请阅读《白话张量》 和 《白话向量点积》。首先, 
     
      
       
        
        
          Y 
         
        
          ^ 
         
        
       
      
        \hat Y 
       
      
    Y^ 和  
     
      
       
       
         Y 
        
       
      
        Y 
       
      
    Y 应理解为大小为 ( 
     
      
       
       
         n 
        
       
         × 
        
       
         1 
        
       
      
        n\times1 
       
      
    n×1) 的矩阵。两者都是 1 列  
     
      
       
       
         n 
        
       
      
        n 
       
      
    n 行的矩阵,或者它们可以视为列向量,这会将它们的表示法更改为小写:
  
      
       
        
        
          M 
         
        
          S 
         
        
          E 
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
         
         
           ∑ 
          
          
          
            i 
           
          
            = 
           
          
            1 
           
          
         
           n 
          
         
        
          ( 
         
         
         
           y 
          
         
           i 
          
         
        
          − 
         
         
          
          
            y 
           
          
            ^ 
           
          
         
           i 
          
         
         
         
           ) 
          
         
           2 
          
         
        
       
         MSE = \frac{1}{n}\sum_{i=1}^n(y_i - \hat y_i)^2 
        
       
     MSE=n1i=1∑n(yi−y^i)2
 MSE 是  
     
      
       
        
        
          y 
         
        
          ^ 
         
        
       
      
        \hat y 
       
      
    y^ 和  
     
      
       
       
         y 
        
       
      
        y 
       
      
    y 之间的逐元素向量减法,后跟与其自身差值的点积。请记住,只有尺寸兼容时才能计算点积。由于目标是获得标量输出,因此必须转置第一个向量。
  
      
       
        
        
          M 
         
        
          S 
         
        
          E 
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
        
          ( 
         
        
          y 
         
        
          − 
         
         
         
           y 
          
         
           ^ 
          
         
         
         
           ) 
          
         
           T 
          
         
        
          ( 
         
        
          y 
         
        
          − 
         
         
         
           y 
          
         
           ^ 
          
         
        
          ) 
         
        
       
         MSE = \frac{1}{n}(y - \hat y)^T(y - \hat y) 
        
       
     MSE=n1(y−y^)T(y−y^)
 然后, 
     
      
       
        
        
          y 
         
        
          ^ 
         
        
       
      
        \hat y 
       
      
    y^ 可以替换为  
     
      
       
       
         X 
        
       
         w 
        
       
      
        Xw 
       
      
    Xw 进行回归。 
     
      
       
       
         X 
        
       
      
        X 
       
      
    X 是大小为 ( 
     
      
       
       
         n 
        
       
      
        n 
       
      
    n 个样本, 
     
      
       
       
         n 
        
       
         u 
        
       
         m 
        
       
      
        num 
       
      
    num 个特征) 的矩阵, 
     
      
       
       
         w 
        
       
      
        w 
       
      
    w 是大小为 ( 
     
      
       
       
         n 
        
       
         u 
        
       
         m 
        
       
      
        num 
       
      
    num 个特征, 
     
      
       
       
         1 
        
       
      
        1 
       
      
    1) 的列向量。
  
      
       
        
        
          M 
         
        
          S 
         
        
          E 
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
        
          ( 
         
        
          y 
         
        
          − 
         
        
          X 
         
        
          w 
         
         
         
           ) 
          
         
           T 
          
         
        
          ( 
         
        
          y 
         
        
          − 
         
        
          X 
         
        
          w 
         
        
          ) 
         
        
       
         MSE = \frac{1}{n}(y - Xw)^T(y - Xw) 
        
       
     MSE=n1(y−Xw)T(y−Xw)
 下一步是在求导之前简化方程。请注意, 
     
      
       
       
         w 
        
       
      
        w 
       
      
    w 和  
     
      
       
       
         X 
        
       
      
        X 
       
      
    X 交换位置以确保它们的乘法仍然有效:( 
     
      
       
       
         1 
        
       
      
        1 
       
      
    1,  
     
      
       
       
         n 
        
       
         u 
        
       
         m 
        
       
      
        num 
       
      
    num 个特征) x ( 
     
      
       
       
         n 
        
       
         u 
        
       
         m 
        
       
      
        num 
       
      
    num 个特征,  
     
      
       
       
         n 
        
       
      
        n 
       
      
    n 个样本) = ( 
     
      
       
       
         1 
        
       
      
        1 
       
      
    1,  
     
      
       
       
         n 
        
       
      
        n 
       
      
    n 个样本)。
  
      
       
        
         
          
           
            
            
              M 
             
            
              S 
             
            
              E 
             
            
           
          
          
           
            
             
            
              = 
             
             
             
               1 
              
             
               n 
              
             
            
              ( 
             
             
             
               y 
              
             
               T 
              
             
            
              − 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              ) 
             
            
              ( 
             
            
              y 
             
            
              − 
             
            
              X 
             
            
              w 
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               1 
              
             
               n 
              
             
            
              ( 
             
             
             
               y 
              
             
               T 
              
             
            
              y 
             
            
              − 
             
             
             
               y 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              − 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              y 
             
            
              + 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              ) 
             
            
           
          
         
        
       
         \begin{aligned} MSE &= \frac{1}{n}(y^T - w^TX^T)(y - Xw) \\ &= \frac{1}{n}(y^Ty - y^TXw - w^TX^Ty + w^TX^TXw) \end{aligned} 
        
       
     MSE=n1(yT−wTXT)(y−Xw)=n1(yTy−yTXw−wTXTy+wTXTXw)
 请注意,第三项可以进行转置来重写,然后与第二项合并。
  
      
       
        
         
          
           
            
            
              M 
             
            
              S 
             
            
              E 
             
            
           
          
          
           
            
             
            
              = 
             
             
             
               1 
              
             
               n 
              
             
            
              ( 
             
             
             
               y 
              
             
               T 
              
             
            
              y 
             
            
              − 
             
             
             
               y 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              − 
             
            
              ( 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              y 
             
            
              ) 
             
            
              T 
             
            
              + 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               1 
              
             
               n 
              
             
            
              ( 
             
             
             
               y 
              
             
               T 
              
             
            
              y 
             
            
              − 
             
             
             
               y 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              − 
             
             
             
               y 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              + 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               1 
              
             
               n 
              
             
            
              ( 
             
             
             
               y 
              
             
               T 
              
             
            
              y 
             
            
              − 
             
            
              2 
             
             
             
               y 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              + 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              X 
             
            
              w 
             
            
              ) 
             
            
           
          
         
        
       
         \begin{aligned} MSE &= \frac{1}{n}(y^Ty - y^TXw - (w^TX^Ty)T + w^TX^TXw) \\ &= \frac{1}{n}(y^Ty - y^TXw - y^TXw + w^TX^TXw) \\ &= \frac{1}{n}(y^Ty - 2y^TXw + w^TX^TXw) \end{aligned} 
        
       
     MSE=n1(yTy−yTXw−(wTXTy)T+wTXTXw)=n1(yTy−yTXw−yTXw+wTXTXw)=n1(yTy−2yTXw+wTXTXw)
 接下来,对权重求 MSE 的偏导数。
  
      
       
        
         
          
          
            ∂ 
           
          
            M 
           
          
            S 
           
          
            E 
           
          
          
          
            ∂ 
           
          
            w 
           
          
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
         
         
           ∂ 
          
          
          
            ∂ 
           
          
            w 
           
          
         
        
          ( 
         
         
         
           y 
          
         
           T 
          
         
        
          y 
         
        
          − 
         
        
          2 
         
         
         
           y 
          
         
           T 
          
         
        
          X 
         
        
          w 
         
        
          + 
         
         
         
           w 
          
         
           T 
          
         
         
         
           X 
          
         
           T 
          
         
        
          X 
         
        
          w 
         
        
          ) 
         
        
       
         \frac{\partial MSE}{\partial w} = \frac{1}{n}\frac{\partial}{\partial w}(y^Ty - 2y^TXw + w^TX^TXw) 
        
       
     ∂w∂MSE=n1∂w∂(yTy−2yTXw+wTXTXw)
 这相当于对每一项求导:
  
      
       
        
         
          
          
            ∂ 
           
          
            M 
           
          
            S 
           
          
            E 
           
          
          
          
            ∂ 
           
          
            w 
           
          
         
        
          = 
         
         
         
           1 
          
         
           n 
          
         
        
          [ 
         
         
         
           ∂ 
          
          
          
            ∂ 
           
          
            w 
           
          
         
        
          ( 
         
         
         
           y 
          
         
           T 
          
         
        
          y 
         
        
          ) 
         
        
          − 
         
        
          2 
         
         
         
           ∂ 
          
          
          
            ∂ 
           
          
            w 
           
          
         
        
          ( 
         
         
         
           y 
          
         
           T 
          
         
        
          X 
         
        
          w 
         
        
          ) 
         
        
          + 
         
         
         
           ∂ 
          
          
          
            ∂ 
           
          
            w 
           
          
         
        
          ( 
         
         
         
           w 
          
         
           T 
          
         
         
         
           X 
          
         
           T 
          
         
        
          X 
         
        
          w 
         
        
          ) 
         
        
          ] 
         
        
       
         \frac{\partial MSE}{\partial w} = \frac{1}{n}\Big[\frac{\partial}{\partial w}(y^Ty) - 2\frac{\partial}{\partial w}(y^TXw) + \frac{\partial}{\partial w}(w^TX^TXw)\Big] 
        
       
     ∂w∂MSE=n1[∂w∂(yTy)−2∂w∂(yTXw)+∂w∂(wTXTXw)]
 除  
     
      
       
       
         w 
        
       
      
        w 
       
      
    w 之外的每一项都可以视为常数。每个分量的导数可以使用以下规则计算:
  
      
       
        
         
          
          
            d 
           
          
            A 
           
          
            x 
           
          
         
           x 
          
         
        
          = 
         
        
          A 
         
        
          , 
         
         
         
          
          
            d 
           
           
           
             x 
            
           
             T 
            
           
          
            A 
           
          
         
           x 
          
         
        
          = 
         
         
         
           A 
          
         
           T 
          
         
        
          , 
         
         
         
          
          
            d 
           
           
           
             x 
            
           
             T 
            
           
          
            A 
           
          
            x 
           
          
         
           x 
          
         
        
          = 
         
        
          2 
         
         
         
           x 
          
         
           T 
          
         
        
          A 
         
        
          , 
         
         
         
          
          
            d 
           
          
            A 
           
          
         
           x 
          
         
        
          = 
         
        
          0 
         
        
       
         \frac{dAx}{x} = A, \quad \frac{dx^TA}{x} = A^T, \quad \frac{dx^TAx}{x} = 2x^TA, \quad \frac{dA}{x} = 0 
        
       
     xdAx=A,xdxTA=AT,xdxTAx=2xTA,xdA=0
 等式中的第一项遵循第四条规则变为0。第二项遵循第一条规则,第三项遵循第三条规则。
  
      
       
        
         
          
           
            
            
              M 
             
            
              S 
             
            
              E 
             
            
           
          
          
           
            
             
            
              = 
             
             
             
               1 
              
             
               n 
              
             
            
              ( 
             
            
              − 
             
            
              2 
             
             
             
               y 
              
             
               T 
              
             
            
              X 
             
            
              + 
             
            
              2 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              X 
             
            
              ) 
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
            
              = 
             
             
             
               2 
              
             
               n 
              
             
            
              ( 
             
            
              − 
             
             
             
               y 
              
             
               T 
              
             
            
              X 
             
            
              + 
             
             
             
               w 
              
             
               T 
              
             
             
             
               X 
              
             
               T 
              
             
            
              X 
             
            
              ) 
             
            
           
          
         
        
       
         \begin{aligned} MSE &= \frac{1}{n}(-2y^TX+2w^TX^TX) \\ &= \frac{2}{n}(-y^TX+w^TX^TX) \end{aligned} 
        
       
     MSE=n1(−2yTX+2wTXTX)=n2(−yTX+wTXTX)
 该方程可用于梯度下降,同时计算所有偏导数:
  
      
       
        
         
         
           w 
          
          
          
            j 
           
          
            + 
           
          
            1 
           
          
         
        
          = 
         
         
         
           w 
          
         
           j 
          
         
        
          − 
         
        
          α 
         
         
         
           2 
          
         
           n 
          
         
        
          ( 
         
        
          − 
         
         
         
           y 
          
         
           T 
          
         
        
          X 
         
        
          + 
         
         
         
           w 
          
         
           j 
          
         
           T 
          
         
         
         
           X 
          
         
           T 
          
         
        
          X 
         
        
          ) 
         
        
       
         w_{j+1} = w_j-\alpha\frac{2}{n}(-y^TX+w_j^TX^TX) 
        
       
     wj+1=wj−αn2(−yTX+wjTXTX)
结论
以上详细为大家推导了 MSE 作为损失函数时的梯度下降公式。我将在《简单线性回归》中为大家详细展示如何利用梯度下降。



















