丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網賬號安全和更好的產品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預覽,將在時失效
人工智能開發(fā)者 正文
發(fā)私信給AI研習社
發(fā)送

1

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

本文作者: AI研習社 2017-08-04 18:03
導語:雷鋒網按:本文原作者憶臻,本文原載于作者的知乎專欄——機器學習算法與自然語言處理。雷鋒網已獲得作者授權。在我們了解過神經網絡的人中,都了解神經網絡一個有很常見的

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

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

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

BP 算法具體是什么,可以參考我這篇文章知乎專欄(詳細的將 BP 過程走了一遍,加深理解),那么下面解決這個問題,為什么通過 BP 算法,就可以一步一步的走向更好的結果。首先我們從神經網絡的運行原理來看,假如現(xiàn)在有下面這個簡單的網絡,如圖:

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

我們定義符號說明如下:

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

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

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

如果損失函數 C 定義為

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

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

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

好,我們現(xiàn)在順利的將一個神經網絡要解決的事情轉變?yōu)橐粋€多元函數的最優(yōu)化上面來了?,F(xiàn)在的問題是怎么修改 w,來使得 C 越來越往最小值靠近呢。常見的方法我們可以采取梯度下降法(為什么梯度下降法中梯度的反方向是最快的方向,可以參考我下篇文章,不是這篇文章主旨)??赡艿竭@還有點抽象,下面舉一個特別簡單的例子。

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

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

那么我們可以得到:

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

其中

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

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

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

下面走一遍算法過程:

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

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

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

每走一步的步伐大小由前面的學習率決定,假如下一步到了 B 點,這樣迭代下去,如果全局只有一個最優(yōu)點的話,我們在迭代數次后,可以到達 F 點,從而解決我們的問題。

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

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

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

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

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

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

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

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

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

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

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

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


以下是我學習用到的資料和博客:
《neural networks and deep learning》需要中文版的歡迎留言郵箱
零基礎入門深度學習 (1) - 感知器

雷峰網版權文章,未經授權禁止轉載。詳情見轉載須知。

神經網絡和數學之間的聯(lián)系在哪里?看完你就明白

分享:

編輯

聚焦數據科學,連接 AI 開發(fā)者。更多精彩內容,請訪問:yanxishe.com
當月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經綁定,現(xiàn)在您可以設置密碼以方便用郵箱登錄
立即設置 以后再說