0


Datawhale X 李宏毅苹果书 AI夏令营-深度学习入门 Task 2

深度学习第一步:定义模型

线性模型

模型偏置:模型无法模拟真实状态的限制性。
所有分段线性函数都等于常数加上一组函数的总和。

Sigmoid function: 增加了非线性的特点

      s 
     
    
      i 
     
    
      g 
     
    
      m 
     
    
      o 
     
    
      i 
     
    
      d 
     
    
      ( 
     
    
      b 
     
    
      + 
     
    
      w 
     
     
     
       x 
      
     
       1 
      
     
    
      ) 
     
    
      = 
     
     
     
       1 
      
      
      
        1 
       
      
        + 
       
       
       
         e 
        
        
        
          − 
         
        
          ( 
         
        
          b 
         
        
          + 
         
        
          w 
         
         
         
           x 
          
         
           1 
          
         
        
          ) 
         
        
       
      
     
    
   
     sigmoid(b+wx_{1}) = \cfrac{1}{1 + {e^{-(b+wx_{1}) } }} 
    
   
 sigmoid(b+wx1​)=1+e−(b+wx1​)1​
    为了能让模型更好的贴合真实情况,通常需要更多未知参数来调整已有的模型,所以采用sigmoid函数的集合来表示模型,即:

将表示真实曲线的线性函数:

      y 
     
    
      = 
     
    
      b 
     
    
      + 
     
    
      w 
     
     
     
       x 
      
     
       1 
      
     
    
   
     y=b+wx_{1} 
    
   
 y=b+wx1​

