麻省理工公開課人工智能筆記十一

本篇講神經網絡方面內容。

首先看樸素生物學,神經網絡的展開。

如上圖,畫出一個神經細胞,右邊是軸突,左邊是樹突樹,上有軸突與下游樹突相連,軸突中神經遞質經囊泡傳往樹突,當積累的神經遞質足夠多,就會產生一個尖峯信號傳遞,沿軸突向下遊樹突傳播。

有幾點我們需要注意

1、存在突觸,有些突觸的作用更大,所以需要權重的概念。

2、積累效應,對樹突樹的刺激,神經遞質積累纔會產生尖峯信號,需要某種函數

3、要麼傳要麼不傳,沒有其他選擇

下面我們開始建模

首先我們有很多輸入,這些輸入來自於樹突樹的所有上有軸突。他們都是0、1信號,每一個輸入乘以相應的權重得到一個值,然後我們將所有這些值求和,最後經過一個臨界值函數,因爲他只有兩種輸出0和1.

神經網絡就是一系列的上面模型的集合。如下圖

有一系列的輸入,在一個有一系列求和與臨界函數的盒子裏,可以得出一系列相應的輸出Z,Z是輸入X和權重w的函數,然後如果我們有一系列訓練樣本,我們可以對特定輸入得到理想輸出,理想輸出d只與特定輸入有關,我們希望讓理想輸出與實際輸出對應上,也就是說,有一系列權重,讓實際輸出等於理想輸出。

我們還需要一個評估機制,評估理想輸出和實際輸出的差距,可以用下面這個

使用這個函數是因爲他方便進行數學處理。

爲了方便,我們需要先對臨界值進行處理

如上圖,在求和的地方加入一個-T,讓臨界值函數從0這個地方開始變化

現在我們要找一組最好的w,讓實際輸出更接近於理想輸出。

考慮只有w1和w2的情況,w1和w2在最優處最高,像一個山頂,畫出等高線圖

假設第一個點是隨機生成的,隨機生成一個點,從這個點開始,我們可以使用爬山法,深度優先搜索,東西南北四個方向,顯然我們應該選東,因爲只有他是向山頂前進。

然而這個方法在有很多w的情況下不好用,如果維度很多,爬山法就不再適用

我們可以使用梯度上升法

路線開始沿着向山頂的方向前進。

此時Δw等於偏導的和,或許可以乘上某個速率函數。

然而使用梯度上升法需要曲線平滑連續,所以我們可以修正臨界函數,使其平滑一些,不再是階躍函數。如下

世界上最簡單的神經網絡。

輸入x乘以權重w1得到ρ1,經過臨界值函數(這裏乘坐S型函數)得到y,再和權重w2相乘得到ρ2,經過臨界值函數得到z,z進入性能計算函數得到p。這裏可以理解爲桑三個神經元細胞,兩次傳遞的變化。

我們可以通過數學計算得到性等函數對於w1和w2的偏導

上面遇到了困難,我們回到臨界值函數。

可以看到,β對α的偏導只與阿爾法有關,所以可以得到

通過上式可以得出w1與w2的依賴關係。

w2依賴於z,y。w1依賴於w2、y、x。

如果有100個排在一起,那麼前面的總可以用後面的計算出來,因爲他們之間有依賴關係。這就是反向傳播算法的思想。

 

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