一、 机器学习应用
机器学习的应用,主要分为两类:预测、分类
预测,一般是指:根据数据,预测数值
 分类,一般是指:根据数据,进行分类
1. 预测与分类的关系【个人理解】
分类,本质上也是一种预测。
预测,可预测实值,也可预测类别。
预测实值可通过线性回归模型,预测出线性的实际数值。
 但当预测某个数据的类别(例如男女、老少等非连续的离散值)时,则变为了人们常说的分类问题。
因此,如果非要对预测、分类进行一个严格区分:
『 预测问题是对线性连续值的预测,分类问题是对非线性值的预测 』
二、机器学习基础流程
- 建立模型:根据应用类型,构造函数模型
- 学习模型:将数据应用于模型计算,并求解出当前模型的最优参数
- 衡量模型:衡量学习后的模型效果
机器学习的流程,就像是做菜-菠萝炒鸡。
👉建立模型,就像是根据目标,凭经验设计一个做菜的固定步骤。
- 开火
- 烧油
- 放菜
- 放盐
- 关火
虽然知道需要什么材料,但这个过程需要多少油,多少盐,多少火力,煮多久——无从知晓!
 所以,建立模型时,只知道需要锅碗瓢盆油盐酱醋这些参数,但却不知道参数是多少!!!
👉学习模型,就像是一个鲁莽的菜鸟厨师。
 它菜就菜在,不知道这些材料,都需要放多少量(即它也不知道放多少油盐酱醋才好吃)
 它莽就莽在,不管三七二十一,先按这个步骤随便放初始量的材料,直接开炒!
 每次炒的结果,都由一个试吃小白鼠去尝,如果小白鼠摇摇头不满意,鲁莽的菜鸟厨师就稍微调整一下材料用量
炒的次数多了,这个材料量自然就会慢慢调整好,小白鼠总有一天会拍灯,为你转身!
 于是,鲁莽的菜鸟厨师,经过坚持不懈的尝试与改进,终于含泪掌握了菠萝炒鸡的配方。
👉衡量模型,就像是最后的质检,检验你训练后最优状态的模型,是否是个好的模型
- 如果衡量出最优状态模型的效果并不好,说明你当初建模时就有问题了(即,做菜用的材料不对或流程有误等)
- 如果衡量出最优状态模型的效果比较好,说明你当初建的模型,是比较合理的,可以应用!
【学习模型】,只是在尽可能地帮你把当初建立的模型,训练到最优状态;
 但这个最优状态下的模型,是否真的实用好用,还是要通过最后一步【衡量模型】来判断的
【比喻还是有些不够恰当的,但精髓到位就行】
1. 建立模型
建立模型,就是根据应用类型,构造函数模型。
 应用类型分为:预测、分类。
1.1 预测的函数模型
预测:一般采用线性回归模型。
求解线性回归模型参数,即是学习模型的过程
常见的线性回归函数:一元线性回归【y = wx + b】、多元线性回归【Y= W T X W^{T}X WTX】
1.1.1 一元线性回归
一元线性回归【y = wx + b】,只有一个自变量 x,和一个因变量 y,有两个未知参数w和b
 它其实就是数学中的一元一次方程。 其中,w是变量x的权重,b是偏差。
一元线性回归,适用于预测只有单个因素影响某个指标的数据,并且该因素与该数据指标,是线性关系才会预测的更准。
例如,假设工资是唯一影响幸福指数的因素,那么可以建立一元线性回归的预测模型。
 即:y = wx+b,x表示工资,y表示幸福指数
| 工资x | 幸福指数y | 
|---|---|
| 10k | 10% | 
| 19k | 13% | 
| 15k | 40% | 
| 119k | 80% | 
| 500k | 120% | 
| … | … | 
1.1.2 多元线性回归
多元线性回归【y =  
     
      
       
        
        
          W 
         
        
          T 
         
        
       
         X 
        
       
      
        W^{T}X 
       
      
    WTX】,有多个变量x1,x2,x3…xn,构成了自变量X,每一个自变量x,都有对应的权重w1,w2,w3…wn
 即 y =  
     
      
       
        
        
          W 
         
        
          T 
         
        
       
         X 
        
       
      
        W^{T}X 
       
      
    WTX =  
     
      
       
        
        
          w 
         
        
          1 
         
        
       
         ∗ 
        
        
        
          x 
         
        
          1 
         
        
       
         + 
        
        
        
          w 
         
        
          2 
         
        
       
         ∗ 
        
        
        
          x 
         
        
          2 
         
        
       
         + 
        
        
        
          w 
         
        
          3 
         
        
       
         ∗ 
        
        
        
          x 
         
        
          3 
         
        
       
         + 
        
       
         . 
        
       
         . 
        
       
         . 
        
       
         . 
        
       
         + 
        
        
        
          w 
         
        
          n 
         
        
       
         ∗ 
        
        
        
          x 
         
        
          n 
         
        
       
         + 
        
        
        
          w 
         
        
          0 
         
        
       
         ∗ 
        
        
        
          x 
         
        
          0 
         
        
       
      
        w_1*x_1+w_2*x_2+w_3*x_3+....+w_n*x_n + w_0*x_0 
       
      
    w1∗x1+w2∗x2+w3∗x3+....+wn∗xn+w0∗x0
 【这里的 
     
      
       
        
        
          w 
         
        
          0 
         
        
       
         ∗ 
        
        
        
          x 
         
        
          0 
         
        
       
      
        w_0*x_0 
       
      
    w0∗x0,其实相当于 
     
      
       
        
        
          x 
         
        
          0 
         
        
       
         = 
        
       
         1 
        
       
         , 
        
        
        
          w 
         
        
          0 
         
        
       
         = 
        
       
         b 
        
       
      
        x_0=1,w_0=b 
       
      
    x0=1,w0=b,表示偏差b,写成 
     
      
       
        
        
          w 
         
        
          0 
         
        
       
         ∗ 
        
        
        
          x 
         
        
          0 
         
        
       
      
        w_0*x_0 
       
      
    w0∗x0,是为了让参数变成一个整齐的向量W】
  
     
      
       
        
        
          W 
         
        
          T 
         
        
       
         X 
        
       
      
        W^{T}X 
       
      
    WTX= 
     
      
       
       
         [ 
        
        
         
          
           
            
             
             
               w 
              
             
               0 
              
             
            
              , 
             
             
             
               w 
              
             
               1 
              
             
            
              , 
             
             
             
               w 
              
             
               2 
              
             
            
              , 
             
             
             
               w 
              
             
               3 
              
             
            
              , 
             
            
              . 
             
            
              . 
             
            
              . 
             
            
              , 
             
             
             
               w 
              
             
               m 
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}w_0,w_1,w_2,w_3,...,w_m\end{bmatrix} 
       
      
    [w0,w1,w2,w3,...,wm]* 
     
      
       
       
         [ 
        
        
         
          
           
            
            
              x 
             
            
              0 
             
            
           
          
         
         
          
           
            
            
              x 
             
            
              1 
             
            
           
          
         
         
          
           
            
            
              x 
             
            
              2 
             
            
           
          
         
         
          
           
            
            
              x 
             
            
              3 
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
            
              x 
             
            
              m 
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}x_0\\x_1\\x_2\\x_3\\...\\x_m\end{bmatrix} 
       
      
     
             x0x1x2x3...xm 
             
