機器學習-單層感知機

我們似乎明白了很多道理,卻不明白為什麼明白。和宇宙一樣神秘的,還有人的大腦。

一、感知機是什麼?

“感”就是感受,必然要輸入;“知”就是知道,一定有輸出。所以感知機就可以理解為對輸入進行處理,得到並輸出結果的機器。

例如,一個人朝你走來,他/她的五官信息作為輸入被你的眼睛感受到,然後大腦經過綜合分析、處理,得到美還是醜的結論。在這個過程中,大腦就扮演著感知機的角色。

機器學習-單層感知機

為什麼大腦和感知機如此相像呢?其實是感知機和大腦像才對。因為先有大腦,再有的感知機。感知機最初的目的就是為了模擬大腦的這種行為的。一句話概括:

感知機就是模擬大腦感知的機器。

那麼,感知機是怎麼來的呢?

二、神經元-靈感來源

一切還得從神經元說起。

神經元又要從人類對自身感知器官的認識說起。

早些個時候,人們對於身體的哪個器官負責感知不太確定,有人認為是心,有人認為是腦。

比如古希臘時期著名的醫學家希波克拉底認為大腦負責感知,是智慧的發祥地。但哲學家亞里士多德卻認為心臟才是智慧之源,大腦不過是個散熱器。

再後來到古羅馬時期,生理學家Galen(蓋倫)通過大量的解剖、實驗和觀察,基本確認了大腦才是感知器官的這一結論,並逐漸被人們所接受。

隨後直到文藝復興時期,人體解剖使得對大腦的結構有了更進一步的瞭解。到17世紀,隨著顯微鏡的發明使用,腦解剖開始向神經組織學深入,神經細胞和神經纖維的構造也逐漸明瞭。

1900年,拉蒙-卡哈爾用Golgi銀染色技術觀察到了獨立的神經元,並認為神經系統是由數以億計的神經元相互連接而成,由此產生了“神經元”學說。

神經元由細胞體和突起兩大部分組成。如下圖:

機器學習-單層感知機

其中細胞體包括細胞核、內質網、線粒體等,是神經元的控制中心,對樹突傳進來的信號進行綜合處理。

突起包括樹突和軸突。

樹突負責接受來自其它神經元的信號,相當於神經元的輸入端,一個神經元通常有多個樹突。

軸突比樹突長而細,也叫神經纖維,末端處有很多細的分支稱為神經末梢,每一條神經末梢可以向四面八方傳出信號。

神經末梢和和另一個神經元進行通信的結構叫突觸,是神經元的輸出端。

突觸使神經元的膜電位發生變化,且電位變化可以累加。神經元接收多個神經元的軸突末梢傳來的信號,並根據不同的權重進行累加。當累加值使膜電位達到一定閾值時,神經元就被觸發。

可以看出,神經元是一個信息處理單元,具有多輸入單輸出的結構。

三、M-P模型

1943年,根據生物神經元的結構和工作原理,麥克洛克(McCulloch)和皮茨(Pitts)提出五點假設:

1、神經元的活動是個非0即1的過程;

2、神經元被激活的條件具有可重複性;

3、神經系統的延遲主要來自突觸;

4、被抑制的突觸同時阻止神經元的激活;

5、神經網絡的結構不隨時間而改變。

基於這五點假設,抽象出一個類神經元的運算模型,稱為M-P模型。除去延遲等細枝末梢,簡化後的模型如下:

機器學習-單層感知機

其中I為輸入,相當突觸。W為權重,跟細胞體有關,T為閾值函數。I經過W加權累加後送到T,如果累加和大於T的閾值,則神經元被激活,否則不激活。

閾值函數的結構如下:

機器學習-單層感知機

整個模型用公式描述為:

機器學習-單層感知機

機器學習-單層感知機

四、赫布學習規則

M-P模型抽象出了神經元的結構,但並沒有給出W權重該如何確定,是強還是弱,什麼時候強,什麼時候弱,由什麼因素決定。Hebb學習規則嘗試著給了回答。

1901年,巴普洛夫曾經做過一個實驗,在給狗餵食之前,先打鈴,久而久之,狗一聽到鈴聲就開始分泌唾液。

機器學習-單層感知機

