1. 程式人生 > >Hinton Neural Networks課程筆記2e:感知機的侷限性

Hinton Neural Networks課程筆記2e:感知機的侷限性

感知機的侷限性用一句話就是隻能對線性可分的資料集收斂。基於感知機的侷限性,體現出了特徵提取的重要性,進而提出了使用隱層節點學習特徵提取的重要性;然後稍微分析了一下學習特徵提取的難度。

1. 前提條件:特徵提取固定

首先明確感知機侷限性的前提條件:特徵提取固定。
如果特徵提取的足夠多,感知機可以對任意二值輸入向量分類(任意有理數域資訊都可以表示為二值向量,只需要特徵提取為所有二值向量的表示(共2|x|個特徵),感知機即可對任意二值向量進行分類;但這種方法的泛化能力明顯不好)。

2. 一個簡單的例子:XOR

XOR
上訴四個資料點是無法被感知機正確分類的,證明方法如下:

2.1. 數學公式法

xor1
從而有θ×2>w1+w2θθ2>θθ>0,而此結論與θ0相悖。

2.2. 幾何展示法

xor2
回憶感知機的幾何解釋中使用的是權重空間,資料點對應於權重空間的一個超平面。
這裡使用的是資料空間,每一維對應於一個數據點,權重對應於資料空間的一個向量,而與這個向量垂直的超平面將資料空間分為兩個部分,一個部分會被給定權重判為正樣本,而另一部分則被判為負樣本。
如上圖所示,無法找到一個超平面可以對四個資料點做合理的區分,所以感知機無解。

3. 另一個例子:模式識別

感知機的一個重要的被期待的應用方向就是模式識別。Minsky和Papert使用“Group Invariance Theorem”,證明了只要變化是可以迴圈的,同時兩個模式的加和是相同的,那麼感知機即無法對其進行區分。
如下是一個影象領域的例子,有n多個畫素點,每個畫素點只有0或1兩種可能值。模式A是一個黑點+兩個白點+兩個黑點+兩個白點+一個黑點;模式B是兩個黑點+三個白點+兩個黑點。注意同一個模式可以有多種可能位置,而且變換是可以迴圈的,即頭尾相連。
patterns


那現在就是要證明兩個模式是無法通過感知機區分的:使用反證法。
假設存在一個合法權重w和閾值θ可以區分兩種模式,即對於所有屬於模式A的資料xi,有wxiθ;而對於所有屬於模式B的資料xj,有wxj<θ。那麼有iAwxi=4w=jBwxj,從而有|B|×θ>|A|×θ|B|==|A|θ>θ。而θ=θ,所以假設不成立。
proof
但如果能夠合理的設計特徵(例如連在一起的黑塊數目),則上訴問題可以被感知機正確分類。這裡就體現出傳統模式識別問題的難點不在於分類器的部分,而在於設計特徵。

4. 自適應學習特徵及其難點

上文已經論證了特徵的重要性,但特徵的設計細緻且繁瑣;為每一個子問題設計特定的特徵往往耗時費力,效果也不好。如果能夠學習特徵的話,那麼問題將會被大大簡化。
學習特徵有幾個限制:首先,線性特徵是沒有意義的,因為線性變換沒有改變空間結構,線性不可分的資料集仍然是線性不可分的;所以隱層節點輸出的非線性函式是很有必要的。其次,固定輸出也是沒有意義的(就相當於一個bias),需要輸出能夠根據輸入變化。使用帶有隱層節點的神經網路,具有自適應學習非線性特徵的能力。
但如何訓練網路使其能夠學習到合理的特徵,是個具有難度的問題。因為其困難重重,使得神經網路在感知機之後又沉寂了十幾年。首先,其需要訓練整個網路的權重(而不是僅僅是最後一層);其次隱層輸出是沒有真值的,沒有一個合理特徵作為目標,使得神經網路可以學習。