人工神經網路ANN現在發展到什麼的樣的狀態? 有很多人說SVM和adaboost比ANN強,又有人說deep learning的ANN更好.到底如何呢.


對於特定應用方向來說,沒有最好的演算法,只有最適合的演算法。SVM,Adaboost,ANN(deap learning)都是被學術界驗證過的方法。尤其後兩者被大量應用於工業界的實際產品中,並取得很好的效果。SVM最近有些沉寂,主要是因為它的非線性模型優化過程對計算和存儲性能要求太高,而線性模型性能又不夠好。


先說結論:

通常情況下,深層模型(Deep Learning)比淺層模型會有更好的表達能力,ensemble技術(adaboost)比單一分類器會有更小的分類錯誤。

在《學習OpenCV》講述Adaboost演算法的章節中,稱

通常情況下,Adaboost和Random Forest往往會比其他模型表現得更好。

其實上,Adaboost與ANN、SVM存在一些本質的不同,它是一種ensemble思想下的模型,是boost的經典實現。經典的Adaboost是以決策樹作為弱分類器,以弱分類器的集成來構建強分類器。它強調弱模型間的組合來實現強分類能力。

而SVM模型是一種複雜模型。儘管這個模型可以被簡單描述為一個有約束的最優化問題,即尋找可以區分類別的擁有最大分類間隔的分界面。但它的實現相當複雜。二次規劃問題,引入拉普拉斯對偶後,以核函數來應對非線性問題。

Deep Learning則是一類模型的統稱,也是目前最熱的研究點(計算機視覺和語音識別領域)。區別於通常的淺層模型,它強調模型的深度。受貓的視覺系統研究的啟發,研究者發現隨著模型深度的增加,模型往往可以獲得更好的表達能力,當然與此相伴的是更大的計算量。它的經典實現包括卷積神經網路(CNN),深度置信網路(DBN),層疊降噪自動編碼機(SdA)等等。

於此同時,由於深度模型的強表達能力,我們在進行通常的機器學習任務的時候,將可以避免複雜而又需要專業知識的特徵工程。

觀點如有錯誤,請指正。


神經網路, 或者連接主義(connectionism)的發展主要經歷了以下六個階段:

  • 1940s: MP模型提出.
  • 1950s: 現代意義上的電子計算機被廣泛使用.
  • 1958-1969: 感知機(perceptron)學習演算法變得非常流行. 然而, 早期的人工智慧研究者更傾向於符號表示, 因此, 連接主義並未成為當時人工智慧研究的主流.
  • 1969: Perceptrons: An Introduction to Computational Geometry[1]書中展示(當時的)神經網路只能處理線性分類問題, 連最簡單的異或(XOR)問題都解決不了.
  • 1980s: Intel x86 CPU以及內存技術極大促進了計算能力和訪問數據能力的提升.
  • 1985-1995: John Hopfield於1982年提出了Hopfield network(是一種遞歸神經網路(RNN)的形式), 並且在旅行商人(traveling salesman problem)這個NP難問題上取得了巨大成功. 此外, BP演算法被重新發明[2].
  • 1995: 連接主義被統計學習打壓.
  • 2000s: GPU, CPU集群被廣泛使用.
  • 2010至今: 深度學習文章在Science發表[3]. Geoffrey Hinton等人使用CNN模型以高出第二名10%的準確率贏得ImageNet 2012競賽冠軍.

和其他方法相比, 連接主義更容易利用更強的計算能力. 然而, 連接主義產生的模型是一種黑箱的形式. 此外, 連接主義最大的缺陷是"試錯", 神經網路有大量的超參數需要調整, 如隱層個數, 學習率大小等, 而學習結果對這些超參數選擇非常敏感. 但是, 對這些超參數的選擇缺乏理論知道, 在實際中通常需要手工調參.

至於Adaboost, SVM, 神經網路哪個演算法更好這樣的問題, 沒有免費的午餐定理(No Free Lunch Theorem)[4][5]告訴我們, 對於任意兩個學習演算法mathcal L_amathcal L_b, 如果在一些問題上面mathcal L_amathcal L_b更好, 那麼一定存在另外一些問題使得mathcal L_bmathcal L_a更好. 也就是說, 脫離具體問題, 空談哪個演算法更好是沒有意義的, 因為如果考慮所有可能的問題, 那麼所有的演算法都一樣好. 神經網路由於能自動的學習合適的數據的表示, 因此更適合於圖像, 語音, 文本這種數據的原始表示和數據的特徵之間相差很大的情況, 這也是現今深度學習在這些領域能取得重大進展的重要原因.


參考文獻:

[1]. Marvin Minsky and Seymour Papert. Perceptrons. 1969.

[2]. David E Rumelhart, Geoffrey E Hinton, and Ronald J Williams. Learning representations by backpropagating errors. Cognitive modeling, 5(3):1, 1988.

[3]. Geoffrey E Hinton and Ruslan R Salakhutdinov. Reducing the dimensionality of data with neural networks. science, 313(5786):504–507, 2006.[4].

[4]. David H Wolpert. The lack of a priori distinctions between learning algorithms. Neural computation, 8(7):1341–1390, 1996.

[5]. David H Wolpert, William G Macready, et al. No free lunch theorems for search. Technical report, Technical Report SFI-TR-95-02-010, Santa Fe Institute, 1995.

[6]. 周志華 著. 機器學習, 北京: 清華大學出版社, 2016年1月.


補充一點,svm可以看作只有一個隱層的bp網路


一個"deep leaning", 另兩個shallow learning。 svm和boosting都相當於只有一層hidden layer的ann。general來說,三種model上手度容易度:boosting&>svm=ann, bias:ann


推薦閱讀:

TAG:人工智慧 | 機器學習 | 深度學習DeepLearning |