受該實驗的啟發,Hebb認為同時被激發的神經元間的連接會被強化。比如,鈴聲觸發一個神經元,同時食物激發相鄰的另一個神經元,那麼這兩個神經元間的聯繫就會強化,從而記住這兩個事物之間存在著聯繫。相反,如果兩個神經元不會被同步激發,那麼它們間的連接將會變弱。

如下圖右側三組相鄰的神經元,橙色表示激活,藍色表示未激活。

對於第一組(a),由於神經元i未激活,被j激活,所以i、j間的連接減弱;

第二組(b),雖然神經元i被激活,但j未激活,所以i、j間的連接也減弱;

第三組(c),神經元i和j同時被激活,所以i、j間的連接被增強;

機器學習-單層感知機

用公式表示:

機器學習-單層感知機

其中W為權重,y為輸出,η為學習率。這就是Hebb學習規則。用Hebb自己的語言描述為:

我們可以假定,反射活動的持續與重複會導致神經元穩定性的持久性提升……當神經元A的軸突與神經元B很近並參與了對B的重複持續的興奮時,這兩個神經元或其中一個便會發生某些生長過程或代謝變化,致使A作為能使B興奮的細胞之一,它的效能增強了。

總之,一句話:

如果兩個神經元總是相關連的受到刺激或者反應,它們的連接就會一次次的被加強。

這也就是Hebb學習規則。

五、感知機模型

1957年,結合M-P模型和Hebb學習規則,羅森布拉特發明了感知機。最大的貢獻是解決了M-P模型中參數W的學習問題。

在論文中,羅森布拉特從生物神經系統的角度,一步步抽象並構建起感知機模型,由於考慮的因素比較多,結構比較複雜,如下:

機器學習-單層感知機

對應的簡化圖如下:

機器學習-單層感知機

後經進一步的發展、變形,成為現在常用的經典形式,由於只有一層,又被稱為單層感知機。如下:

機器學習-單層感知機

和M-P模型相比,感知機引入了偏置b。用公式表示為:

機器學習-單層感知機

其中,sign(x)為激活函數:

機器學習-單層感知機

分別對應激活和抑制兩種狀態。

六、感知機的幾何解釋

由於:

機器學習-單層感知機

相當於n維空間的一個超平面。ω為超平面的法向量,b為超平面的截距,x為空間中的點。

當x位於超平面的正側時:

機器學習-單層感知機

感知機被激活。

當x位於超平面的負側時:

機器學習-單層感知機

感知機被抑制。

所以,從幾何的角度來看,感知機就是n維空間的一個超平面,它把特徵空間分成兩部分。

機器學習-單層感知機

更多關於超平面的知識,可以參 。

七、分類與學習策略

由於感知機具有的這種分離超平面的特性,可以用來對數據進行分類。具體為:

首先給定一組訓練數據,然後通過訓練數據確定模型的參數ω、b,最後用學到的模型預測新數據的類別。

模型的參數如何確定呢?

假設給定的訓練數據為:

機器學習-單層感知機

其中,

機器學習-單層感知機

學習的目標就是找一個能將訓練數據中正負實例都分開的超平面。

可以通過最小化誤分類點到平面的總距離來實現。

點到平面的距離公式為:

機器學習-單層感知機

對於誤分類的數據,由於預測結果和實際結果符號相反,所以有:

機器學習-單層感知機

所以,誤分類點到平面的距離便可表示為:

機器學習-單層感知機

假設有M個誤分類點,如下圖:

機器學習-單層感知機

則誤分類點到超平面的總距離為:

機器學習-單層感知機

由於常數因子不影響最終結果,所以,通過最小化:

機器學習-單層感知機

就可以確定模型參數。

L(ω,b)又被稱為損失函數。

八、學習算法

為了最小化損失函數,可以選用梯度下降法。因為梯度指向函數增加最快的方向,通過往反方向調整參數的值,就可以逐漸到達函數的最小值。

L(ω,b)的梯度為:

機器學習-單層感知機

機器學習-單層感知機

對於一個誤分類點,沿梯度反方向更新ω,b如下:

機器學習-單層感知機

機器學習-單層感知機

這樣,通過多次迭代就可以使損失函數逐漸減小,直至為0,得到最終的參數。


分享到:


相關文章: