◎行業研究
原文來源:知乎
一
人工智慧的浪潮正在席捲全球,諸多詞彙時刻縈繞在我們耳邊:人工智慧(Artificial Intelligence)、機器學習(Machine Learning)、深度學習(Deep Learning)。不少人對這些高頻詞彙的含義及其背後的關係總是似懂非懂、一知半解。
為了幫助大家更好地理解人工智慧,這篇文章用最簡單的語言解釋了這些詞彙的含義,理清它們之間的關係,希望對剛入門的同行有所幫助。
圖一 人工智慧的應用
人工智慧:從概念提出到走向繁榮1956年,幾個計算機科學家相聚在達特茅斯會議,提出了「人工智慧」的概念,夢想著用當時剛剛出現的計算機來構造複雜的、擁有與人類智慧同樣本質特性的機器。其後,人工智慧就一直縈繞於人們的腦海之中,並在科研實驗室中慢慢孵化。之後的幾十年,人工智慧一直在兩極反轉,或被稱作人類文明耀眼未來的預言,或被當成技術瘋子的狂想扔到垃圾堆裡。直到2012年之前,這兩種聲音還在同時存在。
2012年以後,得益於數據量的上漲、運算力的提升和機器學習新算法(深度學習)的出現,人工智慧開始大爆發。據領英近日發布的《全球AI領域人才報告》顯示,截至2017年一季度,基於領英平臺的全球AI(人工智慧)領域技術人才數量超過190萬,僅國內人工智慧人才缺口達到500多萬。
人工智慧的研究領域也在不斷擴大,圖二展示了人工智慧研究的各個分支,包括專家系統、機器學習、進化計算、模糊邏輯、計算機視覺、自然語言處理、推薦系統等。
圖二 人工智慧研究分支
但目前的科研工作都集中在弱人工智慧這部分,並很有希望在近期取得重大突破,電影裡的人工智慧多半都是在描繪強人工智慧,而這部分在目前的現實世界裡難以真正實現(通常將人工智慧分為弱人工智慧和強人工智慧,前者讓機器具備觀察和感知的能力,可以做到一定程度的理解和推理,而強人工智慧讓機器獲得自適應能力,解決一些之前沒有遇到過的問題)。
弱人工智慧有希望取得突破,是如何實現的,「智能」又從何而來呢?這主要歸功於一種實現人工智慧的方法——機器學習。
機器學習:一種實現人工智慧的方法機器學習最基本的做法,是使用算法來解析數據、從中學習,然後對真實世界中的事件做出決策和預測。與傳統的為解決特定任務、硬編碼的軟體程序不同,機器學習是用大量的數據來「訓練」,通過各種算法從數據中學習如何完成任務。
舉個簡單的例子,當我們瀏覽網上商城時,經常會出現商品推薦的信息。這是商城根據你往期的購物記錄和冗長的收藏清單,識別出這其中哪些是你真正感興趣,並且願意購買的產品。這樣的決策模型,可以幫助商城為客戶提供建議並鼓勵產品消費。
機器學習直接來源於早期的人工智慧領域,傳統的算法包括決策樹、聚類、貝葉斯分類、支持向量機、EM、Adaboost等等。從學習方法上來分,機器學習算法可以分為監督學習(如分類問題)、無監督學習(如聚類問題)、半監督學習、集成學習、深度學習和強化學習。
傳統的機器學習算法在指紋識別、基於Haar的人臉檢測、基於HoG特徵的物體檢測等領域的應用基本達到了商業化的要求或者特定場景的商業化水平,但每前進一步都異常艱難,直到深度學習算法的出現。
深度學習:一種實現機器學習的技術深度學習本來並不是一種獨立的學習方法,其本身也會用到有監督和無監督的學習方法來訓練深度神經網絡。但由於近幾年該領域發展迅猛,一些特有的學習手段相繼被提出(如殘差網絡),因此越來越多的人將其單獨看作一種學習的方法。
最初的深度學習是利用深度神經網絡來解決特徵表達的一種學習過程。深度神經網絡本身並不是一個全新的概念,可大致理解為包含多個隱含層的神經網絡結構。為了提高深層神經網絡的訓練效果,人們對神經元的連接方法和激活函數等方面做出相應的調整。其實有不少想法早年間也曾有過,但由於當時訓練數據量不足、計算能力落後,因此最終的效果不盡如人意。
深度學習摧枯拉朽般地實現了各種任務,使得似乎所有的機器輔助功能都變為可能。無人駕駛汽車,預防性醫療保健,甚至是更好的電影推薦,都近在眼前,或者即將實現。
三者的區別和聯繫機器學習是一種實現人工智慧的方法,深度學習是一種實現機器學習的技術。我們就用最簡單的方法——同心圓,可視化地展現出它們三者的關係。
圖三 三者關係示意圖
目前,業界有一種錯誤的較為普遍的意識,即「深度學習最終可能會淘汰掉其他所有機器學習算法」。這種意識的產生主要是因為,當下深度學習在計算機視覺、自然語言處理領域的應用遠超過傳統的機器學習方法,並且媒體對深度學習進行了大肆誇大的報導。
深度學習,作為目前最熱的機器學習方法,但並不意味著是機器學習的終點。起碼目前存在以下問題:
深度學習模型需要大量的訓練數據,才能展現出神奇的效果,但現實生活中往往會遇到小樣本問題,此時深度學習方法無法入手,傳統的機器學習方法就可以處理;
有些領域,採用傳統的簡單的機器學習方法,可以很好地解決了,沒必要非得用複雜的深度學習方法;
深度學習的思想,來源於人腦的啟發,但絕不是人腦的模擬,舉個例子,給一個三四歲的小孩看一輛自行車之後,再見到哪怕外觀完全不同的自行車,小孩也十有八九能做出那是一輛自行車的判斷,也就是說,人類的學習過程往往不需要大規模的訓練數據,而現在的深度學習方法顯然不是對人腦的模擬。
深度學習大佬 Yoshua Bengio 在 Quora 上回答一個類似的問題時,有一段話講得特別好,這裡引用一下,以回答上述問題:
這段話的大致意思是,科學不是戰爭而是合作,任何學科的發展從來都不是一條路走到黑,而是同行之間互相學習、互相借鑑、博採眾長、相得益彰,站在巨人的肩膀上不斷前行。機器學習的研究也是一樣,你死我活那是邪教,開放包容才是正道。
結合機器學習2000年以來的發展,再來看Bengio的這段話,深有感觸。進入21世紀,縱觀機器學習發展歷程,研究熱點可以簡單總結為2000-2006年的流形學習、2006年-2011年的稀疏學習、2012年至今的深度學習。未來哪種機器學習算法會成為熱點呢?深度學習三大巨頭之一吳恩達曾表示,「在繼深度學習之後,遷移學習將引領下一波機器學習技術」。但最終機器學習的下一個熱點是什麼,誰又能說得準呢。
二
人工智慧並不是一個新的術語,它已經有幾十年的歷史了,大約從80年代初開始,計算機科學家們開始設計可以學習和模仿人類行為的算法。
在算法方面,最重要的算法是神經網絡,由於過擬合而不是很成功(模型太強大,但數據不足)。儘管如此,在一些更具體的任務中,使用數據來適應功能的想法已經取得了顯著的成功,並且這也構成了當今機器學習的基礎。
在模仿方面,人工智慧專注於圖像識別,語音識別和自然語言處理。人工智慧專家們花費了大量的時間來創建諸如邊緣檢測,顏色配置文件,N-gram,語法樹等。不過,這些進步還不足以達到我們的需求。
傳統的機器學習
機器學習(ML)技術在預測中發揮了重要的作用,ML經歷了多代的發展,形成了具有豐富的模型結構,例如:
線性回歸。
邏輯回歸。
決策樹。
支持向量機。
貝葉斯模型。
正則化模型。
模型集成(ensemble)。
神經網絡。
這些預測模型中的每一個都基於特定的算法結構,參數都是可調的。訓練預測模型涉及以下步驟:
每種模式都有自己的特點,在一些任務中表現不錯,但在其他方面表現不佳。但總的來說,我們可以把它們分成低功耗(簡單)模型和高功耗(複雜)模型。選擇不同的模型是一個非常棘手的問題。
由於以下原因,使用低功率/簡單模型是優於使用高功率/複雜模型:
然而,選擇一個低功率的模型會遇到所謂的「欠擬合」的問題,模型結構太簡單,如果它複雜,就無法適應訓練數據。(想像一下,基礎數據有一個二次方關係:y = 5 * x ^ 2;你無法適應線性回歸:y = a * x + b,不管我們選擇什麼樣的a和b。
為了緩解「不適合的問題」,數據科學家通常會運用他們的「領域知識」來提出「輸入特徵」,這與輸出關係更為直接。(例如,返回二次關係y = 5 * square(x),如果創建了一個特徵z = x ^ 2,則可以擬合線性回歸:y = a * z + b,通過選擇a = 5和b = 0)。
機器學習的主要障礙是特徵工程這個步驟,這需要領域專家在進入訓練過程之前就要找到非常重要的特徵。特徵工程步驟是要靠手動完成的,而且需要大量領域專業知識,因此它成為當今大多數機器學習任務的主要瓶頸。
換句話說,如果我們沒有足夠的處理能力和足夠的數據,那麼我們必須使用低功耗/更簡單的模型,這就需要我們花費大量的時間和精力來創建合適的輸入特徵。這是大多數數據科學家今天花時間去做的地方。
神經網絡的回歸
在大數據時代,雲計算和大規模並行處理基礎架構的共同發展,使得機器處理能力在二十一世紀初得到了極大的提升。我們不再局限於低功耗/簡單的模型。例如,當今最流行的兩種主流機器學習模型是隨機森林和梯度提升樹。儘管如此,兩者都非常強大,並且提供了非線性模型擬合的訓練數據,但數據科學家仍然需要仔細地創建特徵以獲得良好的性能。
與此同時,計算機科學家重新使用神經網絡的許多層來完成這些人類模仿的任務。這給DNN(深度神經網絡)帶來了新的生機,並在圖像分類和語音識別任務方面提供了重大突破。DNN的主要區別在於,你可以將原始信號(例如RGB像素值)直接輸入DNN,而不需要創建任何域特定的輸入功能。通過多層神經元(這就是為什麼它被稱為「深度」神經網絡),DNN可以「自動」通過每一層產生適當的特徵,最後提供一個非常好的預測。這極大地消除了尋找「特徵工程」的麻煩,這是數據科學家們最喜歡看到的。
DNN也演變成許多不同的網絡拓撲結構,所以有CNN(卷積神經網絡),RNN(遞歸神經網絡),LSTM(長期短期記憶),GAN(生成敵對網絡),轉移學習,注意模型(attention model)所有的這些被統稱為深度學習(Deep Learning),它正在引起整個機器學習界的關注。
強化學習
另一個關鍵組成部分是關於如何模仿一個人(或動物)的學習,設想感知/行為/獎勵循環的非常自然的動物行為。一個人或者一個動物首先會通過感知他或者她所處的狀態來了解環境。在此基礎上,他或者她會選擇一個「動作」,將他或者她帶到另一個「狀態」。那麼他或她將獲得「獎勵」,循環重複,直到他或她消失。這種學習方式(稱為強化學習)與傳統監督機器學習的曲線擬合方法有很大不同。尤其是,強化學習學習得非常快,因為每一個新的反饋(例如執行一個行動並獲得獎勵)都被立即發送到影響隨後的決定。
強化學習也提供了預測和優化的平滑整合,因為它在採取不同的行動時保持當前狀態的信念和可能的轉換概率,然後做出決定哪些行動可以導致最佳結果。
深度學習+強化學習= AI
與經典的ML技術相比,DL提供了一個更強大的預測模型,通常可以產生良好的預測結果。與經典優化模型相比,強化學習提供了更快的學習機制,並且更適應環境的變化。
機器學習 vs 深度學習
在深度探討machine learning和data science的聯繫之前,這裡簡要地討論一下machine learning 和deep learning。machine learning是一套算法,來訓練數據集做預測或者採取行動以使得系統最優化。舉例來說,supervised classification algorithms被用來根據歷史數據將想要貸款的客戶分成預期好的和預期差的(good or bad prospects)。
對於給定的任務(比如監督聚類),需要的技術多種多樣:naive Bayes、SVM、neural nets、ensembles、association rules、decision trees、logistic regression,或者是很多技術的組合。所有這些都是數據科學的子集。當這些算法自動化後,比如無人駕駛飛機或者無人駕駛汽車,這就叫AI了,或者說的具體一點,deep learning。如果採集的數據來自傳感器並且通過網際網路傳播,那麼這就是機器學習或數據科學或深度學習應用於物聯網了。
有些人對深度學習有不同的定義,他們認為深度學習是更深層次的神經網絡(一種機器學習的技術)。AI(Artificial Intelligence)是創建於20世紀60年代的計算機科學的一個子領域,是關於解決那些對人類來講非常容易但是對計算機而言很難的任務。值得一提的是,所謂的strong AI可能可以做所有人類可以做的事情(可能除了純粹的物理問題)。這是相當廣泛的,包括各種各樣的事情,比如做計劃,在世界上到處溜達,識別物體和聲音,說話,翻譯,社交或者商業交易,還有創造性工作(比如寫詩畫畫)等等。
NLP(Natural language processing)只是AI要處理的語言部分,尤其是寫。
Machine learning是這樣的一種情況:給出一些可以被以離散形式描述的AI問題(比如從一系列動作中選出對的那個),然後給定一堆外部世界的信息,在不需要程式設計師手動寫程序的情況下選出那個「正確的」行為。
通常情況需要藉助外界的一些過程來判斷這個動作對不對。在數學上,這就是函數:你給一些輸入,然後你想要他處理一下得到正確的輸出,所以整個問題就簡化為用一些自動的方式建立這種數學函數模型。和AI區分一下:如果我寫了一段特別機智的程序有著人類的行為,那這就可以是AI,但是除非它的參量都是自動從數據中學會的,否則就不是機器學習。
Deep learning是當下非常流行的機器學習的一種。它包含一種特殊的數學模型,可以想成是一種特定類型的簡單塊的組合(或者說是塊的功能的組合),這些塊可以進行調整來更好的預測最終結果。
- - - - - - END - - - - - -
| 種子投資 |
|人工智慧 天使基金 |
| BP發送至郵箱:501827084@qq.com |