從2016年開始,業界忽然針對機器學習和人工智能的追捧大行其道,其中更以Google推出的AlphaGo程序在2016年3月以4:1大勝韓國九段圍棋選手李世石;2016年歲末,在國內棋類網站弈城網上出現了一個類似“圍棋上帝”的賬號(“圍棋上帝”是指每一步都絕對正確,每一步都絕對算到,洞悉全局的一切),在2016年12月29日至31日的3天時間里,神秘高手連勝柯潔九段、陳耀燁九段、樸廷桓九段、羋昱廷九段、唐韋星九段等高手。
2017年初, AlphaGo化身神秘網絡棋手Master擊敗包括聶衛平、柯潔、樸廷桓、井山裕太在內的數十位中日韓圍棋高手,在30秒一手的快棋對決中無一落敗, 拿下全勝戰績,在棋界和科技界引發劇震。
AlphaGo的勝利充分讓世人認識到了AI(Artifical Intelligence)的威力和未來,于是人工智能忽然之間離我們近在咫尺;對于我們大部分人來說,到底什么是人工智能?它是忽然之間冒出來的新概念嗎?接下來筆者將為各位讀者梳理一下其發展的路徑以及歷程以及主要的關鍵詞。
伴隨著信息化時代的降臨,人類第一次有了數據化的概念和積累;基于數據庫系統和應用程序,可以直觀查看統計分析系統中的數據,從而可以很快得到我們想要的結果;這個就是最基本的數據分析功能,也是我們在信息化時代了,除了重構業務流程、提升行業效率和降低成本之外,另一個非常重要的數據分析功能,數據直觀化。
舉例如下,在財務系統的信息化中,基于企業的財務系統,我們可以直觀獲取企業現金流量表、資產負債表和利潤表,這些都來自與我們的數據分析技術。目前常用的軟件是Excel, R, Python等工具。
簡稱KDD,從其英文縮寫中可以發現,其是基于數據庫系統的數據發現過程,立足與數據分析技術之上,提供更為高端和高級的規律趨勢發現以及預測功能;同時數據量將變得更為龐大,依賴于模式識別等計算機前沿的技術;其還有另外一個名稱為商業智能(BI, Business Intelligence),依托于超大型數據庫以及數據倉庫、數據集市等數據庫技術來完成。
主要的應用領域在電子商務領域,主要的原因是電商時代其有迫切的數據挖掘的需求和應用場景,比如經典的啤酒與尿布的關聯性就是電商應用中的一個例子。
主要挖掘方法有: 分類 (Classification), 估計(Estimation), 預測(Prediction), 相關性分組或關聯規則(Affinity grouping or association rules), 聚類(Clustering), 復雜數據類型挖掘(Text, Web ,圖形圖像,視頻,音頻等)等技術。
此時的數據挖掘不足之處主要集中在數據庫系統對于數據的檢索分析能力支持有限,數據處理能力的不足大大限制了商業應用的進行,大部分場景下都是基于數據抽樣的分析;同時挖掘應用需要進行定制化的開發,開發和維護成為即為昂貴,應用領域非常的狹小。
這個時代主要的數據挖掘的解決方案主要集中在BI之上,主要來自于Oracle, IBM, Microsoft等數據庫廠商的解決方案。
隨著2006年以Hadoop為代表的大數據技術的蓬勃興起,解決了數據庫時代的數據存儲和處理能力的不足限制;云計算技術的大規模應用,比如Amazon和阿里云為代表的云計算廠商,將處理能力和計算能力的成本大大降低,從而讓大規模的集群計算系統變得非常廉價;從而將針對數據的分析拓展至全量的數據分析,而非數據抽樣。另外一個方面是將從前在數據挖掘時代無法應用的算法和思路變成了可能。這個時代ML(Machine Learning)逐漸取代數據挖掘,成為火熱的關鍵詞。
那機器學習與數據挖掘的關系是什么呢? 機器學習是建立在數據挖掘技術之上發展而來,結合大數據技術(Hadoop, MapReduce, Spark/Storm等),逐步開發和應用了若干新的分析方法逐步演變而來形成的;這兩個領域彼此之間交叉滲透,彼此都會利用對方發展起來的技術方法來實現業務目標,數據挖掘的概念更廣一下,機器學習只是數據挖掘領域中的一個新興分支與細分領域,只不過基于大數據技術讓其逐漸成為了當下顯學和主流。
以下是摘在百度知道的定義:機器學習(Machine Learning, ML)是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、算法復雜度理論等多門學科。專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的性能。它是人工智能的核心,是使計算機具有智能的根本途徑,其應用遍及人工智能的各個領域,它主要使用歸納、綜合而不是演繹。
上述定義的核心是嘗試基于計算機系統來模擬人類的學習行為,從而獲取新的知識與技能;換句話說,機器學習可以發展我們人類未曾發現的知識和規律,學習到人類從未掌握的技能;這是一個非常驚人的進步,超越人類的認知極限,從而引領人類進入了一個嶄新的機器時代。
機器學習已經有了十分廣泛的應用,例如:數據挖掘、計算機視覺、自然語言處理、生物特征識別、搜索引擎、醫學診斷、檢測信用卡欺詐、證券市場分析、DNA序列測序、語音和手寫識別、戰略游戲和機器人運用。在我們當下的生活中,語音輸入識別、手寫輸入識別等技術,識別率相比之前若干年的技術識別率提升非常巨大,達到了將近97%以上,大家可以在各自的手機上體驗這些功能,這些技術來自于機器學習技術的應用。Google Translate技術據說已經達到了類比人工翻譯的準確程度,兼具“信達雅”的特性,能做到這一點就來自于Google對其進行了大量語言學習的訓練而成的。
機器學習主要以監督學習(supervised learning)、無監督學習(unsupervised learning)、半監督學習和強化學習等形式。下面我們簡要介紹以下這幾種學習形式的基本內容:
監督學習是 對具有概念標記(分類)的訓練樣本進行學習,以盡可能對訓練樣本集外的數據進行標記(分類)預測。這里,所有的標記(分類)是已知的。監督學習是訓練神經網絡和決策樹的最常見技術。這兩種技術(神經網絡和決策樹)高度依賴于事先確定的分類系統給出的信息。
在非監督式學習中,數據并不被特別標識,學習模型是為了推斷出數據的一些內在結構。常見的應用場景包括關聯規則的學習以及聚類等。常見算法包括Apriori算法以及k-Means算法。
在此學習方式下,介于監督學習和半監督學習之間。輸入數據部分被標識,部分沒有被標識,這種學習模型可以用來進行預測,但是模型首先需要學習數據的內在結構以便合理的組織數據 來進行預測。應用場景包括分類和回歸,算法包括一些對常用監督式學習算法的延伸,這些算法首先試圖對未標識數據進行建模,在此基礎上再對標識的數據進行預 測。如圖論推理算法(Graph Inference)或者拉普拉斯支持向量機(Laplacian SVM.)等。
在這種學習模式下,輸入數據作為對模型的反饋,不像監督模型那樣,輸入數據僅僅是作為一個檢查模型對錯的方式,在強化學習下,輸入數據直接反饋 到模型,模型必須對此立刻作出調整。常見的應用場景包括動態系統以及機器人控制等。常見算法包括Q-Learning以及時間差學習(Temporal difference learning)。
以上幾種學習形式,目前使用最多的是監督學習和非監督學習模式,在自然語言處理(NLP),圖形圖像識別等領域應用甚廣。強化學習更多的應用在機器人控制及其他需要進行系統控制的領域。
此類的技術解決方案在Python, R都提供了相應的機器學習的算法實現,比如scikit-learn和R中的內置算法實現。
深度學習是機器學習研究中的一個新的領域,其動機在于建立、模擬人腦進行分析學習的神經網絡,它模仿人腦的機制來解釋數據,例如圖像,聲音和文本。深度學習的概念源于人工神經網絡的研究。含多隱層的多層感知器就是一種深度學習結構。深度學習通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發現數據的分布式特征表示。晦澀難懂的概念,略微有些難以理解,但是在其高冷的背后,卻有深遠的應用場景和未來。
那深度學習和機器學習是什么關系呢? 深度學習是實現機器學習的一種方式和一條路徑。其核心是模擬和學習人類大腦的神經元工作方式,比如其按特定的物理距離連接;而深度學習使用獨立的層、連接,還有數據傳播方向,比如最近大火的卷積神經網絡是第一個真正多層結構學習算法,它利用空間相對關系減少參數數目以提高訓練性能,讓機器認知過程逐層進行,逐步抽象,從而大幅度提升識別的準確性和效率。
到了當下,經過深度學習技術訓練的機器在識別圖像時比人類更好,比如識別貓、識別血液中的癌細胞特征、識別MRI掃描圖片中的腫瘤。谷歌AlphaGo學習圍棋等等領域,已經超越了人類目前的認知和能力極限。
主要的實現框架包括有:Google的Tensorflow, 源自加州伯克利分校的Caffe, 誕生于蒙特利爾理工學院的Python實現Theano, 來自facebook的Torch, Java版的深度學習框架DeepLearning4j等等不一而足。
人工智能目前在業界是炙手可熱,所有的互聯網公司以及各路大迦們紛紛表態AI將是下一個時代的革命性技術,可與互聯網、移動互聯網時代的變更相媲美;AlphaGo在圍棋領域戰勝人類最頂尖的棋手讓大眾第一次直觀認知到了AI的威力和強大,于是大家都不禁在思考到底什么是人工智能, 它將帶給人類一個什么樣的變化和未來?
1956年,在達特茅斯會議(Dartmouth Conferences)上,計算機科學家首次提出了“AI”術語之時,就設想是否有一天機器可以像人一樣擁有意識(consciousness)、自我(Self)和心智(Mind),隨著計算機工業和科學的飛速發展,曾經的幻想和遙不可及的設想已經可以看到變成現實的曙光。
那人工智能到底是什么呢? 筆者個人的理解是人工智能將學會人腦一樣的思考、分析、推理和學習,具備人類相應的智商和獨立思考能力;進而可能具備自我迭代和進化能力,幫助人類共同進行進化,極大提升目前人類社會的智能化程度。
正如我們曾經看到過的諸多科幻典型中所描述的各類場景,筆者個人也比較認同其中的某些負面的可能性,不如當機器具備類似人類的智能之后,機器智能和人類將如何相處? 如果發生沖突,人類何以控制機器智能,并引導人工智能按照人類的意志來發展? 人類是否有能力控制機器智能的運行機制?等等之類的問題只能有待未來的科學家們來解決。
深度學習、機器學習都是人工智能發展的重要領域,這些技術手段讓人工智能從虛幻逐步變為現實,在帶給人類諸多便利和大幅度的社會效率提升中,即將革命性地改變我們人類社會的進程發展。
深度學習、機器學習的發展帶了許多實際的商業應用,讓虛幻的AI逐步落地,進而影響人類社會發展; 深度學習、機器學習以及未來的AI技術,將讓無人駕駛汽車、更好的預防性治療技術、更發達智能的疾病治療診斷系統、更好的人類生活娛樂輔助推薦系統等,逐步融入人類社會的方方面面。
AI既是現在,也是未來,不再是一種科幻影像和概念,業界變成了人類社會當下的一種存在,不管人類是否喜歡或者理解,他們都將革命性地改變創造AI的我們人類自身;至于未來,沒有人會知道會如何,會不會真得如Matrix中的人類最終被機器所篡養,不得而知;但有一點是確定的,人類孜孜以求的研究和發展,AI時代終將到來。