[翻譯4.6]Multi-layer neural networks(多層神經網絡)

P.S.:? 說三個比較重要的事情:

i.? 我突然的發現自己忘了把代碼上傳,于是決定在這周末上傳到github中。如果這個section中包含了實例代碼,我會更新文章并把github上的鏈接放在文章的開頭。

ii. 剛才看了看之前寫的,發現有部分文章沒有上傳。待我回去找找上傳上去。沒關系,第4章講的都是基礎概念,第5,6章才是重點。

iii. 翻譯了這么久,似乎只在第一篇上粘貼了翻譯的書籍 。這是我的失誤,現在給出翻譯來源:

http://shop.oreilly.com/product/9781939902351.do

目前,我們已經使用過了簡單的神經網絡。無論是線性的還是邏輯回歸的模型都是這樣的單個神經元:

1.將一個輸入特征按照權重求和。偏置(bias)可以被認為是輸入的特征值為1的權重。我們稱之為線性組合的功能。

2.然后使用激活或者是傳遞函數來計算輸出。(Then apply an activation or transfer function to calculate the

output)。如果是線性回歸,轉換函數是恒等的(the identity),然而邏輯回歸用的是sigmoid函數作為轉換器。

下圖繪制出了每個神經元的輸出、處理和輸出:




如果是softmax classification的話,我們使用C個神經元對應每一種可能的輸出類別:



現在,為了解決更多復雜(difficult)的問題,我們需要更加優秀的模型(a more developed model.)例如:讀取手寫體數字或者是在圖像中識別貓和狗。

來讓我們從一個簡單的例子說起。假設,我們想要構建一個神經網絡來適合XOR(eXclusive OR異或)的boolean操作:


當任一輸入等于1時,它應返回1,但兩者都相同的時候不會返回1。

這似乎是我們迄今為止所嘗試的一個更簡單的問題,但是我們提出的模型卻都沒有解決。

原因是S型神經元需要我們的數據線性分離才能使其工作更好。這意味著必須在二維數據(或更高維度數據中的超平面)中存在一條直線,它將屬于同一側的類的所有數據樣本分開,如下所示:



從這個圖標中我們可以看出點作為數據樣本,相同的類別是相同的顏色。只要我們可以找出一條黃線可以完全分離圖表中的紅色和藍色點,則S型的神經元對于該數據集將工作正常。

來讓我們看看XOR門(異或門)函數繪制的圖表:



我們找不到一條分割圖表的直線,留下一邊的所有1(紅點),另一邊留下0(藍點)。所XOR函數輸出不是線性可分離的。

這個問題實際上導致了神經網絡研究在1970年代左右大約十年左右的失去其重要性。那么他們如何解決缺乏線性可分性來繼續使用網絡?他們通過在網絡的輸入和輸出之間插入更多的神經元來完成,如圖所示:




你看,我們在輸入層和輸出層之間添加了隱含層。你可以認為它允許我們的網絡向輸入數據詢問多個問題,隱藏層每個神經元對應一個問題,最后根據這些問題的答案決定輸出結果。

從圖上來看,我們允許網絡繪制多個單獨的分隔線:




正如你再圖中看到的一樣,每行將平面的第一個問題劃分給輸入數據。然后,你可以將所有相等的輸出在一個區域中組合在一起。

在本書的后面,我們介紹不同類型的深層神經網絡,用于不同的使用場景。

下一期:梯度下降和反向傳播

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 前進的道路上,我們將擴展出很多關于神經網絡的關鍵的思想,其中包括兩個重要的人工神經元 (感知機和 S 型神經元),...
    郭少悲閱讀 1,122評論 0 0
  • 1 概述 2 主要的屬性 private transient volatile Node head;private...
    梁行之閱讀 382評論 0 0
  • “救命啊!救命啊!快來救我,快,快!”是誰?你是誰?“我是潘多拉星球的一位擁有魔法的人,誰救了我,我會報答她的!”...
    瑤瑤_75d3閱讀 250評論 0 0