當前位置:
首頁 > 新聞 > 神經網路和數學之間的聯繫在哪裡?看完你就明白

神經網路和數學之間的聯繫在哪裡?看完你就明白

雷鋒網按:本文原作者憶臻,本文原載於作者的知乎專欄——機器學習演算法與自然語言處理。雷鋒網已獲得作者授權。

在我們了解過神經網路的人中,都了解神經網路一個有很常見的訓練方法,BP 訓練演算法。通過 BP 演算法,我們可以不斷的訓練網路,最終使得網路可以無限的逼近一種我們想要擬合的函數,最終訓練好的網路它既能在訓練集上表現好,也能在測試集上表現不錯!

那麼 BP 演算法具體是什麼呢?為什麼通過 BP 演算法,我們就可以一步一步的走向最優值(即使有可能是局部最優,不是全局最優,我們也可以通過其它的方法也達到全局最優),有沒有一些什麼數學原理在裡面支撐呢?這幾天梳理了一下這方面的知識點,寫下來,一是為了記錄,二也可以分享給大家,防止理解錯誤,一起學習交流。

BP 演算法具體是什麼,可以參考我這篇文章知乎專欄,那麼下面解決這個問題,為什麼通過 BP 演算法,就可以一步一步的走向更好的結果。首先我們從神經網路的運行原理來看,假如現在有下面這個簡單的網路,如圖:

神經網路和數學之間的聯繫在哪裡?看完你就明白

我們定義符號說明如下:

神經網路和數學之間的聯繫在哪裡?看完你就明白

則我們正向傳播一次可以得到下面公式:

神經網路和數學之間的聯繫在哪裡?看完你就明白

神經網路和數學之間的聯繫在哪裡?看完你就明白

神經網路和數學之間的聯繫在哪裡?看完你就明白

如果損失函數 C 定義為

那麼我們希望訓練出來的網路預測出來的值和真實的值越接近越好。我們先暫時不管 SGD 這種方法,最暴力的我們希望對於一個訓練數據,C 能達到最小,而在 C 表達式中,我們可以把 C 表達式看做是所有 w 參數的函數,也就是求這個多元函數的最值問題。那麼成功的將一個神經網路的問題引入到數學中最優化的路上了。

---------------------------分割線---------------------------

好,我們現在順利的將一個神經網路要解決的事情轉變為一個多元函數的最優化上面來了。現在的問題是怎麼修改 w,來使得 C 越來越往最小值靠近呢。常見的方法我們可以採取梯度下降法(為什麼梯度下降法中梯度的反方向是最快的方向,可以參考我下篇文章,不是這篇文章主旨)。可能到這還有點抽象,下面舉一個特別簡單的例子。

假如我們的網路非常簡單,如下圖(符號說明跟上面一樣):

神經網路和數學之間的聯繫在哪裡?看完你就明白

其中

只有 w 參數是未知的,那麼 C 就可以看做是關於 w 的二元函數(二元函數的好處就是我們可以在三維坐標上將它可視化出來,便於理解~)。 圖片來自於網路:

神經網路和數學之間的聯繫在哪裡?看完你就明白

下面走一遍演算法過程:

我們先開始隨機初始化 w 參數,相當於我們可以在圖上對應 A 點。

下面我們的目標是到達最低點 F 點,於是我們進行往梯度反方向進行移動,公式如下:

神經網路和數學之間的聯繫在哪裡?看完你就明白

那麼好了,上面我們給出二元函數這種簡單例子,從分析到最後求出結果,我們能夠直觀可視化最後的步驟,那麼如果網路複雜後,變成多元函數的最優值求法原理是一模一樣的!到此,我結束了該文要講的知識點了。 歡迎各位朋友指錯交流~

---------------------------分割線---------------------------

在我學習的時候,我已經理解了上面的知識了,但是我在思考既然我最後已經得到一個關於 w 的多元函數了,那麼我為什麼不直接對每一個 w 進行求偏導呢,然後直接進行更新即可,為什麼神經網路的火起還需要 bp 演算法的提出才復興呢!我的疑惑就是為什麼不可以直接求偏導,而必須出現 BP 演算法之後才使得神經網路如此的適用呢?下面給出我的思考和理解(歡迎交流~)

1. 為什麼不可以直接求導數?

在神經網路中,由於激活函數的存在,很多時候我們在最後的代價函數的時候,包含 w 參數的代價函數並不是線性函數,比如最簡單的

這個函數對 w 進行求導是無法得到解析解的,那麼說明了無法直接求導的原因。

2. 那麼既然我們我們不能夠直接求導,我們是否可以近似的求導呢?比如可以利用

根據這個公式我們可以近似的求出對每個參數的導數,間距越小就越接近,那麼為什麼不可以這樣,而必須等到 BP 演算法提出來的時候呢?思考中……

答:是因為計算機量的問題,假設我們的網路中有 100 萬個權重,那麼我們每一次算權重的偏導時候,都需要計算一遍改變值,而改變值必須要走一遍完整的正向傳播。那麼對於每一個訓練樣例,我們需要 100 萬零一次的正向傳播(還有一次是需要算出 C),而我們的 BP 演算法求所有參數的偏導只需要一次反向傳播即可,總共為倆次傳播計時。到這裡我想已經解決了為什麼不能夠用近似的辦法,因為速度太慢,計算複雜度太大了~ 每一次的傳播,如果參數多的話,每次的矩陣運算量非常大,以前的機器速度根本無法承受~ 所以直到有了 BP 這個利器之後,加快了神經網路的應用速度。

以上僅個人理解,感謝德川的幫助!歡迎知友提出問題交流~

以下是我學慣用到的資料和博客:

《neural networks and deep learning》需要中文版的歡迎留言郵箱

零基礎入門深度學習 (1) - 感知器

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雷鋒網 的精彩文章:

TAG:雷鋒網 |

您可能感興趣

就因為網路!曾經的直播一姐馮提莫變這樣?網友:網紅想當明星!
那些曾經被視為巔峰之作的網路小說,哪些你還看的下去
世界都是神經網路的
這隻網紅牛頭梗為何能火爆網路,看完它的「姿勢」我就明白了!
深度學習還是之前的神經網路嗎?
網路世界裡的第一代網紅你還記得幾個?如今基本都結婚了
網路綜藝的亂象,不是召集幾個明星就能玩的好的
三本曾經紅了半個網文界,現在卻鮮為人知的網路小說,被埋沒的神作!
不一樣的經典,帶你了解什麼是真正的玄幻網路小說!
五本非常精彩的網路小說,拯救書荒的你們,好看的停不下來!
記憶中不可磨滅的十本經典網路小說,好看的都在這裡了
袁姍姍減肥日記走紅網路,網友:明星這樣的示範其實並不好!
在你上學的時候接觸的網路遊戲是哪一部,現在還玩嗎?
尹正吃雞不順怪網路,看到網友們一致的評論,我也就放心了
盤點曾經火爆全國的網路遊戲,不曾忘記那些徹夜不眠的夜晚,哪一個是屬於你的青春?
網路上很火的茶杯犬,大家知道是怎麼來的嗎?看完在喜歡也不買了!
一人之下:王也道長最經典說的一句話,在網路紅極一時,我聽了卻留下眼淚!
這五本風格迥異的網路小說,看過的書友都說好看!
那些曾刷新我們三觀的網路紅人,為什麼現在都無影蹤了?
日本這隻熊貓獨創的「減肥哲學」走紅網路,網友看完後表示:終於可以心安理得地吃吃吃了…