多层感知机和神经网络的区别_学习笔记-从神经元到神经网络
人的大腦神經網絡的復雜程度有人說,只有銀河系可以比擬。總所周知,神經網絡就是模仿大腦神經網絡用數學知識構造的模型。單個神經元還是比較簡單的。
神經元
一個神經元有樹突,軸突,和細胞體等部分。樹突接受輸入信息,細胞核處理信息,軸突傳出處理后的信息。
由神經元細胞,抽象出了它的數學模型如圖:
像這種神經元就叫感知器,也叫感知機。感知機是一類人造神經元,在許多神經網絡中,主要的神經元模型是sigmoid神經元。
感知機通過二進制輸入X的矩陣,產生一個二進制的輸出。每個X代表一個屬性,然后w也叫權重,權重值的大小代表每個屬性的重要程度,或者對結果的影響程度。
神經元的輸出,要么是0要么是1,由權重和∑jwjxj∑jwjxj的值是否小于或者大于某一閾值。和權重一樣,閾值(threshold)也是一個實數,它是神經元的一個參數。
我們簡化一下,用W·X代替∑jwjxj ,其中W和X分別是權重值和輸入值所組成的向量。其次,我們可以把閾值threshold移到不等式的另一邊,用b代替?thresholdb,其中b被稱為感知機的偏差。得到:
下面是一個更多層次的感知機,可以感知更復雜的輸入。
Sigmoid神經元
當我們拿著感知機去學習解決一些問題時,舉個例子,比如我們要識別貓,和老虎,我們知道小貓,和小老虎是挺像的,不像區別貓和狗那樣簡單,我們想辦法對網絡的權重和偏差做一些小的改變,使得網絡可以區分貓和狗。一次又一次調整權重和偏差,使得輸出越來越好,網絡就得到了學習。理論很美好,現實確很殘酷。事實上,任何一個感知機上發生一點小的改變有時可能導致感知機的結果翻轉(要么翻轉要么不變),由0變為1或者相反。這樣的翻轉可能造成其他所有感知機的復雜變化。所以操作十分困難。
于是升級版的神經元誕生了——sigmoid神經元。sigmoid神經元和感知機非常相似,但是它的輸入向量不在局限于0和1,而是0到1之間的連續值。
sigmoid神經元對每個輸入都有分配權重和一個總的偏差。但是輸出也不再是0和1,而是σ(w?x)+b,其中σ被稱為sigmoid函數,定義為:
一個擁有輸入x1,x2...權重w1,w2...偏差b的sigmoid神經元的輸出為:
說當z=w?x+b是一個很大的正數時,sigmoid神經元的輸出就接近于1,這就像一個感知機一樣。反之當z=w?x+b是一個很小的負數時,sigmoid的輸出結果趨近于0,這和感知機的行為很相似。只有當w?x+b的值不大不小的時候,sigmoid的輸出才和感知機不一樣。如圖:
可以看出,sigmoid函數是一條平滑曲線,而感應機應該是這樣的:
這就是激活函數的效果,通過計算發現,使用σ這樣一個指數函數對于分化是有好處的。σ函數是最常見的激活函數。感知機和sigmoid神經元之間最大的不同在于,sigmoid輸出的值不止0和1.他們可以輸出0到1之間的所有實數。
神經網絡結構
神經網絡結構就是上述神經的升級版。最左邊一層叫輸入層,這一層有輸入神經元,中間兩層為隱藏層,最后為輸出層,有輸出神經元。
這樣的多層網絡有時候被稱作多層感知機(MLPs),盡管這個網絡是有sigmoid組成的而不是感知機。
我們所討論的神經網絡都是上一層的輸出作為下一層的輸入。也就是前反饋神經網絡,信息總是往前走的,不會反向。在這個是函數σ作為激活函數時,沒有環形的神經網絡。這樣的神經網絡也叫前饋神經網絡。
而遞歸神經網絡是可能存在返饋回路的。它讓神經元在有限時間里激活,然后保持非激活狀態。這種激活可以刺激其他神經元在稍后一段時間激活。
遞歸神經網絡的熱度比前饋神經網絡的小,有一部分原因遞歸網絡的學習算法目前不那么強大。個人感覺它比前饋神經網絡復雜一些。
總結
以上是生活随笔為你收集整理的多层感知机和神经网络的区别_学习笔记-从神经元到神经网络的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ups容量计算和配置方法_UPS电路设计
- 下一篇: 输卵管堵塞多卵怎么能治好