这里的 
     
      
       
       
         [ 
        
        
         
          
           
            
            
              x 
             
            
              0 
             
            
           
          
         
         
          
           
            
            
              x 
             
            
              1 
             
            
           
          
         
         
          
           
            
            
              x 
             
            
              2 
             
            
           
          
         
         
          
           
            
            
              x 
             
            
              3 
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
            
              x 
             
            
              m 
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}x_0\\x_1\\x_2\\x_3\\...\\x_m\end{bmatrix} 
       
      
     
             x0x1x2x3...xm 
             ,表示一条数据
 如果有多条数据,则应为 X = 
     
      
       
       
         [ 
        
        
         
          
           
            
             
             
               x 
              
             
               00 
              
             
            
              , 
             
             
             
               x 
              
             
               01 
              
             
            
              . 
             
            
              . 
             
            
              . 
             
             
             
               x 
              
              
              
                0 
               
              
                n 
               
              
             
            
           
          
         
         
          
           
            
             
             
               x 
              
             
               10 
              
             
            
              , 
             
             
             
               x 
              
             
               11 
              
             
            
              . 
             
            
              . 
             
            
              . 
             
             
             
               x 
              
              
              
                1 
               
              
                n 
               
              
             
            
           
          
         
         
          
           
            
             
             
               x 
              
             
               20 
              
             
            
              , 
             
             
             
               x 
              
             
               21 
              
             
            
              . 
             
            
              . 
             
            
              . 
             
             
             
               x 
              
              
              
                2 
               
              
                n 
               
              
             
            
           
          
         
         
          
           
            
             
             
               x 
              
             
               30 
              
             
            
              , 
             
             
             
               x 
              
             
               31 
              
             
            
              . 
             
            
              . 
             
            
              . 
             
             
             
               x 
              
              
              
                3 
               
              
                n 
               
              
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
             
             
               x 
              
              
              
                m 
               
              
                0 
               
              
             
            
              , 
             
             
             
               x 
              
              
              
                m 
               
              
                1 
               
              
             
            
              . 
             
            
              . 
             
            
              . 
             
             
             
               x 
              
              
              
                m 
               
              
                n 
               
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}x_{00},x_{01}...x_{0n}\\x_{10},x_{11}...x_{1n}\\x_{20},x_{21}...x_{2n}\\x_{30},x_{31}...x_{3n}\\...\\x_{m0},x_{m1}...x_{mn}\end{bmatrix} 
       
      
     
             x00,x01...x0nx10,x11...x1nx20,x21...x2nx30,x31...x3n...xm0,xm1...xmn 
             
 只有一个因变量 y,因此多元线性回归,适用于由多个因素x影响某个数据指标y的情况。
 
     
      
       
        
        
          Y 
         
        
          T 
         
        
       
      
        Y^T 
       
      
    YT =  
     
      
       
       
         [ 
        
        
         
          
           
            
             
              
              
                y 
               
              
                0 
               
              
             
               ˉ 
              
             
            
              , 
             
             
              
              
                y 
               
              
                1 
               
              
             
               ˉ 
              
             
            
              , 
             
             
              
              
                y 
               
              
                2 
               
              
             
               ˉ 
              
             
            
              , 
             
             
              
              
                y 
               
              
                3 
               
              
             
               ˉ 
              
             
            
              , 
             
            
              . 
             
            
              . 
             
            
              . 
             
            
              , 
             
             
              
              
                y 
               
              
                n 
               
              
             
               ˉ 
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}\bar{y_0},\bar{y_1},\bar{y_2},\bar{y_3},...,\bar{y_n}\end{bmatrix} 
       
      
    [y0ˉ,y1ˉ,y2ˉ,y3ˉ,...,ynˉ]= 
     
      
       
        
        
          W 
         
        
          T 
         
        
       
         X 
        
       
      
        W^{T}X 
       
      
    WTX= 
     
      
       
       
         [ 
        
        
         
          
           
            
             
             
               w 
              
             
               0 
              
             
            
              , 
             
             
             
               w 
              
             
               1 
              
             
            
              , 
             
             
             
               w 
              
             
               2 
              
             
            
              , 
             
             
             
               w 
              
             
               3 
              
             
            
              , 
             
            
              . 
             
            
              . 
             
            
              . 
             
            
              , 
             
             
             
               w 
              
             
               m 
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}w_0,w_1,w_2,w_3,...,w_m\end{bmatrix} 
       
      
    [w0,w1,w2,w3,...,wm] 
      
       
        
        
          [ 
         
         
          
           
            
             
              
              
                x 
               
              
                00 
               
              
             
               , 
              
              
              
                x 
               
              
                01 
               
              
             
               . 
              
             
               . 
              
             
               . 
              
              
              
                x 
               
               
               
                 0 
                
               
                 n 
                
               
              
             
            
           
          
          
           
            
             
              
              
                x 
               
              
                10 
               
              
             
               , 
              
              
              
                x 
               
              
                11 
               
              
             
               . 
              
             
               . 
              
             
               . 
              
              
              
                x 
               
               
               
                 1 
                
               
                 n 
                
               
              
             
            
           
          
          
           
            
             
              
              
                x 
               
              
                20 
               
              
             
               , 
              
              
              
                x 
               
              
                21 
               
              
             
               . 
              
             
               . 
              
             
               . 
              
              
              
                x 
               
               
               
                 2 
                
               
                 n 
                
               
              
             
            
           
          
          
           
            
             
              
              
                x 
               
              
                30 
               
              
             
               , 
              
              
              
                x 
               
              
                31 
               
              
             
               . 
              
             
               . 
              
             
               . 
              
              
              
                x 
               
               
               
                 3 
                
               
                 n 
                
               
              
             
            
           
          
          
           
            
             
             
               . 
              
             
               . 
              
             
               . 
              
             
            
           
          
          
           
            
             
              
              
                x 
               
               
               
                 m 
                
               
                 0 
                
               
              
             
               , 
              
              
              
                x 
               
               
               
                 m 
                
               
                 1 
                
               
              
             
               . 
              
             
               . 
              
             
               . 
              
              
              
                x 
               
               
               
                 m 
                
               
                 n 
                
               
              
             
            
           
          
         
        
          ] 
         
        
       
         \begin{bmatrix}x_{00},x_{01}...x_{0n}\\x_{10},x_{11}...x_{1n}\\x_{20},x_{21}...x_{2n}\\x_{30},x_{31}...x_{3n}\\...\\x_{m0},x_{m1}...x_{mn}\end{bmatrix} 
        
       
      
              x00,x01...x0nx10,x11...x1nx20,x21...x2nx30,x31...x3n...xm0,xm1...xmn 
              
 或 
      
       
        
        
          Y 
         
        
       
         Y 
        
       
     Y =  
      
       
        
        
          [ 
         
         
          
           
            
             
              
              
                y 
               
              
                0 
               
              
             
               ˉ 
              
             
            
           
          
          
           
            
             
              
              
                y 
               
              
                1 
               
              
             
               ˉ 
              
             
            
           
          
          
           
            
             
              
              
                y 
               
              
                2 
               
              
             
               ˉ 
              
             
            
           
          
          
           
            
             
              
              
                y 
               
              
                3 
               
              
             
               ˉ 
              
             
            
           
          
          
           
            
             
             
               . 
              
             
               . 
              
             
               . 
              
             
            
           
          
          
           
            
             
              
              
                y 
               
              
                n 
               
              
             
               ˉ 
              
             
            
           
          
         
        
          ] 
         
        
       
         \begin{bmatrix}\bar{y_0}\\\bar{y_1}\\\bar{y_2}\\\bar{y_3}\\...\\\bar{y_n}\end{bmatrix} 
        
       
      
              y0ˉy1ˉy2ˉy3ˉ...ynˉ 
              = 
      
       
        
        
          X 
         
        
          W 
         
        
       
         XW 
        
       
     XW= 
     
      
       
        
         
         
           [ 
          
          
           
            
             
              
               
               
                 x 
                
               
                 00 
                
               
              
                , 
               
               
               
                 x 
                
               
                 01 
                
               
              
                . 
               
              
                . 
               
              
                . 
               
               
               
                 x 
                
                
                
                  0 
                 
                
                  n 
                 
                
               
              
             
            
           
           
            
             
              
               
               
                 x 
                
               
                 10 
                
               
              
                , 
               
               
               
                 x 
                
               
                 11 
                
               
              
                . 
               
              
                . 
               
              
                . 
               
               
               
                 x 
                
                
                
                  1 
                 
                
                  n 
                 
                
               
              
             
            
           
           
            
             
              
               
               
                 x 
                
               
                 20 
                
               
              
                , 
               
               
               
                 x 
                
               
                 21 
                
               
              
                . 
               
              
                . 
               
              
                . 
               
               
               
                 x 
                
                
                
                  2 
                 
                
                  n 
                 
                
               
              
             
            
           
           
            
             
              
               
               
                 x 
                
               
                 30 
                
               
              
                , 
               
               
               
                 x 
                
               
                 31 
                
               
              
                . 
               
              
                . 
               
              
                . 
               
               
               
                 x 
                
                
                
                  3 
                 
                
                  n 
                 
                
               
              
             
            
           
           
            
             
              
              
                . 
               
              
                . 
               
              
                . 
               
              
             
            
           
           
            
             
              
               
               
                 x 
                
                
                
                  m 
                 
                
                  0 
                 
                
               
              
                , 
               
               
               
                 x 
                
                
                
                  m 
                 
                
                  1 
                 
                
               
              
                . 
               
              
                . 
               
              
                . 
               
               
               
                 x 
                
                
                
                  m 
                 
                
                  n 
                 
                
               
              
             
            
           
          
         
           ] 
          
         
        
          T 
         
        
       
      
        \begin{bmatrix}x_{00},x_{01}...x_{0n}\\x_{10},x_{11}...x_{1n}\\x_{20},x_{21}...x_{2n}\\x_{30},x_{31}...x_{3n}\\...\\x_{m0},x_{m1}...x_{mn}\end{bmatrix}^T 
       
      
     
              x00,x01...x0nx10,x11...x1nx20,x21...x2nx30,x31...x3n...xm0,xm1...xmn 
              T* 
     
      
       
       
         [ 
        
        
         
          
           
            
            
              w 
             
            
              0 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              1 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              2 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              3 
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              m 
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}w_0\\w_1\\w_2\\w_3\\...\\w_m\end{bmatrix} 
       
      
     
             w0w1w2w3...wm 
             
 例如,假设颜值和工作,是影响幸福指数的两个因素,那么加上偏差b,总共有3个影响因素x0,x1,x2即如下

