乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      從零開始學(xué)人工智能(19)--數(shù)學(xué) · 神經(jīng)網(wǎng)絡(luò)(三)· 損失函數(shù)

       長沙7喜 2018-01-30

       



      關(guān)于損失函數(shù)寬泛而準(zhǔn)確的數(shù)學(xué)定義,我感覺我不會說得比 Wiki 更好,所以這一章主要還是介紹一些神經(jīng)網(wǎng)絡(luò)中常用的損失函數(shù)。然而即使把范圍限制在 NN,如何選、為何選相應(yīng)的損失函數(shù)仍然是一個不平凡的數(shù)學(xué)問題。囿于時間(和實力)、這一章講的主要是幾個損失函數(shù)的定義、直觀感受和求導(dǎo)方法。

      從名字上可以看出,損失函數(shù)是模型對數(shù)據(jù)擬合程度的反映,擬合得越差、損失函數(shù)的值就應(yīng)該越大。同時我們還期望,損失函數(shù)在比較大時、它對應(yīng)的梯度也要比較大,這樣的話更新變量就可以更新得快一點。我們都接觸過的“距離”這一概念也可以被用在損失函數(shù)這里,對應(yīng)的就是最小平方誤差準(zhǔn)則(MSE):

      其中G是我們的模型、它根據(jù)輸入矩陣X輸出一個預(yù)測向量G(X)

      這個損失函數(shù)的直觀意義相當(dāng)明確:預(yù)測值G(X)和真值Y的歐式距離越大、損失就越大,反之就越小。它的求導(dǎo)也是相當(dāng)平凡的:

      其中 w 是模型G中的一個待訓(xùn)練的參數(shù)

      由于 MSE 比較簡單、所以我們能夠從一般意義上來討論它。為便于理解,以下的部分會結(jié)合 NN 這個特定的模型來進(jìn)行闡述?;仡?BP 算法章節(jié)中的式子:


      這里的其實就是G(X)。在 NN 中,我們通過最后一層的 CostLayer 利用和真值Y得出一個損失、然后 NN 通過最小化這個損失來訓(xùn)練模型

      注意到上式的最后除了損失函數(shù)自身的導(dǎo)數(shù)以外、還有一項激活函數(shù)(https://en./wiki/Activation_function)的導(dǎo)數(shù)。事實上,結(jié)合激活函數(shù)來選擇損失函數(shù)是一個常見的做法,用得比較多的組合有以下四個:

      • Sigmoid 系以外的激活函數(shù) + MSE

        • MSE 是個萬金油,它不會出太大問題、同時也基本不能很好地解決問題。這里特地指出不能使用 Sigmoid 系激活函數(shù),是因為 Sigmoid 系激活函數(shù)在圖像兩端都非常平緩、從而會引起梯度消失的現(xiàn)象。MSE 這個損失函數(shù)無法處理這種梯度消失、所以一般來說不會用 Sigmoid 系激活函數(shù) + MSE 這個組合。以 Sigmoid 函數(shù)為例:


          上面這張圖對應(yīng)的情況是輸入為v、預(yù)測為但真值為 0。可以看到,即使此時預(yù)測值和真值之間的誤差幾乎達(dá)到了極大值,但由于太小、最終得到的梯度也會很小、導(dǎo)致收斂速度很慢


      • Sigmoid + Cross Entropy

        • Sigmoid 激活函數(shù)之所以有梯度消失的現(xiàn)象是因為它的導(dǎo)函數(shù)形式為

          。想要解決這個問題的話,比較自然的想法是定義一個損失函數(shù)、使得它的分母上有這一項。經(jīng)過數(shù)學(xué)家們的工作,我們得到了 Cross Entropy 這個(可能是基于熵理論導(dǎo)出來的)損失函數(shù),其形式為:

        • 它的合理性較直觀:當(dāng)y=0時、起作用的只有,此時越接近0、C就越??;y=1的情況幾乎同理。下面給出其導(dǎo)數(shù)形式:

        可見其確實滿足要求

        • 交叉熵背后是有一套數(shù)學(xué)理論的,感興趣的觀眾老爺們可以戳這里(https://en./wiki/Cross_entropy)

      • Softmax + Cross Entropy / log-likelihood

        • 這兩個組合的核心都在于前面用了一個 Softmax。Softmax 不是一個損失函數(shù)而是一個變換,它具有相當(dāng)好的直觀:能把普通的輸出歸一化成一個概率輸出。比如若輸出是 (1, 1, 1, 1),經(jīng)過 Softmax 之后就是 (0.25, 0.25, 0.25, 0.25)。它的定義式也比較簡潔:

          注意,這里的通常是一個線性映射:

          亦即 Softmax 通常是作為一個 Layer 而不是一個 SubLayer
          之所以要進(jìn)行這一步變換,其實和它后面跟的損失函數(shù)也有關(guān)系。Cross Entropy 和 log-likelihood 這兩個損失函數(shù)都是用概率來定義損失的、所以把輸出概率化是一個自然的想法。Cross Entropy 上面已有介紹,log-likelihood 的定義則是:

          亦即預(yù)測概率輸出中yi對應(yīng)的類概率的負(fù)對數(shù)。當(dāng)預(yù)測概率輸出中yi類概率為的1話、損失就是0;當(dāng)概率趨于0時、損失會趨于無窮

        • Cross Entropy 的求導(dǎo)上面也說了,下面就給出 Softmax + log-likelihood 的求導(dǎo)公式:

          其中


          從而


      以上、大概講了一些損失函數(shù)相關(guān)的基本知識。下一章的話會講如何根據(jù)梯度來更新我們的變量、亦即會講如何定義各種 Optimizers 以及會講背后的思想是什么??梢韵胂髸且粋€相當(dāng)大的坑……

      希望觀眾老爺們能夠喜歡~



        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多