雖然羅斯布拉特最初對單層感知器抱有巨大的期望,但後來發現它並不能解決複雜的分類問題。1969年,馬文·明斯基和西摩爾·派普特在他們關於感知器的專著《感知器》(Perceptrons)中證明,這種單層感知器隻能解決線性可分問題,卻處理不了非線性分類問題。例如,平麵上的4個點,(0,0)和(1,1)是一類,(0,1)和(1,0)是另一類。這樣一個非常簡單的關於4個點的二分類問題,使用單層感知器並不能給出正確的分類,原因就在於這樣的分類問題是非線性可分的。讀者可以從鳶尾花數據集中,選取不同於上節案例中的花的種類和特征屬性,嚐試用單層感知器算法分類,會發現並不總是能夠給出具有很高的準確率的分類。某些情況下,無論迭代多少次,學習速率設定為多大,總是存在一部分不能正確分類的數據。
在上一節我們通過實例對線性可分問題已經有所了解,而非線性可分問題通過上麵的圖片可以直觀地看到它的含義。在圖6-6中,紅藍兩類數據無法通過一條直線分開,這就是非線性可分問題。
圖6-6
現實生活中遇到的大量問題都是線性不可分的,由於單層感知器對處理這類問題束手無策,造成人工神經網絡理論在一段時間內陷入了低穀。那麽感知器理論是否真的不能處理這樣的問題呢?其實不然,研究者發現,通過增加神經網絡的層數,可以很好地解決非線性分類問題。可以簡單地認為,通過設計複雜的多層神經網絡,使得最終網絡輸出的結果就是多層網絡複合後得到的結果。其中每一層網絡負責提取所處理的問題的不同特征,最終把多層網絡抽取的特征複合起來,就能夠較好地表達問題中複雜的非線性特征了。
實踐證明這樣的想法是行之有效的,由此推動了多層神經網絡技術的發展。一個簡單的神經網絡包括一個輸入層、一個隱藏層和一個輸出層,如圖6-7所示。