多层感知器 MLP
由前面介紹看到,單個感知器能夠完成線性可分數據的分類問題,是一種最簡單的可以“學習”的機器。但他無法解決非線性問題。比如下圖中的XOR問題:即(1,1)(-1,-1)屬于同一類,而(1,-1)(-1,1)屬于第二類的問題,不能由單個感知器正確分類。
即在Minsky和Papert的專著《感知器》所分析的:感知器只能解決所謂一階謂詞邏輯問題:與(AND),或(OR)等,而不能解決異或(XOR)等高階謂詞羅輯問題。
用多個感知器實現非線性
單個感知器雖然無法解決異或問題,但卻可以通過將多個感知器組合,實現復雜空間的分割。如下圖:
將兩層感知器按照一定的結構和系數進行組合,第一層感知器實現兩個線性分類器,把特征空間分割,而在這兩個感知器的輸出之上再加一層感知器,就可以實現異或運算。
也就是,由多個感知器組合:
來實現非線性分類面,其中θ(·)表示階躍函數或符號函數。
多層感知器神經網絡?
實際上,上述模型就是多層感知器神經網絡(Multi-layer perceptron neural networks,MLP neural netwoks)的基礎模型。神經網絡中每個節點為一個感知器,模型生物神經網絡中神經元的基礎功能:來自外界(環境或其他細胞)的電信號通過突觸傳遞給神經元,當細胞收到的信號總和超過一定閾值后,細胞被激活,通過軸突向下一個細胞發送電信號,完成對外界信息的加工。
但是,感知器的學習算法并不能直接應用到多層感知器模型的參數學習上。因此,最初提出的學習方案是:除了最后一個神經元之外,事先固定其他所有神經元的權值,學習過程只是用感知器學習算法學習最后一個神經元的權系數。實際上,這相當于通過第一層神經元把原始的特征空間變換到一個新的特征空間,第一層的每個神經元構成新空間的一維,然后在新的特征空間用感知器學習算法構造一個線性分類器。顯然,由于第一層的神經元權值需要人為給定,模型的性能很大程度取決于能否設計出恰當的第一層神經元模型,而這取決于對所面臨的的問題和數據的了解,并沒有針對任意問題求解第一層神經元參數的方法。
(轉載請注明作者和出處:http://blog.csdn.net/xiaowei_cqu?未經允許請勿用于商業用途)
總結
- 上一篇: 反向传播神经网络 BPNN
- 下一篇: 最小平方误差判别 MSE