吳恩達機器學習系列11:神經網絡

什麼是神經網絡(Neural Networks)呢?最開始科學家想用算法去模擬大腦達到人工智能。經過一系列的實驗發現,大腦是經過神經元進行工做的,神經元之間經過電信號傳遞信息。因而他們就開始模擬神經元的工做過程,用算法去模擬神經元,這就造成了神經網絡。神經網絡能夠用來學習複雜的非線性假設模型算法


以下圖,藍色圈模擬輸入信息,黃色圈模擬神經元,假設函數 h_θ(x) 模擬輸出信息,該函數就是咱們以前學過的邏輯函數(Logistic Function),又稱爲 Sigmoid Function微信

未命名圖片.png

那麼如今一個神經元模擬好了,可是大腦確定不是靠一個神經元工做的,如今開始模擬多個神經元的工做過程,以下圖:網絡

未命名圖片.png

其中 Layer 1 層模擬輸入信號,連線表明信號傳遞的方向。Layer 2 層表示隱藏層,這一層的輸入輸出都是不可見的,所以叫隱藏層,這一層一般會有不少層。 Layer 3 層爲輸出層,這一層會輸出結果。按照從 Layer 1 層到 Layer 3 層這個方向傳播叫作前向傳播機器學習


一般會在每一層都加上一個偏置單元,以下圖:函數

未命名圖片.png


每個神經元也就是假設函數 h_θ(x) 的構造以下:學習

未命名圖片.png


未命名圖片.png

表示第 j 層第 i 個神經元。人工智能

未命名圖片.png

表示第 j 層神經元的參數矩陣。spa



在邏輯迴歸中,求最佳的參數能夠用最小化代價函數來求,那麼神經網絡中也有參數,這些參數咱們能夠用一樣的辦法進行求解。先用咱們最熟悉的邏輯迴歸代價函數來進行類比,邏輯迴歸的代價函數以下(其中紅線部分爲對參數進行正則化,θ_0 不須要正則化):3d

未命名圖片.png

相似地,神經網絡的代價函數以下:cdn

未命名圖片.png

其中:

L = 神經網絡的層數;

S_l= l 層有多少個單元;

K = 輸出單元的數目。


乍一眼看上去挺複雜,其實類比邏輯迴歸的代價函數來看,思想都是同樣的。



ps. 本篇文章是根據吳恩達機器學習課程整理的學習筆記。若是想要一塊兒學習機器學習,能夠關注微信公衆號「SuperFeng」,期待與你的相遇。

請關注公衆號.PNG

相關文章
相關標籤/搜索