TensorFlow系列專題(三):深度學習簡介
一.深度學習的發展歷程
- 深度學習的起源階段
- 深度學習的發展階段
- 深度學習的爆發階段
- 自然語言處理
- 語音識別與合成
- 影象領域
一.深度學習的發展歷程
作為機器學習最重要的一個分支,深度學習近年來發展迅猛,在國內外都引起了廣泛的關注。然而深度學習的火熱也不是一時興起的,而是經歷了一段漫長的發展史。接下來我們簡單瞭解一下深度學習的發展歷程。
- 深度學習的起源階段
1949年,加拿大著名心理學家唐納德·赫布在《行為的組織》中提出了一種基於無監督學習的規則——海布學習規則(Hebb Rule)[2]。海布規則模仿人類認知世界的過程建立一種“網路模型”,該網路模型針對訓練集進行大量的訓練並提取訓練集的統計特徵,然後按照樣本的相似程度進行分類,把相互之間聯絡密切的樣本分為一類,這樣就把樣本分成了若干類。海布學習規則與“條件反射”機理一致,為以後的神經網路學習演算法奠定了基礎,具有重大的歷史意義。
20世紀50年代末,在MP模型和海布學習規則的研究基礎上,美國科學家羅森布拉特發現了一種類似於人類學習過程的學習演算法——感知機學習[3]。並於1958年,正式提出了由兩層神經元組成的神經網路,稱之為“感知器”。感知器本質上是一種線性模型,可以對輸入的訓練集資料進行二分類,且能夠在訓練集中自動更新權值。感知器的提出吸引了大量科學家對人工神經網路研究的興趣,對神經網路的發展具有里程碑式的意義。
但隨著研究的深入,人們發現了感知器模型所存在的不足,它甚至無法解決最簡單的線性不可分問題(例如異或問題)。由於這一不足以及沒有及時推廣感知器到多層神經網路中,在20世紀70年代,人工神經網路進入了第一個寒冬期,人工神經網路的發展也受到了很大的阻礙甚至質疑。
- 深度學習的發展階段
直到1986年,深度學習之父傑弗裡·辛頓提出了一種適用於多層感知器的反向傳播演算法——BP演算法[3]。BP演算法在傳統神經網路正向傳播的基礎上,增加了誤差的反向傳播過程。反向傳播過程不斷地調整神經元之間的權值和閾值,直到輸出的誤差達到減小到允許的範圍之內,或達到預先設定的訓練次數為止。BP演算法解決了非線性分類問題,讓人工神經網路再次引起了人們廣泛的關注。
但是由於八十年代計算機的硬體水平有限,運算能力跟不上,以及當神經網路的層數增加時,BP演算法會出現“梯度消失”的問題等等。這使得BP演算法的發展受到了很大的限制。再加上90年代中期,以SVM為代表的其它淺層機器學習演算法被提出,並在分類、迴歸問題上均取得了很好的效果,其原理相較於神經網路模型具有更好的可解釋性,所以人工神經網路的發展再次進入了瓶頸期。
- 深度學習的爆發階段
2012年,在著名的ImageNet影象識別大賽中,傑弗裡·辛頓領導的小組採用深度學習模型AlexNet一舉奪冠[5]。AlexNet採用ReLU啟用函式,極大程度上上解決了梯度消失問題,並採用GPU極大的提高了模型的運算速度。同年,由斯坦福大學著名的吳恩達教授和世界頂尖計算機專家Jeff Dean共同主導的深度神經網路——DNN技術在影象識別領域取得了驚人的成績,在ImageNet評測中成功的把錯誤率從26%降低到了15%。深度學習技術在世界大賽的脫穎而出,又進一步吸引了學術界和工業界對於深度學習領域的關注。
隨著深度學習技術的不斷進步以及計算機硬體算力的不斷提升,2014年,Facebook基於深度學習技術的DeepFace專案,在人臉識別方面的準確率已經能達到97%以上,跟人類識別的準確率幾乎沒有差別。這樣的結果也再一次證明了深度學習技術在影象識別方面的一騎絕塵。
2016年,谷歌公司基於深度強化學習開發的AlphaGo以4:1的比分戰勝了國際頂尖圍棋高手李世石,深度學習的熱度一時無兩。後來,AlphaGo又接連和眾多世界級圍棋高手過招,均取得了完勝。這也證明了在圍棋界,基於深度學習技術的機器人幾乎已經超越了人類。
2017年,基於深度強化學習技術的AlphaGo升級版AlphaGo Zero橫空出世。其採用“從零開始”、“無師自通”的學習模式,以100:0的比分輕而易舉打敗了之前的AlphaGo。除了圍棋,它還精通國際象棋等其它棋類遊戲,可以說是真正的棋類“天才”。此外在這一年,深度學習相關技術也在醫療、金融、藝術、無人駕駛等多個領域均取得了顯著的成果。所以,也有專家把2017年看作是深度學習甚至是人工智慧發展最為突飛猛進的一年。
深度學習發展到今天已經越來越趨於成熟,尤其是影象方面。無論是科研還是應用,大家也越來越理性,而不是像早些時候,把深度學習視為“萬能的”,盲目的去跟風。當然,這一領域也還有許多問題需要解決,還有很多有趣、有挑戰性的方向可以研究。
圖1 深度學習發展簡史
二.深度學習的應用作為機器學習發展到一定階段的產物,近年來深度學習技術之所以能引起社會各界廣泛的關注,是因為不光在學術界,同時也在工業界取得了重大突破和廣泛的應用。其中應用最廣的幾個研究領域分別是自然語言處理、語音識別和影象處理。接下來,我們分別來看一下這三個領域的發展現狀:
- 自然語言處理
從演算法上來看,詞向量(word vector)作為深度學習演算法在自然語言領域的先驅,有著及其廣泛的應用場景,在機器翻譯、情感分析等方面均取得了不錯的效果。其基本思想是把人類語言中的詞儘可能完整地轉換成計算機可以理解的稠密向量,同時要保證向量的維度在可控的範圍之內,在Bahdanau等人利用LSTM[8]模型結合一些自定義的語料,解決了傳統模型的Out of dictionary word問題之後,更使得基於深度學習的自然語言處理較於傳統方法有明顯的優勢。目前,基於深度學習的自然語言處理在文字分類、機器翻譯、智慧問答、推薦系統以及聊天機器人等方向都有著極為廣泛的應用。
- 語音識別與合成
事實上,在深度學習演算法還未普及之前的很長一段時間,語音識別系統大多采用高斯混合模型(GMM)這一機器學習淺層模型完成資料的量化和建模。由於該模型可以精確地量化訓練集並對資料有較好的區分度,所以長期在語音識別領域占主導地位。直到2011年,微軟公司推出了基於深度學習的語音識別系統,模擬人類大腦分層對資料特徵進行提取,使得樣本特徵之間的聯絡更加密切,完美的克服了GMM[9]模型處理高維資料方面的不足。直到今天,基於深度神經網路的模型仍然廣泛應用在語音相關的各個領域中。
- 影象領域
三.參考文獻
[1] A Logical Calculus of the Ideas Immanent in Nervous Activity . Warren S. McCulloch. Walter Pitts.1943
[2] Organization of Behavior: A Neuropsychological Theory . Donald Hebb . 1949
[3] Learning Internal Representations by Error Propagation . Rumelhart.1986
[4] Reducing the dimensionality of data with neural networks . Hinton.2006
[5]Imagenet classification with deep convolutional neural networks. Hinton.2012
[6] ImageNet Classification with Deep Convolutional Networks. Yann LeCun .1998
[7] Supervised Sequence Labelling with Recurrent Neural Networks. Alex Graves .2008
[8] Learning to forget: continual prediction with LSTM. FA Gers , J Schmidhuber , F Cummins . 2014
[9] A finite sample correction for the variance of linear efficient two-step GMM estimators. F Windmeijer.2000