1.2 分类的函数模型
分类:一般采用逻辑回归模型(即,线性回归函数+非线性函数)。
逻辑回归模型:线性回归函数+非线性函数
 1)先用线性回归函数,计算出一个实值。(例如,线性回归模型-计算出资产为100w)
 2)再用非线性函数,对实值按条件进行分类。(例如,根据线性回归模型计算出的资产100w,则分类为“高价值人群”)
这里的非线性函数,其实是激活函数,常见的激活函数有逻辑回归
具体的激活函数有多种,常见的有sigmoid函数(也叫逻辑回归函数)、Relu函数、softmax函数等。

 (sigmoid与softmax实际相通,解释不同)
1.2.1 二分类的逻辑回归
二分类的逻辑回归,其实指的就是 sigmoid 函数,又称“对数几率函数”。
二分类,是指只有两种类别,而分类结果是这两种类别中的其中一种。
当我们要实现的是二分类问题时,可以选用sigmoid函数。
 
 从sigmoid函数可以看出,分类结果是从 y 值来判断的:例如如果以0.5作为分类标准
 y>0.5 : 判定类别为 1 (可以自己设置标签,例如,1表示男)
 y≤0.5:判定类别为 0(可以自己设置标签,例如,0表示女)
 如果计算出的 y = 0.7,则我们可以认为分类结果是 1。
当然,也可以根据经验,以 0.8作为分类标准
 y>0.8:判定类别为 1
 y≤0.8:判定类别为 0
 这种判断标准的设定,一般要看实际分类的情况来设定。
 
 从sigmoid函数,我们能看出未知参数,依然是 W(多元线性方程,以后均用多元线性方程代替一元线性方程)。
