1.0 引言
1.1 目的
1.2 背景
2.0 方法
2.1 階段
3.0 人工智慧中的技術
3.1 問題求解(搜索)
3.2 知識、推理與規劃
3.2.1 邏輯
3.2.2 規劃
3.2.3 知識表徵和推理
3.2.4 概率模型
3.3 學習
3.3.1 決策樹/決策規則學習
3.3.2 支持向量機
3.3.3 K-最近鄰
3.3.4 集成學習
3.3.5 回歸分析
3.3.6 神經網絡
3.3.7 強化學習
3.3.8 聚類分析
3.3.9 關聯規則學習
3.3.10 推薦系統
3.4 通訊、感知與行動
3.4.1 信息檢索
3.4.2 文本挖掘/分類
3.4.3 信息抽取
3.4.4 機器翻譯
3.4.5 語音識別
3.4.6 計算機視覺
3.4.7 機器人
4.0 總結和影響
參考文獻
1.1 目的
本報告的目的是縱覽人工智慧(AI)的分支技術,明晰它們的發展路徑,從而讓讀者能夠更加準確和全面地了解人工智慧研究領域的過去、現在和未來。
1.2 背景
人們很容易混淆人工智慧和機器學習(甚至深度學習),覺得它們是一樣的。這是一個很大的誤解。除了流行的神經網絡模型之外,人工智慧的歷史可以追溯到 1956 年,在達特茅斯那場名為「達特茅斯人工智慧夏季研究項目(Dartmouth Summer Research Project on Artificial Intelligence)」的研討會上,「人工智慧(Artficial Intelligence)」(AI)這一術語被首次提出,人工智慧研究領域也就此形成[1]。
本報告所討論的「人工智慧」主要是指可以通過機器體現的智能(也叫做機器智能(Machine Intelligence))。在學術研究領域,就是指能夠感知周圍環境並採取行動以實現最優的可能結果的智能體(intelligent agent) [1]。
一般而言,人工智慧的長期目標是實現通用人工智慧(AGI),這被看作
是「強人工智慧(strong AI)」。在處理交叉領域問題時,AGI 的表現會遠遠超過普通的機器,並且它還能同時處理多個任務。而弱人工智慧(weak AI,也被稱為「狹隘人工智慧(narrow AI)」)無法解決之前未見過的問題,而且其能力僅局限在特定的領域內。但是,人工智慧專家和科學家現在對 AGI 的確切定義仍然含混不清。區別強人工智慧和弱人工智慧的常見方法是進行專業測試,比如咖啡測試、圖靈測試、機器人大學生測試和就業測試 [28]。
本報告所討論的「技術(technology)」是一個廣泛的概念,包含了人工智慧領域所使用的方法、算法和模型,我們將使用「技術」一詞指代這三者。
與人工智慧相關的工作可以追溯到 20 世紀 40 年代,那時候 Warren McCulloch 和 Walter Pitts 的研究表明可以通過互連的神經元網絡執行計算,Donald Hebb 也演示了赫布學習(Hebbian learning)。1956年,當「人工智慧(AI)」這一術語正式成型的時候,相應的研究也開始快速發展。那時候,人工智慧還主要被用於問題求解。儘管在 20 世紀 60 年代和 70 年代期間,神經網絡緩慢的發展速度和有限的進展受到過批評,但專家系統的出現維持了人們對人工智慧的興趣和相關研究的增長。不久之後,在 20 世紀 80 年代,因為大多數人工智慧研究都無法實現它們原先過度的承諾,對人工智慧研究的資助也流向了其它領域,由此人工智慧學術研究步入了所謂的「人工智慧冬天(AI Winter)」[1]時期。幸運的是,聯結主義者重新發明的反向傳播將神經網絡帶回了舞臺。在 20 世紀 90 年代,研究者開始應用概率模型等更科學的方法;與此同時,支持向量機(SVM)在很多領域都超過並取代了神經網絡。不久之後就進入了嶄新的21世紀,大數據的時代到來了,這幫助研究者開發了多種學習算法,使得深度學習在近些年來得到了蓬勃發展。關注人工智慧研究的團隊越來越多,在專注人工智慧的頂級會議(比如 AAAI、IJCAI、AUAI 和 ECAI)上發表的論文也急劇增長。(專注於那些範圍更小的研究主題的會議將在第 3 節進行介紹。)
在第 2 節中,我們將介紹設置的研究方法和標準。在第 3 節中,我們將討論多種人工智慧技術。對於每種人工智慧技術,我們都確定了當前所處的發展階段並進行了詳細討論,並且還簡要概述了相應歷史或主要事件。此外,我們還將從各種角度分析每種技術的瓶頸和未來。本報告不包含技術細節,但提供了一般性的概述,並希望能根據發展歷史確定它們之間的關係。在第 4 節本報告的結尾,我們將討論人工智慧技術的一些影響和局限。
我們研究的主要方法和信息來源是查閱文獻。對於我們覆蓋的每種技術,我們都參考了最新的文章、新聞和論文,以幫助確定當前所處的發展階段。此外,通過研究之前發表的文獻,我們也討論了與特定技術相關的主要事件。
除了定性地查閱文獻,我們也使用了一種量化方法來幫助讀者理解每種技術的普及程度和成長情況。我們分析了研究者的數量、期刊、出版物、會議、組織、知名獎項授予和對應的資助情況。我們也對適用的案例使用了谷歌趨勢工具來大概了解公眾對特定技術的認識情況。
2.1 階段
技術發展階段的分類學方法有很多,目前常用的是技術生命周期(Technology Life Cycles)方法,其中也包括「衰落」階段。但是,對於這份針對人工智慧技術的研究報告而言,我們沒有考慮「衰落」階段。我們認為儘管一種特定技術的發展可能會在某個時候停滯,但其發展(在科學進步方面看)不會退步;對技術「衰退」的引證通常是在商業角度上考量的。根據我們對 [20][21][22][23] 等多個信息來源的評估和分析,我們確定了人工智慧技術發展將會經歷的四個周期:研究、工程、應用和社會影響。這裡給出了每個階段的詳細定義,以作為未來詳細分析的範式:
註:實際上這裡涵蓋了很多技術的子類別,而我們將它們當作一個整體來確定它們的發展階段。一旦有特定的跡象說明一種技術已到達特定階段,那麼整個技術類別都將被置於該階段——儘管對該技術可能還有一些持續性的研究、工程或應用工作。
根據書籍、論文、博客、視頻和 MOOC(大型開放式網絡課程)等介紹性材料,我們發現 Stuart J. Russell 和 Peter Norvig [1] 合著的經典教材《人工智慧:一種現代方法》最有幫助。根據這些材料,我們確定了 23 種不同的人工智慧技術並將它們分成了 4 大領域:
問題求解(搜索)
知識、推理與規劃
學習
通訊、感知與行動
我們根據這23種技術在人工智慧領域內的基本機制、方法和應用相似度進行了分類。這些分類並不是互斥的。你可以將它們看作是人類具有的能力,每種能力都有不同的功能,共同協作才能實現更高級更複雜的目標。
3.1 問題求解(搜索)
搜索算法的歷史始於 20 世紀 50 年代人工智慧的孕育時期,那時候人們關注的重點是問題求解。「搜索(search)」這個術語在人工智慧領域內的意思主要是指驅動計算機/智能體的搜索算法,它們可以使計算機以人類的方式求解各種問題。搜索算法一般可以分成兩類:無信息(uninformed)搜索和有信息(in-formed)搜索。其中有信息啟發式搜索是相當流行的,因為它能根據一些指示快速找到解答。這一類別中包含一種最受歡迎的搜索算法:A*搜索。A*搜索可被定義為是一種(貪婪)最佳優先搜索((greedy) best-first search)。其它的啟發式(有信息)搜索算法還包括遞歸最佳優先搜索(RBFS)、簡化有限內存 A*(Simplified Memory-Bounded algorithm/SMA*)、蒙特卡洛樹搜索(MCTS)和束搜索(Beam Search)。無信息搜索算法包括寬度優先搜索、深度優先搜索、深度限制搜索、雙向搜索和迭代深化搜索。啟發式搜索算法有一個特定類別是局部搜索算法,其對於約束滿足問題(CSP)[26]尤其有效。流行的本地搜索算法還包括爬山算法、模擬退火算法、局部束搜索和遺傳算法(隨機束搜索的變體)。
關於上面提到的約束滿足問題(CSP),其求解通過滿足一組特定約束條件的變量來表示。這是一個在人工智慧和運籌學領域都非常熱門的研究課題。局部搜索算法可用於解決這類問題,其中使用最小衝突啟發式的局部搜索在解決 CSP 方面取得了不小的成功。除此之外,相關的技術還包括回溯搜索算法(一種深度優先搜索算法)以及樹分解技術。
除了用於傳統優化問題的單智能體搜索之外,還有專注於「針對不同一方進行規劃」的搜索算法(例如競爭性博弈問題),這種算法被稱為對抗搜索算法(adversarial search algorithm)。對抗搜索問題的經典算法包括極小極大(Minimax)搜索和 α-β 剪枝。
主要事件:
當前階段:因為對抗搜索技術已經在遊戲博弈領域廣泛應用很長時間了,所以用於問題求解的搜索算法的發展階段被確定為應用階段。
瓶頸:儘管不同的搜索算法都有應用,但目前搜索算法技術還沒有明確直接的商業化解決方案。
未來:隨著深度學習的發展,與搜索算法進行整合是很有前景的(比如使用深度強化學習的MCTS)。最近,整合了一些對抗搜索元素的生成對抗網絡(GAN)大受歡迎。可以預見,未來將會有更多智能體出現在更多不同的應用領域。
會議:
3.2 知識、推理與規劃
這個技術類別可以幫助機器構建知識庫,並讓它們像人類一樣進行推理和規劃。這裡討論的技術包括邏輯、規劃、知識表徵(專家系統)和概率模型。
3.2.1 邏輯
人工智慧領域用邏輯來理解智能推理問題;它可以提供用於分析程式語言的技術,也可用作分析、表徵知識或編程的工具。目前人們常用的邏輯分支有命題邏輯(Propositional Logic )以及一階邏輯(FOL)等謂詞邏輯。
主要事件:
當前階段:邏輯不僅已經對人類心智產生了根本性的影響,也極大地影響了對機器的設計,所以邏輯的發展階段被確定為社會影響階段。當在谷歌趨勢上搜索「logic」時,我們可以看到和「人工智慧」相比,人們對邏輯的興趣一直很高;而從谷歌學術上收集的數據也反映出了類似的結果。當然,這並不奇怪,因為在人工智慧出現很久之前,邏輯就已經是一大學科了。人類會使用邏輯來解決日常生活中的很多問題(包括程序設計),而機器也要使用邏輯來理解和執行命令。
瓶頸:邏輯所面臨的瓶頸不是其在人工智慧領域的應用,而是其內在的局限性,比如為邏輯推理設定的假設是否正確。
未來:克服邏輯本身固有的局限性並不容易,但邏輯在人工智慧領域的應用還會得到擴展。比如說,邏輯學與機器人的整合可以給我們帶來「家用的亞里斯多德」,為我們答疑解惑,成為我們的朋友和導師。
會議:
3.2.2 規劃
人工智慧領域的「規劃」通常是指智能體執行的任務/動作的自動規劃和調度,其目的是進行資源的優化。常見的規劃方法包括經典規劃(Classical Planning)、分層任務網絡(HTN)和 logistics 規劃。
主要事件:
當前階段:規劃技術已經實現了很多發展,並且也已經贏得了廣泛的公眾認知。它目前正處於成熟階段,且類似於邏輯的出現和發展。我們認為規劃當前正處於社會影響的發展階段,因為它已經在社會中無處不在,而且對社會的運作有重大的影響。
瓶頸:規劃的天生之敵是不確定性,這個問題有可能摧毀通過規劃設計的整個流程。
未來:規劃的未來發展方向可能是智能風險管理領域,另外也可以預見規劃在醫學和機器人領域的應用。
會議:國際自動規劃與調度會議(International Conference on Automated Planning and Scheduling / ICAPS)
3.2.3 知識表徵和推理
知識表徵(KR)研究的是如何表徵有關世界的事實,也被稱作本體工程( Ontological Engineering)。知識表徵和推理的一個早期成功應用是專家系統,即帶有推理引擎的知識庫。本節也將涵蓋本體論和語義網/語義網絡(Semantic Webs/Networks)的發展。
主要事件:
當前階段:知識表徵的基礎最早在 1959 年開始得到探索,那時候研究者發明了GPS(通用問題解算器)系統。自那以後,知識表徵得到了很大的發展。因為過去幾十年來出現了很多研究和工程開發,在專家系統商業化之後知識表徵就已經進入了應用階段。但是,在本體論、描述邏輯和語義網絡領域,知識表徵仍舊處於工程階段,因為其中的技術大都處於原型開發階段,並且在各種教育機構中被作為開源項目使用。當使用谷歌趨勢搜索關鍵詞「Knowledge Representation」和「Expert System」時,可以看到在 2004 年到 2006 年之間,專家系統和知識表徵之間存在很大的差距。相比於知識表徵的應用專家系統,知識表徵本身所得到的研究關注相對更加穩定。
瓶頸:
未來:
會議:
國際知識表徵與推理原理會議(International Conference on Principles of Knowledge Representation and Reasoning /KR)
人工智慧中的不確定性會議(Conference on Uncertainty in Artificial Intelligence/UAI)
國際資料庫與專家系統應用會議(International Conference on Database and Expert Systems Applica- tions /DEXA)
3.2.4 概率模型
概率模型是用於描述不同變量之間的不確定概率關係的數學模型。之前的章節(3.2.1~3.2.3)主要討論的是對某些知識的推理,而概率模型則主要是基於概率理論進行不確定的知識推理和推導。用於人工智慧的概率模型包括期望最大化法(EM)、卡爾曼濾波器(1960,Rudolf Kalman)、粒子濾波(自 1969 年以來)和隱狄利克雷分布(LDA)。本節將討論兩個最受歡迎的概率模型家族:貝葉斯模型和馬爾可夫模型。
3.2.4.1 貝葉斯模型
貝葉斯模型基於貝葉斯定理,即:
經典的貝葉斯模型包括樸素貝葉斯、貝葉斯網絡和動態貝葉斯網絡(DBN);它們主要用於基於給定條件查找事件的概率。
主要事件:
當前階段:貝葉斯模型的發展始於 1763 年貝葉斯定理的出現。經過近二百年的研究和實驗,貝葉斯模型在 1941 年後進入了應用階段。此時正值第二次世界大戰,貝葉斯定理在密碼破譯中得到了應用。現在,貝葉斯模型在各種模型中得到了廣泛應用,比如垃圾消息過濾(樸素貝葉斯)、保險損失預測和客戶行為推斷。現在還有一些應用貝葉斯模型進行 HIV 預測的研究[29]。
瓶頸:
如果假設太複雜,貝葉斯網絡的效果會很差。因為當前狀態取決於之前所有的狀態,所以它事先可能就會包含大量變量,計算這些變量需要大量內存。
當使用樸素貝葉斯模型時,如果變量之間是高度相關的,那就會生成誤導性的結果。
作為已知條件的先驗假設在得到最終結果上發揮著重要的作用。但是,確定先驗假設有時候是很困難和耗時的。
未來:如果能找到一種解決方案,讓模型的計算可以使用更加無偏差和合理的先驗條件,那麼就能降低計算成本,使貝葉斯模型的估計和預測更加值得信任,並將其應用到更多領域。
會議/組織:
計量經濟學與統計學中的貝葉斯推理研討會(Seminar on Bayesian Inference in Econometrics and Sta- tistics/SBIES)
貝葉斯非參數會議(The Bayesian nonparametrics conference /BNP)
Bayesian,Fiducial, and Frequentist Conference (BFF)
國際貝葉斯分析協會(International Society for Bayesian Analysis/ISBA)
3.2.4.2 馬爾可夫模型
「馬爾可夫模型」是指基於馬爾可夫性質的模型,其假設一個給定過程的未來狀態僅取決於當前狀態。根據系統狀態是否完全可被觀測以及系統是自動的還是受控的,可以將常見的馬爾可夫模型分成四種:馬爾可夫鏈、隱馬爾可夫模型(HMM)、馬爾可夫決策過程(MDP)和部分可觀測馬爾可夫決策過程(POMDP)。另外馬爾可夫隨機場(MRF)和馬爾可夫鏈蒙特卡洛(MCMC)這兩個模型也常常被用於近似和預測。
主要事件:
當前階段:自 1906 年馬爾可夫鏈出現以來,馬爾可夫模型已經得到了數十年的研究,並在 20 世紀 70 年代早期進入了應用階段——HMM在語音識別領域得到了應用。現在,這些模型在人工智慧的不同領域有著廣泛的應用,比如預測輸入的詞(馬爾可夫鏈)、語音識別(HMM)和強化學習(MDP、POMDP)。
瓶頸:
未來:在不久的將來,會有改善收斂速度的新模型/算法出現。也許會有新方法能幫助我們清晰準確地確定狀態之間的依賴關係和過渡概率。因此,馬爾可夫模型可以在更多領域和有更多目標客戶的行業得到應用。
會議:科學計算中的蒙特卡洛和準蒙特卡洛方法國際會議(International Conference on Monte Carlo and Quasi-Monte Carlo Methods in Scientific Computing/MCQMC)
3.3 學習
「學習」代表機器學習技術,有時候也被稱為模式識別、數據挖掘或資料庫知識發現(KDD)。這一節將涵蓋決策樹/決策規則學習、支持向量機(SVM)、K-最近鄰(KNN)、集成學習、回歸分析和神經網絡等監督學習技術。注意貝葉斯分類器(Bayesian Classifiers)也是一種監督學習方法,但因為前面的章節已經討論過了,所以在此略過。深度學習將包含在神經網絡那一部分中。聚類分析作為一種典型的無監督學習技術也將被包括。此外,本節還將涉及強化學習、關聯規則學習和推薦系統。專注這一領域的頂級會議包括COLT、ICML、ICLR和SIGKDD,細分領域的會議將在對應章節被提及。
3.3.1 決策樹/決策規則學習
決策樹/決策規則學習是一種決策支持工具,使用了樹狀圖來模擬決策和對應結果。它的現實應用包括業務管理、客戶關係管理和欺詐檢測。最流行的決策樹算法包括ID3、CHAID、CART、QUEST和C4.5。
主要事件:
當前階段:根據谷歌趨勢和谷歌學術的數據,C4.5仍然是各種決策樹學習算法中最受關注和相關論文數量最多的。因此我們可以將其看作是單決策樹學習應用中最流行的算法。過去幾十年來,決策樹已經在很多不同行業領域得到了應用,為管理和決策提供支持。決策樹也可以為欺詐檢測和故障診斷提供幫助[32]。因此,我們將決策樹/決策規則學習劃在應用階段。
瓶頸:
未來:
3.3.2 支持向量機
支持向量機(SVM)是一種二元分類模型,它的目的是找到具有最大餘量的線或超平面,從而將數據分開。它既可以用於分類任務,也能用於回歸任務。SVM的應用包括手寫數字識別、目標識別、預測金融時間序列和蛋白質分類。
主要事件:
當前階段:對 SVM 的研究已經持續了大約半個世紀。因為 SVM 已經有相當多的應用,而且也有「早期採用者」開始在商業應用中使用SVM,所以我們將 SVM 分類到應用階段。
瓶頸:
未來:該算法可能會得到簡化,對核函數的更多研究將能讓 SVM 發揮更多潛能。
—上期完—
關注「機器之心」百家號,進入個人主頁快速查找《一文縱覽人工智慧的23個分支技術(下)》。