感知機(perceptron)
感知機接收多個輸入信號,輸出一個信號。
image.png
其中一個重要的組成叫做神經元,這正是受生物學中神經元的原理啟發而來。一個神經元通常具有多個樹突,主要用來接受傳入信息;而軸突只有一條,軸突尾端有許多軸突末梢可以給其他多個神經元傳遞信息。軸突末梢跟其他神經元的樹突產生連接,從而傳遞信號。這個連接的位置在生物學上叫做“突觸”。
673793-20151229121248198-818698949.jpg
所以其實這樣表示可以更好的理解神經元
微信圖片_20190730102043.jpg
圖中的神經元只是表示一個黑盒,如果我們展開來看它應該是這樣的結構
微信圖片_20190730102518.jpg
中間的部分由若干個隱藏單元組成
作者用邏輯電路為例來解釋感知機的作用,我感覺理解起來還是有些吃力,畢竟用一個抽象的概念來解釋另一個抽象概念,確實有些費腦。我認為作者的用意一是邏輯電路和神經網絡的結構相似,二是組合門的效果可以產生單一門無法實現的效果:因為一個門只能處理線性空間,對于非線性空間就需要許多門組合使用。對此,我想分享一個具體的例子。比如我們想要知道一個房子的值多少錢,我們有一些關于房子的數據,比如房屋面積,幾室,郵編,與地鐵的距離,那么我們如何通過這些數據分析房子的價格呢,請看下圖
微信圖片_20190730125141.jpg
通過面積和幾室來判斷可容納人數,通過郵編可以判斷是否是學區,孩子是否有獨立房間,判斷是否有利孩子成長,通過郵編和附近的交通狀況就可以判斷步行化的,由此就可以推斷房屋的價格,當然這只是個例子,房屋價格影響因素有很多,所以在具體應用深度學習的時候也會有很多隱藏單元來處理。圖中的圓圈代表激活函數,通過激活函數的激活可以計算出的結果變為信息方便傳遞或者是輸出。
那么一個神經元是如何計算的呢,其實就是就是書中提到的邏輯回歸的方式
y=wx+b
x是輸入值,y是輸出值,w為權重,b為偏移量
如果是多個神經元連續傳遞,則變為
z1 = w1x +b1
a1 = sigmoid(z1)
z2 = w2a1 +b2
.....
sigmiod是激活函數的一種,通過這樣的方式就可以得到最后的預測值