变为:

      y 
     
    
      = 
     
    
      c 
     
    
      ⋅ 
     
    
      s 
     
    
      i 
     
    
      g 
     
    
      m 
     
    
      o 
     
    
      i 
     
    
      d 
     
     
     
       ( 
      
     
       b 
      
     
       + 
      
     
       w 
      
     
       x 
      
     
       ) 
      
     
    
   
     y=c\cdot sigmoid\left ( b+wx \right ) 
    
   
 y=c⋅sigmoid(b+wx)
    当使用一组sigmoid方程来阶段性表达真实曲线时,形式如下:

  
   
    
    
      y 
     
    
      = 
     
    
      b 
     
    
      + 
     
     
     
       { 
      
      
       
        
         
          
           
           
             c 
            
           
             1 
            
           
          
            s 
           
          
            i 
           
          
            g 
           
          
            m 
           
          
            o 
           
          
            i 
           
          
            d 
           
           
           
             ( 
            
            
            
              b 
             
            
              1 
             
            
           
             + 
            
            
            
              w 
             
            
              1 
             
            
            
            
              x 
             
            
              1 
             
            
           
             ) 
            
           
          
         
        
       
       
        
         
          
           
           
             c 
            
           
             2 
            
           
          
            s 
           
          
            i 
           
          
            g 
           
          
            m 
           
          
            o 
           
          
            i 
           
          
            d 
           
           
           
             ( 
            
            
            
              b 
             
            
              2 
             
            
           
             + 
            
            
            
              w 
             
            
              2 
             
            
            
            
              x 
             
            
              2 
             
            
           
             ) 
            
           
          
         
        
       
       
        
         
          
           
           
             c 
            
           
             3 
            
           
          
            s 
           
          
            i 
           
          
            g 
           
          
            m 
           
          
            o 
           
          
            i 
           
          
            d 
           
           
           
             ( 
            
            
            
              b 
             
            
              3 
             
            
           
             + 
            
            
            
              w 
             
            
              3 
             
            
            
            
              x 
             
            
              3 
             
            
           
             ) 
            
           
          
         
        
       
      
     
    
   
     y=b+\left\{\begin{matrix} c_{1}sigmoid\left ( b_{1}+w_{1}x_{1} \right ) \\ c_{2}sigmoid\left(b_{2}+w_{2}x_{2}\right) \\ c_{3}sigmoid\left(b_{3}+w_{3}x_{3} \right) \end{matrix}\right. 
    
   
 y=b+⎩⎨⎧​c1​sigmoid(b1​+w1​x1​)c2​sigmoid(b2​+w2​x2​)c3​sigmoid(b3​+w3​x3​)​
    这个线性方程组可以整理为:

  
   
    
    
      y 
     
    
      = 
     
    
      b 
     
    
      + 
     
     
     
       ∑ 
      
     
       i 
      
      
     
     
     
       c 
      
     
       i 
      
     
    
      s 
     
    
      i 
     
    
      g 
     
    
      m 
     
    
      o 
     
    
      i 
     
    
      d 
     
     
     
       ( 
      
      
      
        b 
       
      
        i 
       
      
     
       + 
      
      
      
        ∑ 
       
      
        j 
       
       
      
      
      
        w 
       
       
       
         i 
        
       
         j 
        
       
      
      
      
        x 
       
      
        j 
       
      
     
       ) 
      
     
    
   
     y= b+\sum_{i}^{} c_{i} sigmoid\left ( b_{i}+\sum_{j}^{} w_{ij} x_{j} \right ) 
    
   
 y=b+i∑​ci​sigmoid(bi​+j∑​wij​xj​)
    此时如果用**r**来表示sigmoid括号中的值,那么可以得到:

  
   
    
     
      
       
        
         
         
           r 
          
         
           1 
          
         
        
          = 
         
         
         
           b 
          
         
           1 
          
         
        
          + 
         
         
         
           w 
          
         
           11 
          
         
         
         
           x 
          
         
           1 
          
         
        
          + 
         
         
         
           w 
          
         
           12 
          
         
         
         
           x 
          
         
           2 
          
         
        
          + 
         
         
         
           w 
          
         
           13 
          
         
         
         
           x 
          
         
           3 
          
         
        
       
      
     
     
      
       
        
         
         
           r 
          
         
           2 
          
         
        
          = 
         
         
         
           b 
          
         
           2 
          
         
        
          + 
         
         
         
           w 
          
         
           21 
          
         
         
         
           x 
          
         
           1 
          
         
        
          + 
         
         
         
           w 
          
         
           22 
          
         
         
         
           x 
          
         
           2 
          
         
        
          + 
         
         
         
           w 
          
         
           23 
          
         
         
         
           x 
          
         
           3 
          
         
        
       
      
     
     
      
       
        
         
         
           r 
          
         
           3 
          
         
        
          = 
         
         
         
           b 
          
         
           3 
          
         
        
          + 
         
         
         
           w 
          
         
           31 
          
         
         
         
           x 
          
         
           1 
          
         
        
          + 
         
         
         
           w 
          
         
           32 
          
         
         
         
           x 
          
         
           2 
          
         
        
          + 
         
         
         
           w 
          
         
           33 
          
         
         
         
           x 
          
         
           3 
          
         
        
       
      
     
    
   
     \begin{matrix} r_{1}=b_{1}+w_{11}x_{1}+w_{12}x_{2}+w_{13}x_{3} \\ r_{2}=b_{2}+w_{21}x_{1}+w_{22}x_{2}+w_{23}x_{3} \\ r_{3}=b_{3}+w_{31}x_{1}+w_{32}x_{2}+w_{33}x_{3} \end{matrix} 
    
   
 r1​=b1​+w11​x1​+w12​x2​+w13​x3​r2​=b2​+w21​x1​+w22​x2​+w23​x3​r3​=b3​+w31​x1​+w32​x2​+w33​x3​​
    通过矩阵的方式计算可表示为: 
  
   
    
     
     
       [ 
      
      
       
        
         
          
          
            r 
           
          
            1 
           
          
         
        
       
       
        
         
          
          
            r 
           
          
            2 
           
          
         
        
       
       
        
         
          
          
            r 
           
          
            3 
           
          
         
        
       
      
     
       ] 
      
     
    
      = 
     
     
     
       [ 
      
      
       
        
         
          
          
            b 
           
          
            1 
           
          
         
        
       
       
        
         
          
          
            b 
           
          
            2 
           
          
         
        
       
       
        
         
          
          
            b 
           
          
            3 
           
          
         
        
       
      
     
       ] 
      
     
    
      + 
     
     
     
       [ 
      
      
       
        
         
          
          
            w 
           
          
            11 
           
          
         
        
        
         
          
          
            w 
           
          
            12 
           
          
         
        
        
         
          
          
            w 
           
          
            13 
           
          
         
        
       
       
        
         
          
          
            w 
           
          
            21 
           
          
         
        
        
         
          
          
            w 
           
          
            22 
           
          
         
        
        
         
          
          
            w 
           
          
            23 
           
          
         
        
       
       
        
         
          
          
            w 
           
          
            31 
           
          
         
        
        
         
          
          
            w 
           
          
            32 
           
          
         
        
        
         
          
          
            w 
           
          
            33 
           
          
         
        
       
      
     
       ] 
      
     
     
     
       [ 
      
      
       
        
         
          
          
            x 
           
          
            1 
           
          
         
        
       
       
        
         
          
          
            x 
           
          
            2 
           
          
         
        
       
       
        
         
          
          
            x 
           
          
            3 
           
          
         
        
       
      
     
       ] 
      
     
    
   
     \begin{bmatrix} r_{1}\\ r_{2}\\ r_{3} \end{bmatrix} =\begin{bmatrix} b_{1}\\ b_{2}\\ b_{3} \end{bmatrix} +\begin{bmatrix} w_{11} &w_{12}&w_{13}\\ w_{21} &w_{22} &w_{23}\\ w_{31}&w_{32}&w_{33} \end{bmatrix} \begin{bmatrix} x_{1}\\ x_{2}\\ x_{3} \end{bmatrix} 
    
   
 ​r1​r2​r3​​​=​b1​b2​b3​​​+​w11​w21​w31​​w12​w22​w32​​w13​w23​w33​​​​x1​x2​x3​​​
    即:

  
   
    
    
      r 
     
    
      = 
     
    
      b 
     
    
      + 
     
    
      w 
     
    
      x 
     
    
   
     r= b+wx 
    
   
 r=b+wx

所以当用a来表示sigmoid方程时,可得:

      a 
     
    
      = 
     
    
      s 
     
    
      i 
     
    
      g 
     
    
      m 
     
    
      o 
     
    
      i 
     
    
      d 
     
     
     
       ( 
      
     
       r 
      
     
       ) 
      
     
    
      = 
     
     
     
       1 
      
      
      
        1 
       
      
        + 
       
       
       
         e 
        
        
        
          − 
         
        
          r 
         
        
       
      
     
    
   
     a=sigmoid\left(r\right)=\cfrac{1}{1+ e^{-r } } 
    
   
 a=sigmoid(r)=1+e−r1​
    如果用希腊字母sigma表示sigmoid函数,那么就有:

  
   
    
    
      a 
     
    
      = 
     
    
      σ 
     
     
     
       ( 
      
     
       r 
      
     
       ) 
      
     
    
   
     a=\sigma\left(r\right) 
    
   
 a=σ(r)
    用线性代数的矩阵来表示上述函数,即为:

  
   
    
    
      y 
     
    
      = 
     
    
      b 
     
    
      + 
     
     
     
       c 
      
     
       T 
      
     
    
      a 
     
    
   
     y=b+c^{T}a 
    
   
 y=b+cTa
    合并之后为:

  
   
    
    
      y 
     
    
      = 
     
     
     
       b 
      
     
       1 
      
     
    
      + 
     
     
     
       c 
      
     
       T 
      
     
    
      σ 
     
     
     
       ( 
      
      
      
        b 
       
      
        2 
       
      
     
       + 
      
     
       w 
      
     
       x 
      
     
       ) 
      
     
    
   
     y=b_{1} +c^{T} \sigma \left ( b_{2} +wx \right ) 
    
   
 y=b1​+cTσ(b2​+wx)
    其中,**x**为函数的特征,**b1**为未知参数,**b2**为向量。

最后对于上述参数b1、w、b2、c,都用希腊字母Theta来表示,并进行后续优化。

深度学习第二步:从训练数据中定义损失

损失(Loss)

   损失是将所有的估测值和真实值之间的差距总和,即为:

  
   
    
    
      L 
     
    
      = 
     
     
     
       1 
      
     
       N 
      
     
     
     
       ∑ 
      
     
       n 
      
     
     
     
       e 
      
     
       n 
      
     
    
   
     L=\frac{1}{N}\sum_{n}e_{n} 
    
   
 L=N1​n∑​en​

随机找到一组初始数值

       θ 
      
     
       0 
      
     
    
   
     \theta ^{0} 
    
   
 θ0       然后对每一个未知参数都计算对L的微分之后再集合起来,组成一个向量**g**梯度:

  
   
    
    
      g 
     
    
      = 
     
     
     
       [ 
      
      
       
        
         
          
           
            
            
              ∂ 
             
            
              L 
             
            
            
            
              ∂ 
             
             
             
               θ 
              
             
               1 
              
             
            
           
          
            ∣ 
           
          
            θ 
           
          
            = 
           
           
           
             θ 
            
           
             0 
            
           
          
         
        
       
       
        
         
          
           
            
            
              ∂ 
             
            
              L 
             
            
            
            
              ∂ 
             
             
             
               θ 
              
             
               2 
              
             
            
           
          
            ∣ 
           
          
            θ 
           
          
            = 
           
           
           
             θ 
            
           
             0 
            
           
          
         
        
       
       
        
         
          
          
            ⋮ 
           
           
            
           
          
         
        
       
      
     
       ] 
      
     
    
   
     g=\begin{bmatrix} \frac{\partial L}{\partial \theta _{1}}|\theta =\theta ^{0} \\ \frac{\partial L}{\partial \theta _{2}}|\theta =\theta ^{0} \\ \vdots \end{bmatrix} 
    
   
 g=​∂θ1​∂L​∣θ=θ0∂θ2​∂L​∣θ=θ0⋮​​

向量g还可以写成:

      g 
     
    
      = 
     
    
      ▽ 
     
    
      L 
     
     
     
       ( 
      
      
      
        θ 
       
      
        0 
       
      
     
       ) 
      
     
    
   
     g=\bigtriangledown L\left(\theta ^{0}\right) 
    
   
 g=▽L(θ0)

参数Theta的更新

        θ 
       
      
        1 
       
      
     
       ⟵ 
      
      
      
        θ 
       
      
        0 
       
      
     
       − 
      
     
       η 
      
     
       g 
      
     
    
      \theta ^{1}\longleftarrow \theta ^{0} - \eta g 
     
    
  θ1⟵θ0−ηg

sigmoid函数与ReLU

ReLU:修正线性单元(Rectified Linear Unit)

      f 
     
     
     
       ( 
      
     
       x 
      
     
       ) 
      
     
    
      = 
     
    
      m 
     
    
      a 
     
    
      x 
     
     
     
       ( 
      
     
       0 
      
     
       , 
      
     
       x 
      
     
       ) 
      
     
    
   
     f\left(x\right)=max\left(0,x\right) 
    
   
 f(x)=max(0,x)

当输入值为负时,函数返回值为0,当输入值为正时,函数返回值为输入值本身,此时梯度恒为1。

ReLU函数的优点:

  • 函数简单,提升网络整体效率

  • 缓解梯度消失的问题

     缺点:
    
  • 输入值为负时,函数恒为0,神经网络无法学习(死亡ReLU)。 解决方案:使用变体Leaky ReLU: f ( x ) = m a x ( 0.01 x , x ) f\left(x\right)=max\left(0.01x,x\right) f(x)=max(0.01x,x)

由于两个ReLU函数才能等效于一个sigmoid,所以使用ReLU函数来表示模型的时候,

      y 
     
    
      = 
     
    
      b 
     
    
      + 
     
     
     
       ∑ 
      
     
       i 
      
      
     
     
     
       c 
      
     
       i 
      
     
    
      s 
     
    
      i 
     
    
      g 
     
    
      m 
     
    
      o 
     
    
      i 
     
    
      d 
     
     
     
       ( 
      
     
       0 
      
     
       , 
      
      
      
        b 
       
      
        i 
       
      
     
       + 
      
      
      
        ∑ 
       
      
        j 
       
       
      
      
      
        w 
       
       
       
         i 
        
       
         j 
        
       
      
      
      
        x 
       
      
        j 
       
      
     
       ) 
      
     
    
   
     y=b+\sum_{i}^{}c_{i}sigmoid\left(0,b_{i}+\sum_{j}^{}w_{ij}x_{j}\right) 
    
   
 y=b+i∑​ci​sigmoid(0,bi​+j∑​wij​xj​)
    可以表示为:

  
   
    
    
      y 
     
    
      = 
     
    
      b 
     
    
      + 
     
     
     
       ∑ 
      
      
      
        2 
       
      
        i 
       
      
      
     
     
     
       c 
      
     
       i 
      
     
    
      m 
     
    
      a 
     
    
      x 
     
     
     
       ( 
      
     
       0 
      
     
       , 
      
      
      
        b 
       
      
        i 
       
      
     
       + 
      
      
      
        ∑ 
       
      
        j 
       
       
      
      
      
        w 
       
       
       
         i 
        
       
         j 
        
       
      
      
      
        x 
       
      
        j 
       
      
     
       ) 
      
     
    
   
     y=b+\sum_{2i}^{}c_{i}max\left(0,b_{i}+\sum_{j}^{}w_{ij}x_{j}\right) 
    
   
 y=b+2i∑​ci​max(0,bi​+j∑​wij​xj​)

在深度学习的过程中,每一个函数被称为神经元,通过改变权重得到新参数的学习网络就被称为神经网络。

深度学习第三步: 参数优化

在优化过程中要防止过拟合现象出现。
过拟合:当算法与其训练数据过于接近甚至完全吻合时,就会发生过拟合,这会导致模型无法根据训练数据以外的任何数据做出准确的预测或结论。


本文转载自: https://blog.csdn.net/weixin_68008746/article/details/141547371
版权归原作者 砂糖橘吐司 所有, 如有侵权,请联系我们删除。

“Datawhale X 李宏毅苹果书 AI夏令营-深度学习入门 Task 2”的评论:

还没有评论