多元线性方程:Z = [ z 0 ˉ z 1 ˉ z 2 ˉ z 3 ˉ . . . z n ˉ ] \begin{bmatrix}\bar{z_0}\\\bar{z_1}\\\bar{z_2}\\\bar{z_3}\\...\\\bar{z_n}\end{bmatrix} z0ˉz1ˉz2ˉz3ˉ...znˉ = X W XW XW= [ x 00 , x 01 . . . x 0 n x 10 , x 11 . . . x 1 n x 20 , x 21 . . . x 2 n x 30 , x 31 . . . x 3 n . . . x m 0 , x m 1 . . . x m n ] T \begin{bmatrix}x_{00},x_{01}...x_{0n}\\x_{10},x_{11}...x_{1n}\\x_{20},x_{21}...x_{2n}\\x_{30},x_{31}...x_{3n}\\...\\x_{m0},x_{m1}...x_{mn}\end{bmatrix}^T x00,x01...x0nx10,x11...x1nx20,x21...x2nx30,x31...x3n...xm0,xm1...xmn T [ w 0 w 1 w 2 w 3 . . . w m ] \begin{bmatrix}w_0\\w_1\\w_2\\w_3\\...\\w_m\end{bmatrix} w0w1w2w3...wm 
二分类逻辑回归方程:Y = [ y 0 ˉ y 1 ˉ y 2 ˉ y 3 ˉ . . . y n ˉ ] \begin{bmatrix}\bar{y_0}\\\bar{y_1}\\\bar{y_2}\\\bar{y_3}\\...\\\bar{y_n}\end{bmatrix} y0ˉy1ˉy2ˉy3ˉ...ynˉ = Sigmoid(Z) = [ 1 1 + e − z 0 ˉ 1 1 + e − z 1 ˉ 1 1 + e − z 2 ˉ 1 1 + e − z 3 ˉ . . . 1 1 + e − z n ˉ ] \begin{bmatrix}\frac{1}{1+e^{-\bar{z_0}}}\\\frac{1}{1+e^{-\bar{z_1}}}\\\frac{1}{1+e^{-\bar{z_2}}}\\\frac{1}{1+e^{-\bar{z_3}}}\\...\\\frac{1}{1+e^{-\bar{z_n}}}\end{bmatrix} 1+e−z0ˉ11+e−z1ˉ11+e−z2ˉ11+e−z3ˉ1...1+e−znˉ1 
1.2.2 多分类的逻辑回归
多分类的逻辑回归,其实指的就是 softmax 函数,它是sigmoid函数的进化,本质上与sigmoid无差。
多分类,是指有多种类别,而分类结果是这多种类别中的其中一种。
 例如:声音分为男高音、男中音、男低音、女高音、女低音、女中音这6种类别,分类时只判断为其中一种,则为多分类问题,适用softmax函数。
 【举个简单的🌰】
 
由此可见,二分类的sigmoid逻辑回归模型,只输出 1 个y值,用于判断是否
 多分类的softmax逻辑回归模型,则输出多个y值,用于判断多个类别中,可能性最大的那种类别。
sigmoid函数 y =  
     
      
       
        
        
          1 
         
         
         
           1 
          
         
           + 
          
          
          
            e 
           
           
           
             − 
            
           
             z 
            
           
          
         
        
       
         = 
        
        
         
         
           e 
          
         
           z 
          
         
         
          
          
            e 
           
          
            z 
           
          
         
           + 
          
          
          
            e 
           
          
            0 
           
          
         
        
       
      
        \frac{1}{1+e^{-z}}=\frac{e^z}{e^z+e^{0}} 
       
      
    1+e−z1=ez+e0ez,相当于分两个类别,一个类别z1 = WX,另外一个类别(无)z2 = 0*X=0
 于是,就可以变形为  
     
      
       
       
         s 
        
       
         i 
        
       
         g 
        
       
         m 
        
       
         o 
        
       
         i 
        
       
         d 
        
       
         函数 
        
       
         y 
        
       
         = 
        
        
        
          1 
         
         
         
           1 
          
         
           + 
          
          
          
            e 
           
           
           
             − 
            
           
             z 
            
           
          
         
        
       
         → 
        
       
         s 
        
       
         o 
        
       
         f 
        
       
         t 
        
       
         m 
        
       
         a 
        
       
         x 
        
       
         函数 
        
       
         y 
        
       
         = 
        
        
         
         
           e 
          
         
           z 
          
         
         
          
          
            e 
           
          
            z 
           
          
         
           + 
          
          
          
            e 
           
          
            0 
           
          
         
        
       
      
        sigmoid函数 y = \frac{1}{1+e^{-z}}→softmax函数 y=\frac{e^z}{e^z+e^{0}} 
       
      
    sigmoid函数y=1+e−z1→softmax函数y=ez+e0ez
举个简单的适用栗子🌰:假设颜值、工资等m个因素,决定了生活的多种价值类型(高、中、低价值)
假设有 3 个类别,低价值、中价值、高价值,各自的参数为W0,W1,W2
 W0 =  
     
      
       
       
         [ 
        
        
         
          
           
            
            
              w 
             
            
              00 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              01 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              02 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              03 
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
            
              w 
             
             
             
               0 
              
             
               m 
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}w_{00}\\w_{01}\\w_{02}\\w_{03}\\...\\w_{0m}\end{bmatrix} 
       
      
     
             w00w01w02w03...w0m 
             , W1 =  
     
      
       
       
         [ 
        
        
         
          
           
            
            
              w 
             
            
              10 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              11 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              12 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              13 
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
            
              w 
             
             
             
               1 
              
             
               m 
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}w_{10}\\w_{11}\\w_{12}\\w_{13}\\...\\w_{1m}\end{bmatrix} 
       
      
     
             w10w11w12w13...w1m 
             , W2 =  
     
      
       
       
         [ 
        
        
         
          
           
            
            
              w 
             
            
              20 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              21 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              22 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              23 
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
            
              w 
             
             
             
               2 
              
             
               m 
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}w_{20}\\w_{21}\\w_{22}\\w_{23}\\...\\w_{2m}\end{bmatrix} 
       
      
     
             w20w21w22w23...w2m 
             
 合在一起的 W = [ W0,W1,W2]= 
     
      
       
       
         [ 
        
        
         
          
           
            
             
             
               w 
              
             
               00 
              
             
            
              , 
             
             
             
               w 
              
             
               01 
              
             
            
              , 
             
             
             
               w 
              
             
               02 
              
             
            
           
          
         
         
          
           
            
             
             
               w 
              
             
               01 
              
             
            
              , 
             
             
             
               w 
              
             
               11 
              
             
            
              , 
             
             
             
               w 
              
             
               21 
              
             
            
           
          
         
         
          
           
            
             
             
               w 
              
             
               02 
              
             
            
              , 
             
             
             
               w 
              
             
               12 
              
             
            
              , 
             
             
             
               w 
              
             
               22 
              
             
            
           
          
         
         
          
           
            
             
             
               w 
              
             
               03 
              
             
            
              , 
             
             
             
               w 
              
             
               13 
              
             
            
              , 
             
             
             
               w 
              
             
               23 
              
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
             
             
               w 
              
              
              
                0 
               
              
                m 
               
              
             
            
              , 
             
             
             
               w 
              
              
              
                1 
               
              
                m 
               
              
             
            
              , 
             
             
             
               w 
              
              
              
                2 
               
              
                m 
               
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}w_{00},w_{01},w_{02}\\w_{01},w_{11},w_{21}\\w_{02},w_{12},w_{22}\\w_{03},w_{13},w_{23}\\...\\w_{0m},w_{1m},w_{2m}\end{bmatrix} 
       
      
     
             w00,w01,w02w01,w11,w21w02,w12,w22w03,w13,w23...w0m,w1m,w2m 
             
 👉先建立3个多元线性回归方程,从0开始作为类别序号【0,1,2】,可以合并为 1 个:
