1. 程式人生 > >單層神經網路、多層感知機、深度學習的總結

單層神經網路、多層感知機、深度學習的總結

關於神經網路的幾點思考:單層——多層——深度

神經網路本質上是一個逼近器,一個重要的基本屬性就是通用逼近屬性。

通用逼近屬性:

1989年,George Cybenko發表文章“Approximation by Superpositions of a Sigmoidal Function”,文章證明在只有單個隱層的情況下,對於任何的連續的,非線性的sigmoidal函式,只要在隱藏層個數足夠多的情況下,就能夠很好的擬合任意的連續函式。

文章所闡述的通用逼近屬性(UniversalApproximation Properties)是神經網路中非常重要的一個性質:一個單隱藏層的神經網路,如果神經元個數足夠多,通過非線性的啟用函式則可以擬合任意函式。這使得我們在思考神經網路的問題的時候,不需要考慮函式是否能夠用神經網路擬合,只需要考慮如何用神經網路做到更好的擬合。

1991年Kurt Hornik提出:通用逼近屬性並不是啟用函式的具體選擇,而是多層前饋結構本身,該結構使神經網路具有通用逼近器的性質。


單層神經網路的缺點:

1、我們的優化方法不一定能夠找到我們所希望的優化引數,也就找不到我們需要的擬合函式,雖然這個擬合的函式是存在的;

2、訓練結果好,但是泛化能力差,即很容易產生過擬合

深層神經網路(多層感知機):

使用更深層的神經網路,可以得到更好的表達效果,這可以直觀地理解為:在每一個網路層中,函式特點被一步步的抽象出來;下一層網路直接使用上一層抽象的特徵進行進一步的線性組合。但是深層神經網路的缺點在於:

1、在面對大資料時需要人為提取原始資料的特徵作為輸入,這個尺度很難掌握,多層神經網路會把蹲在屋頂的Kitty

和騎在貓奴頭上的Kitty識別為不同的貓咪,又會把二哈和狼歸類為同一種動物。前者是對不相關變數過於敏感,後者則因無法提取有實際意義的特徵。

2、想要更精確的近似複雜的函式,必須增加隱藏層的層數,這就產生了梯度擴散問題。

3、無法處理時間序列資料(比如音訊),因為多層神經網路不含時間引數。

深度學習模型:

2006年,文章“Reducing the Dimensionality with Neural Networks”在Nature上發表,掀起了深度學習在學術界和工業界的研究熱潮。作者闡述了兩個重要觀點:一、多隱層的神經網路可以學習到能刻畫資料本質屬性的特徵,對資料視覺化和分類等任務有很大幫助;二、可以藉助於無監督的“逐層初始化”策略來有效克服深層神經網路在訓練上存在的難度。不斷髮展。

對於更為複雜的問題,多層神經網路是解決不了這些問題的,而深度模型是如何解決以上的缺陷的呢?

1、深度學習自動選擇原始資料的特徵,如卷積神經網路模型等,能有效提取特徵值。

2、深度網路的學習演算法不同於深層神經網路:一是改變網路的組織結構,比如用卷積神經網路代替全連線(full connectivity)網路,訓練演算法仍依據Backpropagatinggradients的基本原理。另一種則是徹底改變訓練演算法,比如Hessian-freeoptimization,recursive least-squares(RLS)演算法等。

3、使用帶反饋和時間引數的RNN網路處理時間序列資料。

參考:

3、 CSDNhttp://blog.csdn.net/zpcxh95/article/details/69952020?winzoom=1#21-通用逼近性質理論universal-approximation-propertiestheorem神經網路可以逼近任意函式

建議資料:

深度學習、神經網路原理、機器學習等