深度強化學習篇3:神經網絡分類

       迴歸與分類是研究變量關係的兩種統計學數學模型。是監督學習研究的兩個問題。

       分類問題的一種實現方式是線性迴歸,對所有預測結果以某個值爲分界。然而,這種方法不夠好,因爲分類問題不能用線性方程表示。但分類問題依然是迴歸問題,預測的結果限定在少數離散的結果集中。

一、邏輯迴歸與二分類

1、邏輯迴歸做二分類

線性迴歸Y=aX+b,y的取值範圍是[-∞, +∞],有這麼多取值,怎麼進行分類呢?

選擇把Y的結果帶入一個非線性變換的Sigmoid函數中,即可得到[0,1]取值範圍的概率S,假設設置概率閾值爲0.5,那麼S大於0.5可以看成是正樣本,小於0.5看成是負樣本,就可以進行分類了。

把 t= aX+b帶入Sigmoid函數,得到邏輯迴歸的一般模型方程:                     

 

邏輯迴歸的損失函數是 Log loss,按照梯度下降法,求解極小值點,得到想要的模型效果。

2、邏輯迴歸的優點:概率形式輸出結果,可解釋性強,訓練快。

3、邏輯迴歸的應用:垃圾郵件的分類,天氣的預測,疾病的判斷,購物搭配,app排序基線。

4、常用優化方法:梯度下降、隨機梯度下降、mini 隨機梯度下降降法。隨機梯度下降不但速度上比原始梯度下降要快,局部最優化問題時可以一定程度上抑制局部最優解的發生。 

二、多分類

二分類問題常用邏輯迴歸、SVM等方法解決。對於多分類問題,比如識別手寫數字,它就需要10個分類,同樣也可以用邏輯迴歸或SVM,只是需要多個二分類來組成多分類。做過多分類任務的同學一定都知道softmax函數。softmax函數,又稱歸一化指數函數。它是二分類函數sigmoid在多分類上的推廣,目的是將多分類的結果以概率的形式展現出來。

1、Softmax分類器

       Softmax迴歸模型是logistic迴歸模型在多分類問題上的推廣,當分類數爲2的時候會退化爲Logistic分類。Softmax迴歸模型對於諸如MNIST手寫數字分類等問題是很有用的,該問題的目的是辨識10個不同的單個數字。

       例:一個神經網絡中包含了輸入層,然後通過兩個特徵層處理,最後通過softmax分析器就能得到不同條件下的概率,這裏需要分成三個類別,最終會得到y=0、y=1、y=2的概率值。

詳細:https://www.cnblogs.com/wangyarui/p/8670769.html   SoftMax多分類器原理及代碼理解

詳細:https://blog.csdn.net/lz_peter/article/details/84574716    一分鐘理解softmax函數(超簡單)

三、迴歸

1、採用哪種迴歸模型?

即根據問題的因變量和函數關係建模。

問題輸出(因變量)是否離散?分類、迴歸。問題(函數關係)是否非線性? 線性迴歸,曲線迴歸(多項式迴歸)

2、求解迴歸問題的步驟

(1)建立迴歸模型 

(2)選擇代價函數(常用預測值與標籤值的平方誤差函數)

(3)求取代價函數取最小值時的參數(常用方法最小二乘法和梯度下降法)

3、一元線性迴歸求解

(1)f(x)=wx+b

(2)minS=\frac{1}{2n} \sum_{i=1}^{n} (f(x_{i})-y_{i})^{2}\frac{1}{n}是歸一化係數)

(3)w'=w-a\frac{\vartheta S(w,b)}{\vartheta w}    b'=b-a\frac{\vartheta S(w,b)}{\vartheta b}

幾何意義:小碎步下山,步長是學習率,方向是梯度方向。

多元迴歸,更換導數項(w,b的下標)即可

參考文獻:https://blog.csdn.net/bravery_again/article/details/81076621 線性迴歸和梯度下降

3、多項式迴歸解法

根據數據的特點先進行某些變換(如對數變換、平方根變換等),如果變換後得到線性模型,則進行線性迴歸; 如果變換後仍得不到線性模型,則可以用曲線擬合的方法對原始數據進行擬合,確定曲線迴歸方程。

四、優化方法

1、損失函數與梯度下降

損失函數:用於表達算法效果,往往通過求解損失函數來優化算法。常採用誤差平方函數來表達模型誤差。

梯度:函數變化率最快的方向。負梯度是函數減小最快的方向。

梯度下降:一種凸優化方法,目的是找到令損失函數最小的參數。如式(三),通過計算得到梯度,並使用梯度去更新權重參數的過程叫梯度下降。

參考文獻:https://blog.csdn.net/wearge/article/details/77073142  (吳恩達筆記 1-3)——損失函數及梯度下降

2、誤差反向傳播

數學本質:函數鏈式求導

目的:神經網絡參數優化

公式推導:https://blog.csdn.net/qq_43045873/article/details/93149827  誤差反向傳播

根據梯度下降的思想

針對神經網絡:神經網絡的梯度下降法也就是反向傳播,根據誤差信號修正每層的權重、偏置。

參考文獻:https://blog.csdn.net/AMDS123/article/details/78055094  反向傳播算法(過程及公式推導)

(1)DQN的神經網絡就像一個分類器,預測Q值。更新網絡時,這個預測值與目標值計算損失函數,反向傳播。預測值跟監督學習類似,目標值相當於監督學習標籤值。

(2)PG也進行梯度下降反向傳播,但傳遞的不是誤差,而是關於策略和獎勵的函數。但都是梯度反向傳遞。

參考文獻:https://www.jianshu.com/p/2ccbab48414b  深度強化學習-Policy Gradient基本實現

參考文獻:https://blog.csdn.net/AMDS123/article/details/75094560  深度強化學習-Policy Gradient基本實現

參考文獻:https://blog.csdn.net/zuzhiang/article/details/103180919  強化學習(5):策略梯度(Policy Gradient, PG)算法

3、問題:在(DQN,PG,監督學習等)方法中,目標函數、反向傳播和獎勵函數(標籤)是什麼關係。

五、其他

參考資料:https://www.cnblogs.com/mantch/p/11298290.html  激活函數、正向傳播、反向傳播及softmax分類器,一篇就夠了!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章