Z = [Z0,Z1,Z2]= [ z 00 , z 10 , z 20 z 01 , z 11 , z 21 z 02 , z 12 , z 22 z 03 , z 13 , z 23 . . . z 0 m , z 1 m , z 2 m ] \begin{bmatrix}z_{00},z_{10},z_{20}\\z_{01},z_{11},z_{21}\\z_{02},z_{12},z_{22}\\z_{03},z_{13},z_{23}\\...\\z_{0m},z_{1m},z_{2m}\end{bmatrix} z00,z10,z20z01,z11,z21z02,z12,z22z03,z13,z23...z0m,z1m,z2m = X W XW XW= [ x 00 , x 01 . . . x 0 n x 10 , x 11 . . . x 1 n x 20 , x 21 . . . x 2 n x 30 , x 31 . . . x 3 n . . . x m 0 , x m 1 . . . x m n ] T \begin{bmatrix}x_{00},x_{01}...x_{0n}\\x_{10},x_{11}...x_{1n}\\x_{20},x_{21}...x_{2n}\\x_{30},x_{31}...x_{3n}\\...\\x_{m0},x_{m1}...x_{mn}\end{bmatrix}^T x00,x01...x0nx10,x11...x1nx20,x21...x2nx30,x31...x3n...xm0,xm1...xmn T [ w 00 , w 01 , w 02 w 01 , w 11 , w 21 w 02 , w 12 , w 22 w 03 , w 13 , w 23 . . . w 0 m , w 1 m , w 2 m ] \begin{bmatrix}w_{00},w_{01},w_{02}\\w_{01},w_{11},w_{21}\\w_{02},w_{12},w_{22}\\w_{03},w_{13},w_{23}\\...\\w_{0m},w_{1m},w_{2m}\end{bmatrix} w00,w01,w02w01,w11,w21w02,w12,w22w03,w13,w23...w0m,w1m,w2m 
其中,z0,z1,z2的对应关系如下:
 
👉再建立多分类逻辑回归模型:
 Y = [ Y0,Y1,Y2]= 
     
      
       
       
         [ 
        
        
         
          
           
            
             
             
               y 
              
             
               00 
              
             
            
              , 
             
             
             
               y 
              
             
               10 
              
             
            
              , 
             
             
             
               y 
              
             
               20 
              
             
            
           
          
         
         
          
           
            
             
             
               y 
              
             
               01 
              
             
            
              , 
             
             
             
               y 
              
             
               11 
              
             
            
              , 
             
             
             
               y 
              
             
               21 
              
             
            
           
          
         
         
          
           
            
             
             
               y 
              
             
               02 
              
             
            
              , 
             
             
             
               y 
              
             
               12 
              
             
            
              , 
             
             
             
               y 
              
             
               22 
              
             
            
           
          
         
         
          
           
            
             
             
               y 
              
             
               03 
              
             
            
              , 
             
             
             
               y 
              
             
               13 
              
             
            
              , 
             
             
             
               y 
              
             
               23 
              
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
             
             
               y 
              
              
              
                0 
               
              
                m 
               
              
             
            
              , 
             
             
             
               y 
              
              
              
                1 
               
              
                m 
               
              
             
            
              , 
             
             
             
               y 
              
              
              
                2 
               
              
                m 
               
              
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}y_{00},y_{10},y_{20}\\y_{01},y_{11},y_{21}\\y_{02},y_{12},y_{22}\\y_{03},y_{13},y_{23}\\...\\y_{0m},y_{1m},y_{2m}\end{bmatrix} 
       
      
     
             y00,y10,y20y01,y11,y21y02,y12,y22y03,y13,y23...y0m,y1m,y2m 
             =Softmax(Z)
例如
  
     
      
       
        
        
          [ 
         
         
          
           
            
             
             
               y 
              
             
               1 
              
             
               , 
              
             
               y 
              
             
               2 
              
             
               , 
              
             
               y 
              
             
               3 
              
             
            
           
          
         
        
          ] 
         
        
       
         = 
        
        
        
          [ 
         
         
          
           
            
             
             
               0.2 
              
             
               , 
              
             
               0.7 
              
             
               , 
              
             
               0.1 
              
             
            
           
          
         
        
          ] 
         
        
       
      
        \begin{bmatrix}y1, y2,y3\end{bmatrix}=\begin{bmatrix}0.2, 0.7,0.1\end{bmatrix} 
       
      
    [y1,y2,y3]=[0.2,0.7,0.1]≈ 
     
      
       
       
         [ 
        
        
         
          
           
            
            
              0 
             
            
              , 
             
            
              1 
             
            
              , 
             
            
              0 
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}0, 1,0\end{bmatrix} 
       
      
    [0,1,0]
 判断为第2种类别。
总结
 参数w的个数,是由影响因素的个数决定的,如果y值由3个x因素影响,则参数w的个数为3,但考虑到偏差b也用 
     
      
       
        
        
          w 
         
        
          0 
         
        
        
        
          x 
         
        
          0 
         
        
       
      
        w_0x_0 
       
      
    w0x0表示
 则,
- 参数w为4个: W T W^T WT = [ w0, w1, w2, w3 ];
- 因素x分别为:x0, x1, x2, x3;
如果要求实现预测,需建立线性回归模型。**
 👉一元或多元回归模型: 
     
      
       
       
         y 
        
       
         = 
        
        
        
          W 
         
        
          T 
         
        
       
         X 
        
       
      
        y = W^TX 
       
      
    y=WTX
 如果要求实现分类,需建立逻辑回归模型。
 👉二分类逻辑回归模型:
 二分类,实际是只有一个类别,因此:
 ① 先建立一个多元线性回归模型
  
     
      
       
       
         z 
        
       
         = 
        
        
         
         
           W 
          
         
           T 
          
         
        
          X 
         
        
       
      
        z = {W^TX} 
       
      
    z=WTX
 其中, 
     
      
       
        
        
          W 
         
        
          T 
         
        
       
         = 
        
       
         [ 
        
        
        
          w 
         
        
          0 
         
        
       
         , 
        
        
        
          w 
         
        
          1 
         
        
       
         , 
        
        
        
          w 
         
        
          2 
         
        
       
         . 
        
       
         . 
        
       
         . 
        
        
        
          w 
         
        
          m 
         
        
       
         ] 
        
       
      
        W_T=[w_0,w_1,w_2...w_m] 
       
      
    WT=[w0,w1,w2...wm]👉
  
     
      
       
       
         y 
        
       
         = 
        
       
         s 
        
       
         i 
        
       
         g 
        
       
         m 
        
       
         o 
        
       
         i 
        
       
         d 
        
       
         ( 
        
       
         x 
        
       
         ) 
        
       
         = 
        
        
        
          1 
         
         
         
           1 
          
         
           + 
          
          
          
            e 
           
           
           
             − 
            
            
            
              W 
             
            
              T 
             
            
           
             X 
            
           
          
         
        
       
      
        y =sigmoid(x)= \frac{1}{1+e^{-W^TX}} 
       
      
    y=sigmoid(x)=1+e−WTX1
