貝葉斯眼裡的正則化
前面講道似然函數 是從投擲骰子來的,所以:
其中得到正面a次,反面b次。
其實,似然函數 不僅僅局限於此,投骰子符合伯努利分布,所以似然函數的形式長上面那個樣子。其他模型一樣有似然函數,只要模型的輸出是一個基於數據的概率,都可以被看做似然函數。如線性回歸,邏輯斯特回歸,全連接神經網路DNN,卷積神經網路CNN, 循環神經網路RNN, 長短記憶神經網路LSTM的輸出經過sotfmax之後被轉化為概率,全部都可以被看做是似然函數 ,只不過權重 ,偏差 全部都包含到 里去了, 可以理解為在這樣一組參數 下,基於觀測到數據所得到的概率。
那麼從這個視角,再來看什麼是最大似然估計(Maximum Likelihood Estimation),簡稱MLE。那麼MLE對 的估計方法可以寫成如下形式:
兩邊同時取 :
再同時取負,最大化問題轉化為最小化問題:
這就是Negative Log Likelihood (NLL)函數,是不是似曾相識,深度學習做分類任務時所用的cross entropy loss,其本質就是最大似然估計MLE!
那貝葉斯眼裡的最大後驗證估計(Maximum A Posterior,簡稱MAP)是什麼呢?那麼最大後驗證估計對 的估計方法如下:
兩邊同時取 ,取負,再用貝葉斯公式展開:
是個固定的常數可以省略掉,所以:
上面式子里 就是上面用MLE得到的Negative Log Likelihood,所以最大似然估計和最大後驗估計的區別就在於先驗 。
那先驗 到底是什麼呢?字面上看是參數 的概率分布,可以理解為你覺得參數應該怎麼分布。我們先來假設參數符合高斯分布:
把上式帶入到 :
然後你會驚奇的發現用了高斯分布作先驗的MAP等價於在MLE中加上L2的正則項!
此時我們便引入了一個新的角度來看正則項,即你覺得這個模型的參數分布應該是什麼樣子的。下面就是實際訓練出來模型的參數分布,是不是看起來真的很高斯!加了正則項之後,其實就是給參數加了一個「緊箍咒」,告訴他說,我覺得參數分布應該是高斯分布的,你不要跑的太遠哦~
那麼還有沒有其他先驗呢?有啊,例如拉普拉斯分布。拉普拉斯分布就是下面的藍線。其具體公式為:
把上式帶入到 :
咦?這不就是L1正則化嗎?所以對參數引入拉普拉斯先驗等價於L1正則化。
你看拉普拉斯先驗在0的位置具有最高的概率密度,這就說明很多參數會變成0,這就是為什麼L1正則化會具有能產生稀疏性的優良性質。
總結一下,交叉熵損失函數(cross entropy loss),其本質就是最大似然估計MLE,而正則化等價於MLE加上先驗分布。所以,從貝葉斯角度來看,損失函數+正則化就是貝葉斯最大後驗估計MAP。
我有點討厭知乎了,我上傳的高清無碼圖片,全被它轉換成AV畫質!氣!
推薦閱讀:
※如何評價賈尼?
※曾經的《星際爭霸》世界頂級高手,如今正領導人工智慧征服人類玩家
※機器學習/人工智慧能否在生物製藥/生命科學界大展身手?
※意識:思想干擾大腦——計算機也要預防抑鬱症?
※深度煉丹:用 GAN 生成 CG 圖片,可以直接在瀏覽器運行的深度卷積網路生成模型