學習RNN中產生的幾個概念性疑問和解答

  1. 通常使用的損失函數——似然函數,爲什麼要加負對數取做負對數似然函數?
    (我以前一直說使用的是交叉熵,現在想想其實並不準確,從參數估計的角度來看,怎麼也是似然函數對吧?)

    原因主要兩點:

    1. 如果假設條件是獨立同分布,那麼似然函數往往是連乘的形式,這樣子求偏導數,不容易;通過取對數的形式將連乘變爲求和。
    2. 概率值是小數,多個連乘的情況下,容易造成下溢

    參考鏈接

  2. 負對數似然函數與交叉熵的關聯是什麼?
    似然用來描述已知隨機變量輸出結果時,未知參數可能取值的概率。
    在損失函數這個背景下,似然函數的擴展意義:衡量當前模型參數對於已知樣本集的解釋情況。如果從多分類的角度來說,也就是,在已知樣本最終類別label的情況下,計算以你的預測值predict爲參數的觀測值的似然度。

    那如果是如上述黑體所說,你這個觀測的模型是什麼呢?
    顯然就是個簡單的多項分佈。(注意這是有模型的)

    那什麼是多項分佈?,閱讀參考鏈接1或者2,從伯努利分佈(兩點分佈)擴展到二項分佈擴展到多項分佈(從扔硬幣到扔骰子)。

    單次觀測下的多項分佈:

    其中,C代表類別數。p代表向量形式的模型參數,即各個類別的發生概率,如p=[0.1, 0.1, 0.7, 0.1],則p1=0.1, p3=0.7等。即,多項式分佈的模型參數就是各個類別的發生概率!x代表one-hot形式的觀測值,如x=類別3,則x=[0, 0, 1, 0]。xi代表x的第i個元素,比如x=類別3時,x1=0,x2=0,x3=1,x4=0。再取個對數加負號就和我們上述所說的負對數似然相同了。
    在這裏插入圖片描述

    如果加上log的話變成:

    這個形式和交叉熵實際上是相同的。
    交叉熵是這樣說的:
    對於某種分佈的隨機變量X~p(x), 有一個模型q(x)用於近似p(x)的概率分佈,則分佈X與模型q之間的交叉熵即:

    這裏X的分佈模型即樣本集label的真實分佈模型,這裏模型q(x)即想要模擬真實分佈模型的機器學習模型。可以說交叉熵是直接衡量兩個分佈,或者說兩個model之間的差異。而似然函數則是解釋以model的輸出爲參數的某分佈模型對樣本集的解釋程度。因此,可以說這兩者是“同貌不同源”,但是“殊途同歸”啦。
    參考鏈接1 參考鏈接2

  3. 似然函數和概率函數是一個東西嗎?
    從某個角度來說是一個東西,一個函數從兩個角度去看。
    在這裏插入圖片描述
    參考鏈接

  4. 爲什麼RNN不能並行計算但是CNN可以?
    To be Solved.

  5. Bptt算法和普通的back propagation有什麼不同?
    To be Solved.

部分轉載自【夕小瑤的賣萌屋】,聽說每一個想學機器學習的人到這裏都停不下來了~

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