👉多分类逻辑回归模型: [ y 1 y 2 y 3 ] = [ e W 1 T X e W 1 T X + e W 2 T X + e W 3 T X e W 2 T X e W 1 T X + e W 2 T X + e W 3 T X e W 3 T X e W 1 T X + e W 2 T X + e W 3 T X ] \begin{bmatrix}y1\\\\ y2\\\\y3\end{bmatrix}=\begin{bmatrix}\frac{e^{W1^TX}} {e^{W1^TX}+e^{W2^TX}+e^{W3^TX}}\\\\ \frac{e^{W2^TX}}{e^{W1^TX}+e^{W2^TX}+e^{W3^TX}}\\\\\frac{e^{W3^TX}}{e^{W1^TX}+e^{W2^TX}+e^{W3^TX}}\end{bmatrix} y1y2y3 = eW1TX+eW2TX+eW3TXeW1TXeW1TX+eW2TX+eW3TXeW2TXeW1TX+eW2TX+eW3TXeW3TX 
注意:模型参数 W未知!
下一步学习模型,目的就是求解出最优模型的参数 W 优 W_优 W优
2. 学习模型:求解最优模型
学习模型,是根据上一步建立的模型,进行批量数据的计算,不断地迭代参数w和b,直到模型达到最优状态。
所以,在学习模型主要分为 3 个步骤:
 1)明确模型初始状态的参数值:初始参数 
     
      
       
        
        
          W 
         
        
          0 
         
        
       
      
        W_0 
       
      
    W0
 2)明确衡量模型状态的指标
 3)明确计算指标最优的方式
2.1 明确参数初始值
无论是线性回归模型,还是逻辑回归模型,未知参数均为W。
要为 W 设置一个初始值,例如
 W =  
     
      
       
       
         [ 
        
        
         
          
           
            
            
              w 
             
            
              0 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              1 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              2 
             
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
            
            
              w 
             
            
              n 
             
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}w_0\\ w_1\\w_2\\...\\w_n\end{bmatrix} 
       
      
     
             w0w1w2...wn 
              =  
     
      
       
       
         [ 
        
        
         
          
           
           
             0 
            
           
          
         
         
          
           
           
             0 
            
           
          
         
         
          
           
           
             0 
            
           
          
         
         
          
           
            
            
              . 
             
            
              . 
             
            
              . 
             
            
           
          
         
         
          
           
           
             0 
            
           
          
         
        
       
         ] 
        
       
      
        \begin{bmatrix}0\\ 0\\0\\...\\0\end{bmatrix} 
       
      
     
             000...0 
             
当然,也可以设置为别的值。
2.2 明确衡量模型状态的指标
学习模型的目标,是要训练出当前模型下的最优状态。
 我们需要思考两个核心问题:
- 什么是模型的最优状态?
- 用什么指标衡量模型状态?
- 如何来达到最优状态?
先来解决第一个问题:什么是模型的最优状态?
模型状态如何,是通过判断【当前模型计算结果】与【实际结果】拟合程度,拟合程度可通过损失函数来计算。
在训练模型时,主要是通过【实际结果( y i y_i yi)】对比【根据模型计算出的结果( y i ˉ \bar{y_i} yiˉ)】,来判断模型的计算结果,是否符合实际结果。
[ ( y 0 ) ( y 1 ) ( y 2 ) . . . ( y n ) ] \begin{bmatrix}(y_0)\\(y_1)\\(y_2)\\...\\(y_n)\end{bmatrix} (y0)(y1)(y2)...(yn)  对比 [ y 0 ˉ y 1 ˉ y 2 ˉ . . . y n ˉ ] \begin{bmatrix}\bar{y_0}\\ \bar{y_1}\\\bar{y_2}\\...\\\bar{y_n}\end{bmatrix} y0ˉy1ˉy2ˉ...ynˉ 
如果每一个计算结果,都等于(或近似等于)实际结果,这个模型状态无疑是最优的!(先不管过拟合问题)
 
     
      
       
        
        
          y 
         
        
          0 
         
        
       
         = 
        
        
         
         
           y 
          
         
           0 
          
         
        
          ˉ 
         
        
       
      
        y_0=\bar{y_0} 
       
      
    y0=y0ˉ
  
     
      
       
        
        
          y 
         
        
          1 
         
        
       
         = 
        
        
         
         
           y 
          
         
           1 
          
         
        
          ˉ 
         
        
       
      
        y_1=\bar{y_1} 
       
      
    y1=y1ˉ
 …
  
     
      
       
        
        
          y 
         
        
          n 
         
        
       
         = 
        
        
         
         
           y 
          
         
           n 
          
         
        
          ˉ 
         
        
       
      
        y_n=\bar{y_n} 
       
      
    yn=ynˉ
可惜,天不如人意…能尽可能让大部分(相等或相似)拟合就好。
再来解决第二个问题:用什么指标衡量模型的状态?
最常用的两个指标:①差值平方和 ②似然值
这两个指标,分别对应了两种求解模型最优状态指标的方法:差值平方和-最小二乘法、似然值-极大似然估计法
2.2.1 差值平方和:最小二乘法
指标① - 差值平方和:通常指两组数据一一对应的差值平方和。
Loss = ∑ ( y ˉ i 计算 − y i 实际 ) 2 ∑(\bar{y}_{i计算}-y_{i实际})² ∑(yˉi计算−yi实际)2
当 Loss 值最小,则表示模型计算结果,与实际结果差异最小——模型最优!
这种以差值平方和最小为模型最优状态的方法,通常叫“最小二乘法”。
Loss函数,则表示模型计算结果与实际结果的误差,通常称为损失函数。
平方损失函数值Loss越小,表示模型计算结果与实际结果误差越小,模型越优。
当 Loss 达到最小值时,说明模型达到最优状态,这时可以明确最优模型的参数  
     
      
       
        
        
          W 
         
        
          优 
         
        
       
      
        W_优 
       
      
    W优 了。
 则,模型变为 y =  
     
      
       
        
        
          W 
         
        
          优 
         
        
          T 
         
        
       
         X 
        
       
      
        W^T_{优}X 
       
      
    W优TX
最小二乘法:适用于预测问题,即适用于求解线性回归模型的最优状态。
2.2.2 似然值:极大似然估计法
——极大似然估计法即交叉熵法,解释角度不同,但公式相同
似然值: Y 实际 Y_{实际} Y实际在当前模型下发生的可能性大小,叫做似然值。
当似然值越大,表示 Y 实际 Y_{实际} Y实际在该模型下,发生的概率值较大,即当前模型与实际模型更接近。
极大似然估计法,就是在挑出似然值越大的那个模型。
Loss =  ∑ y i ˉ . l n y i + ( 1 − y i ˉ ) . l n y i \sum_{}^{}{}\bar{y_{i}}.lny_{i}+(1-\bar{y_{i}}).lny_{i} ∑yiˉ.lnyi+(1−yiˉ).lnyi
似然值(或称交叉熵)越大,模型越优。
极大似然估计法:适用于预测、分类问题,即适用于求解线性回归模型、逻辑回归模型的最优状态。
2.2.3 差值平方和与似然值的总结对比
差值平方和越小,模型越优——最小二乘法:适用于预测
似然值越大,模型越优——极大似然估计法:适用于预测、分类
最后来解决第一个问题:如何达到模型的最优状态?
- 如果是最小二乘法,差值平方和最小,则模型最优
- 如果是极大似然估计法,似然值最大,则模型最优
那么如何使最小二乘法的差值平方和最小,如何使极大似然估计法的似然值达到最大呢?
2.3 明确计算指标最优的方式
模型与实际模型的拟合程度指标,可通过损失函数Loss计算可得。
 最小二乘法:SST =  
      
       
        
        
          ∑ 
         
        
          ( 
         
         
          
          
            y 
           
          
            ˉ 
           
          
          
          
            i 
           
          
            计算 
           
          
         
        
          − 
         
         
         
           y 
          
          
          
            i 
           
          
            实际 
           
          
         
         
         
           ) 
          
         
           2 
          
         
        
       
         ∑(\bar{y}_{i计算}-y_{i实际})² 
        
       
     ∑(yˉi计算−yi实际)2,求出Loss最小值(即差值平方和Sum of squares for total最小)
 极大似然估计法:L =  
      
       
        
         
         
           ∑ 
          
          
          
         
         
         
          
          
            y 
           
          
            i 
           
          
         
           ˉ 
          
         
        
          . 
         
        
          l 
         
        
          n 
         
         
         
           y 
          
         
           i 
          
         
        
          + 
         
        
          ( 
         
        
          1 
         
        
          − 
         
         
          
          
            y 
           
          
            i 
           
          
         
           ˉ 
          
         
        
          ) 
         
        
          . 
         
        
          l 
         
        
          n 
         
         
         
           y 
          
         
           i 
          
         
        
       
         \sum_{}^{}{}\bar{y_{i}}.lny_{i}+(1-\bar{y_{i}}).lny_{i} 
        
       
     ∑yiˉ.lnyi+(1−yiˉ).lnyi,求出L最大值(即似然值Likelyhood最大)
这两个函数,都可以统一为损失函数 Loss。
最小二乘法的损失函数:Loss =  
     
      
       
       
         ∑ 
        
       
         ( 
        
        
         
         
           y 
          
         
           ˉ 
          
         
         
         
           i 
          
         
           计算 
          
         
        
       
         − 
        
        
        
          y 
         
         
         
           i 
          
         
           实际 
          
         
        
        
        
          ) 
         
        
          2 
         
        
       
      
        ∑(\bar{y}_{i计算}-y_{i实际})² 
       
      
    ∑(yˉi计算−yi实际)2
 极大似然估计法的损失函数:Loss = -  
     
      
       
        
        
          ∑ 
         
         
         
        
        
       
         [ 
        
        
         
         
           y 
          
         
           i 
          
         
        
          ˉ 
         
        
       
         . 
        
       
         l 
        
       
         n 
        
        
        
          y 
         
        
          i 
         
        
       
         + 
        
       
         ( 
        
       
         1 
        
       
         − 
        
        
         
         
           y 
          
         
           i 
          
         
        
          ˉ 
         
        
       
         ) 
        
       
         . 
        
       
         l 
        
       
         n 
        
        
        
          y 
         
        
          i 
         
        
       
         ] 
        
       
      
        \sum_{}^{}{}[ \bar{y_{i}}.lny_{i}+(1-\bar{y_{i}}).lny_{i} ] 
       
      
    ∑[yiˉ.lnyi+(1−yiˉ).lnyi]【注:在原L函数前加负号】
这样,无论是最小二乘法,还是极大似然估计法,都只要求出它们的损失函数 Loss 的极小值即可。
而损失函数求极值,通常有以下两种方法:
- 通过求导,求出解析解,得到精确模型——数学计算求极值
- 通过迭代,求出近似解,逼近较优模型——梯度下降法、牛顿法…
2.3.1 求导:解析解
Loss 函数对参数W求导,并使导数 L o s s ′ Loss^{'} Loss′为0,计算出精确的参数 W,使得Loss得到最大值或最小值。
2.3.1.1 最小二乘法-求导解析解
最小二乘法的Loss函数,本质上就是个二元方程,求解二元方程的最小值,直接求导即可。
 Loss =  
      
       
        
        
          ∑ 
         
        
          ( 
         
         
          
          
            y 
           
          
            ˉ 
           
          
          
          
            i 
           
          
            计算 
           
          
         
        
          − 
         
         
         
           y 
          
          
          
            i 
           
          
            实际 
           
          
         
         
         
           ) 
          
         
           2 
          
         
        
       
         ∑(\bar{y}_{i计算}-y_{i实际})² 
        
       
     ∑(yˉi计算−yi实际)2
求导数 L o s s ′ = d L o s s ( W ) d ( W ) = 0 时,求解出的 W 值为模型最优状态下的参数,此时的 S S T 达到最小值。 Loss^{'}=\frac{dLoss(W)}{d(W)}=0时,求解出的 W值为模型最优状态下的参数,此时的SST达到最小值。 Loss′=d(W)dLoss(W)=0时,求解出的W值为模型最优状态下的参数,此时的SST达到最小值。
- 对 W 求导,实际是对每一个w0,w1,w2…求偏导 ∂ L o s s ( w 0 ) ∂ ( w 0 ) = ∂ L o s s ( w 1 ) ∂ ( w 1 ) = ∂ L o s s ( w i ) ∂ ( w i ) = 0 \frac{∂Loss(w0)}{∂(w0)}=\frac{∂Loss(w1)}{∂(w1)}=\frac{∂Loss(wi)}{∂(wi)}=0 ∂(w0)∂Loss(w0)=∂(w1)∂Loss(w1)=∂(wi)∂Loss(wi)=0
- 最终求得每一个 
      
       
        
         
         
           w 
          
         
           i 
          
         
        
       
         w_i 
        
       
     wi,构成最终的 
      
       
        
         
         
           W 
          
         
           优 
          
         
        
       
         W_优 
        
       
     W优
  
 但使用解析法求出线性回归的平方损失函数极小值的前提是,是满秩矩阵。
2.3.1.1 极大似然估计法-求导解析解
极大似然估计法,本质上就是个对数方程,求解它的最大值,直接求导即可。
 Loss =  
      
       
        
         
         
           ∑ 
          
          
          
         
         
         
          
          
            y 
           
          
            i 
           
          
         
           ˉ 
          
         
        
          . 
         
        
          l 
         
        
          n 
         
         
         
           y 
          
         
           i 
          
         
        
          + 
         
        
          ( 
         
        
          1 
         
        
          − 
         
         
          
          
            y 
           
          
            i 
           
          
         
           ˉ 
          
         
        
          ) 
         
        
          . 
         
        
          l 
         
        
          n 
         
         
         
           y 
          
         
           i 
          
         
        
       
         \sum_{}^{}{}\bar{y_{i}}.lny_{i}+(1-\bar{y_{i}}).lny_{i} 
        
       
     ∑yiˉ.lnyi+(1−yiˉ).lnyi
求导数 L ′ = d L o s s ( W ) d ( W ) = 0 时,求解出的 W 值为模型最优状态下的参数,此时的 L 达到最大值。 L^{'}=\frac{dLoss(W)}{d(W)}=0时,求解出的 W值为模型最优状态下的参数,此时的L达到最大值。 L′=d(W)dLoss(W)=0时,求解出的W值为模型最优状态下的参数,此时的L达到最大值。
- 对 W 求导,实际是对每一个w0,w1,w2…求偏导 ∂ L o s s ( w 0 ) ∂ ( w 0 ) = ∂ L o s s ( w 1 ) ∂ ( w 1 ) = ∂ L o s s ( w i ) ∂ ( w i ) = 0 \frac{∂Loss(w0)}{∂(w0)}=\frac{∂Loss(w1)}{∂(w1)}=\frac{∂Loss(wi)}{∂(wi)}=0 ∂(w0)∂Loss(w0)=∂(w1)∂Loss(w1)=∂(wi)∂Loss(wi)=0
- 最终求得每一个 w i w_i wi,构成最终的 W 优 W_优 W优
但使用解析法求出损失函数极小值的前提是,W是满秩矩阵
(数据集内容不同,结果可能满秩,也可能不满秩,因此最小二乘法在数据量过大数据内容不确定情况,有可能无法使用最小二乘法,可采用L2正则化进行优化【此知识点难度较大,待更新】,或是数量级差距过大,最小二乘法得出的结果偏差过大)
解析法难以应对大批量的数据集计算,因此实际常用求近似解,逼近较优模型的方式。
2.3.2 迭代:近似解
通过迭代参数W,求解每次迭代后的Loss值,当Loss达到最小值时停止迭代,即可得到模型最优状态下的参数 W 优 W_优 W优。
在之前,已经设置了模型的初始参数  
     
      
       
        
        
          W 
         
        
          0 
         
        
       
         = 
        
       
         0 
        
       
      
        W_0= 0 
       
      
    W0=0 ,并根据初始参数计算出初始的Loss值,即 
     
      
       
       
         L 
        
       
         o 
        
       
         s 
        
        
        
          s 
         
        
          0 
         
        
       
         = 
        
        
        
          W 
         
        
          0 
         
        
          T 
         
        
       
         ∗ 
        
       
         X 
        
       
      
        Loss_0=W_0^T*X 
       
      
    Loss0=W0T∗X
 
的方式有梯度下降法、牛顿法等
2.3.2.1 梯度下降法
每次迭代的步长 Δ ,为学习率*导数:
  
     
      
       
       
         Δ 
        
       
         = 
        
       
         η 
        
       
         ∗ 
        
        
         
         
           d 
          
         
           ( 
          
         
           L 
          
         
           o 
          
         
           s 
          
          
          
            s 
           
          
            k 
           
          
         
           ) 
          
         
         
         
           d 
          
         
           w 
          
         
        
       
      
        Δ = η*\frac{d(Loss_k)}{dw} 
       
      
    Δ=η∗dwd(Lossk)
  
     
      
       
        
        
          w 
         
         
         
           k 
          
         
           + 
          
         
           1 
          
         
        
       
         = 
        
       
          
        
        
        
          w 
         
        
          k 
         
        
       
         − 
        
       
         Δ 
        
       
         👉 
        
        
        
          w 
         
         
         
           k 
          
         
           + 
          
         
           1 
          
         
        
       
         = 
        
       
          
        
        
        
          w 
         
        
          k 
         
        
       
         − 
        
       
         η 
        
       
         ∗ 
        
        
         
         
           d 
          
         
           ( 
          
         
           L 
          
         
           o 
          
         
           s 
          
          
          
            s 
           
          
            k 
           
          
         
           ) 
          
         
         
         
           d 
          
         
           w 
          
         
        
       
      
        w_{k+1} = w_k-Δ 👉w_{k+1} = w_k-η*\frac{d(Loss_k)}{dw} 
       
      
    wk+1=wk−Δ👉wk+1=wk−η∗dwd(Lossk)
 
 1)当前 
     
      
       
        
        
          w 
         
        
          k 
         
        
       
      
        w_k 
       
      
    wk下的导数越大,则下次迭代的步长越大。
 2)当前 
     
      
       
        
        
          w 
         
        
          k 
         
        
       
      
        w_k 
       
      
    wk下的导数越小,则下次迭代的步长越小。
- 这样的迭代方式,可根据函数倾斜程度,自动调整步长。

2.3.2.2 牛顿法
下次迭代的 
     
      
       
        
        
          w 
         
         
         
           k 
          
         
           + 
          
         
           1 
          
         
        
       
      
        w_{k+1} 
       
      
    wk+1,为 
     
      
       
        
        
          w 
         
        
          k 
         
        
       
      
        w_k 
       
      
    wk处切线方程 ax+b = 0 时的根$,步长Δ计算如下图
 
 最终得出迭代方程  
     
      
       
        
        
          w 
         
         
         
           k 
          
         
           + 
          
         
           1 
          
         
        
       
         = 
        
       
          
        
        
        
          w 
         
        
          k 
         
        
       
         − 
        
       
         Δ 
        
       
         👉 
        
        
        
          w 
         
         
         
           k 
          
         
           + 
          
         
           1 
          
         
        
       
         = 
        
       
          
        
        
        
          w 
         
        
          k 
         
        
       
         − 
        
        
         
         
           L 
          
         
           o 
          
         
           s 
          
          
          
            s 
           
          
            k 
           
          
         
         
          
          
            d 
           
          
            ( 
           
          
            L 
           
          
            o 
           
          
            s 
           
           
           
             s 
            
           
             k 
            
           
          
            ) 
           
          
          
          
            d 
           
          
            w 
           
          
         
        
       
      
        w_{k+1} = w_k-Δ 👉w_{k+1} = w_k-\frac{Loss_k}{\frac{d(Loss_k)}{dw}} 
       
      
    wk+1=wk−Δ👉wk+1=wk−dwd(Lossk)Lossk
使用梯度下降法,求解损失函数的值,多次迭代计算出损失函数的值。
停止迭代的方式有两种:
①设置损失函数的阈值,当损失函数小于某阈值,即停止迭代
②设置迭代的次数,当迭代次数超过时,即停止迭代(迭代会收敛,迭代次数越多,则越逼近极值)
多次迭代过程中,不断更新模型参数,使模型在迭代过程中逐渐变优。
迭代法:通过不断地更新模型参数W,求出近似最优的模型。
迭代法的核心是,每次如何更新参数 W?
多层神经网络的浅显认识
 上述是对单层神经网络的模型进行迭代,更新模型参数。
但当涉及多层神经网络时,中间含有较多隐含层,要如何更新各层模型的参数呢?
若是要训练多层神经网络,可考虑误差反向传播法:
计算当前模型的预测值与实际值的误差,根据误差值反向计算各层的参数加粗样式









