近年來,人工智能的強勢崛起,特別是去年AlphaGo和韓國九段棋手李世石的人機大戰(zhàn),讓我們深刻地領略到了人工智能技術的巨大潛力。數(shù)據(jù)是載體,智能是目標,而機器學習是從數(shù)據(jù)通往智能的技術、方法途徑。因此,機器學習是數(shù)據(jù)科學的核心,是現(xiàn)代人工智能的本質(zhì)。
通俗地說,機器學習就是從數(shù)據(jù)中挖掘出有價值的信息。數(shù)據(jù)本身是無意識的,它不能自動呈現(xiàn)出有用的信息。怎樣才能找出有價值的東西呢?第一步要給數(shù)據(jù)一個抽象的表示;接著基于表示進行建模;然后估計模型的參數(shù),也就是計算;為了應對大規(guī)模的數(shù)據(jù)所帶來的問題,我們還需要設計一些高效的實現(xiàn)手段,包括硬件層面和算法層面。統(tǒng)計是建模的主要工具和途徑,而模型求解大多被定義為一個優(yōu)化問題或后驗抽樣問題,具體地,頻率派方法其實就是一個優(yōu)化問題。而貝葉斯模型的計算則往往牽涉蒙特卡羅(Monte Carlo)隨機抽樣方法。因此,機器學習是計算機科學和統(tǒng)計學的交叉學科。
借鑒計算機視覺理論創(chuàng)始人馬爾(Marr)的關于計算機視覺的三級論定義,我把機器學習也分為三個層次:初級、中級和高級。初級階段是數(shù)據(jù)獲取以及特征的提取。中級階段是數(shù)據(jù)處理與分析,它又包含三個方面:首先是應用問題導向,簡單地說,它主要應用已有的模型和方法解決一些實際問題,這可以理解為數(shù)據(jù)挖掘;其次,根據(jù)應用問題的需要,提出和發(fā)展模型、方法和算法以及研究支撐它們的數(shù)學原理或理論基礎等,這則是機器學習學科的核心內(nèi)容;第三,通過推理達到某種智能。高級階段是智能與認知,即實現(xiàn)智能的目標。數(shù)據(jù)挖掘和機器學習本質(zhì)上是一樣的,其區(qū)別是數(shù)據(jù)挖掘更接近于數(shù)據(jù)端,而機器學習則更接近于智能端。
統(tǒng)計與計算
今年剛被選為美國科學院院士的卡內(nèi)基梅隆大學統(tǒng)計系教授沃塞曼(Larry Wasserman)寫了一本名字非常霸道的書:《統(tǒng)計學完全教程》(All of Statistics)。這本書的引言部分有一個關于統(tǒng)計學與機器學習非常有趣的描述。沃塞曼認為,原來統(tǒng)計是在統(tǒng)計系,計算機是在計算機系,這兩者是不相來往的,而且互相都不認同對方的價值。計算機學家認為那些統(tǒng)計理論沒有用,不解決問題,而統(tǒng)計學家則認為計算機學家只是在“重新發(fā)明輪子”,沒有新意。然而,他認為現(xiàn)在情況改變了,統(tǒng)計學家認識到計算機學家正在做出的貢獻,而計算機學家也認識到統(tǒng)計的理論和方法論的普遍性意義。所以,沃塞曼寫了這本書,可以說這是一本為統(tǒng)計學者寫的計算機領域的書,為計算機學者寫的統(tǒng)計領域的書。
現(xiàn)在大家達成了一個共識:如果你在用一個機器學習方法,而不懂其基礎原理,這是一件非常可怕的事情。正是由于這個原因,目前學術界對深度學習還是心存疑慮的。盡管深度學習已經(jīng)在實際應用中展示出其強大的能力,但其中的原理目前大家還不是太清楚。
讓我們具體討論計算機與統(tǒng)計學之間的關系。計算機學家通常具有強大的計算能力和解決問題的直覺,而統(tǒng)計學家擅長于理論分析和問題建模,因此,兩者具有很好的互補性。Boosting、支持向量機(SVM)、集成學習和稀疏學習是機器學習界也是統(tǒng)計界在近十年或者是近二十年來最為活躍的方向,這些成果是統(tǒng)計界和計算機科學界共同努力成就的。例如,數(shù)學家瓦普尼克(Vapnik)等人早在20世紀60年代就提出了支持向量機的理論,但直到計算機界于90年代末發(fā)明了非常有效的求解算法,并隨著后續(xù)大量實現(xiàn)代碼的開源,支持向量機現(xiàn)在成為了分類算法的一個基準模型。再比如,核主成分分析(Kernel Principal Component Analysis,KPCA) 是由計算機學家提出的一個非線性降維方法,其實它等價于經(jīng)典多維尺度分析(Multi-Dimensional Scaling,MDS)。而后者在統(tǒng)計界是很早就存在的,但如果沒有計算機界重新發(fā)現(xiàn),有些好的東西可能就被埋沒了。
計算機界和統(tǒng)計界的通力合作,成就了機器學習從20世紀90年代中期到21世紀00年代中期的黃金發(fā)展時期,主要標志是學術界涌現(xiàn)出一批重要成果,比如,基于統(tǒng)計學習理論的支持向量機、隨機森林和Boosting等集成分類方法,概率圖模型,基于再生核理論的非線性數(shù)據(jù)分析與處理方法,非參數(shù)貝葉斯方法,基于正則化理論的稀疏學習模型及應用等等。這些成果奠定了統(tǒng)計學習的理論基礎和框架。
機器學習現(xiàn)在已成為統(tǒng)計學的一個主流方向,許多著名大學的統(tǒng)計系紛紛從機器學習領域招聘教授,比如斯坦福大學統(tǒng)計系新進的兩位助理教授來自機器學習專業(yè)。計算在統(tǒng)計領域已經(jīng)變得越來越重要,傳統(tǒng)多元統(tǒng)計分析是以矩陣分解為計算工具, 現(xiàn)代高維統(tǒng)計則是以優(yōu)化為計算工具。
最近有一本尚未出版的書《數(shù)據(jù)科學基礎》(Foundation of Data Science),作者之一霍普克洛夫特(John Hopcroft)是圖靈獎得主。在這本書前言部分,提到了計算機科學的發(fā)展可以分為三個階段:早期、中期和當今。早期就是讓計算機可以運行起來,其重點在于開發(fā)程序語言、編譯技術、操作系統(tǒng),以及研究支撐它們的數(shù)學理論。中期是讓計算機變得有用,變得高效,重點在于研究算法和數(shù)據(jù)結構。第三個階段是讓計算機具有更廣泛的應用,發(fā)展重點從離散類數(shù)學轉到概率和統(tǒng)計。我曾經(jīng)和霍普克洛夫特教授交談過幾次,他認為計算機科學發(fā)展到今天,機器學習是核心。而且他正致力于機器學習和深度學習的研究和教學。
現(xiàn)在計算機界戲稱機器學習為“全能學科”,它無所不在。除了有其自身的學科體系外,機器學習還有兩個重要的輻射功能。一是為應用學科提供解決問題的方法與途徑。對于一個應用學科來說,機器學習的目的就是把一些難懂的數(shù)學翻譯成讓工程師能夠寫出程序的偽代碼。二是為一些傳統(tǒng)學科,比如統(tǒng)計、理論計算機科學、運籌優(yōu)化等找到新的研究問題。因此,大多數(shù)世界著名大學的計算機學科把機器學習或人工智能列為核心方向,擴大機器學習領域的教師規(guī)模,而且至少要保持兩、三個機器學習研究方向具有一流競爭力。有些計算機專業(yè)有1/3甚至1/2的研究生選修機器學習或人工智能。
然而,機器學習是一門應用學科,它需要在工業(yè)界發(fā)揮作用,能為他們解決實際問題。幸運的是,機器學習切實能被用來幫助工業(yè)界解決問題。特別是當下的熱點,比如說深度學習、AlphaGo、無人駕駛汽車、人工智能助理等對工業(yè)界的巨大影響。當今IT的發(fā)展已從傳統(tǒng)的微軟模式轉變到谷歌模式。傳統(tǒng)的微軟模式可以理解為制造業(yè),而谷歌模式則是服務業(yè)。谷歌搜索完全是免費的,服務社會,他們的搜索技術做得越來越極致,同時創(chuàng)造的財富也越來越豐厚。
財富蘊藏在數(shù)據(jù)中,而挖掘財富的核心技術則是機器學習,因此谷歌認為自己是一家機器學習公司。深度學習作為當今最有活力的機器學習方向,在計算機視覺、自然語言理解、語音識別、智力游戲等領域的顛覆性成就,造就了一批新興的創(chuàng)業(yè)公司。工業(yè)界對機器學習領域的人才有大量的需求。不僅僅需要代碼能力強的工程師,也需要有數(shù)學建模和解決問題的科學家。
機器學習發(fā)展啟示
機器學習的發(fā)展歷程告訴我們:發(fā)展一個學科需要一個務實的態(tài)度。時髦的概念和名字無疑對學科的普及有一定的推動作用,但學科的根本還是所研究的問題、方法、技術和支撐的基礎等,以及為社會產(chǎn)生的價值。
“機器學習”是個很酷的名字,簡單地按照字面理解,它的目的是讓機器能像人一樣具有學習能力。但在其十年的黃金發(fā)展期,機器學習界并沒有過多地炒作“智能”或者“認知”,而是關注于引入統(tǒng)計學等來建立學科的理論基礎,面向數(shù)據(jù)分析與處理,以無監(jiān)督學習和有監(jiān)督學習為兩大主要的研究問題,提出和開發(fā)了一系列模型、方法和計算算法等,切實地解決了工業(yè)界所面臨的一些實際問題。近幾年,因為大數(shù)據(jù)的驅動和計算能力的極大提升,一批面向機器學習的底層架構先后被開發(fā)出來。神經(jīng)網(wǎng)絡其實在20 世紀80年代末或90年代初就被廣泛研究,但后來沉寂了。近幾年,基于深度學習的神經(jīng)網(wǎng)絡強勢崛起,給工業(yè)界帶來了深刻的變革和機遇。深度學習的成功不是源自腦科學或認知科學的進展,而是因為大數(shù)據(jù)的驅動和計算能力的極大提升。
機器學習的發(fā)展詮釋了多學科交叉的重要性和必要性。然而這種交叉不是簡單地彼此知道幾個名詞或概念就可以的,是需要真正的融會貫通。已故的布萊曼(Leo Breiman)教授是統(tǒng)計機器學習的主要奠基人,他是眾多統(tǒng)計學習方法的主要貢獻者,比如Bagging、分類回歸樹(CART)、隨機森林以及非負garrote稀疏模型等。萊曼教授經(jīng)歷傳奇,他從學術界轉到工業(yè)界從事統(tǒng)計的實際應用十多年,然后又回到學術界。布萊曼是喬丹(Michael Jordan)教授的伯樂,當初是他力主把喬丹從麻省理工學院引進到伯克利分校的。喬丹教授既是一流的計算機學家,又是一流的統(tǒng)計學家,而他的博士專業(yè)為心理學,他能夠承擔起建立統(tǒng)計機器學習的重任,為機器學習領域培養(yǎng)了一大批優(yōu)秀的學者。
斯坦福大學教授弗萊德曼(Jerome Friedman) 早期從事物理學研究,但弗萊德曼是優(yōu)化算法大師,他特別善于從優(yōu)化的視角來研究統(tǒng)計方法,比如由此提出了多元自適應回歸(Multivariate Adaptive Regression Splines,MARS)和梯度推進機(Gradient Boosting Machines,GBM) 等經(jīng)典機器學習算法。多倫多大學的辛頓教授是世界最著名的認知心理學家和計算機科學家。雖然他很早就成就斐然,在學術界久負盛名,但他依然始終活躍在一線,自己寫代碼。他提出的許多想法簡單、可行又非常有效,被稱為偉大的思想家。正是由于他的睿智和身體力行,深度學習技術迎來了革命性的突破。
總之,這些學者非常務實,從不提那些空洞無物的概念和框架。他們遵循自下而上的方式,從具體問題、模型、方法、算法等著手,一步一步實現(xiàn)系統(tǒng)化。
可以說機器學習是由學術界、工業(yè)界、創(chuàng)業(yè)界(或競賽界)等合力造就的。學術界是引擎,工業(yè)界是驅動,創(chuàng)業(yè)界是活力和未來。學術界和工業(yè)界應該有各自的職責和分工。學術界的職責在于建立和發(fā)展機器學習學科,培養(yǎng)機器學習領域的專門人才;而大項目、大工程更應該由市場來驅動,由工業(yè)界來實施和完成。
我國機器學習發(fā)展現(xiàn)狀和出路
機器學習在我國得到了廣泛的關注,也取得了一定的成績,但我覺得大多數(shù)研究集中在數(shù)據(jù)挖掘層面,我國從事純粹機器學習研究的學者屈指可數(shù)。在計算機學術界,理論、方法等基礎性的研究沒有得到足夠重視,一些理論背景深厚的領域甚至被邊緣化。而一些“過剩學科”、“夕陽學科”則聚集了大量的人力、財力,這使得我國在國際主流計算機領域中缺乏競爭力和影響力。
統(tǒng)計學在我國還是一個弱勢學科,最近才被國家定為一級學科。我國統(tǒng)計學處于兩個極端,一是它被當作數(shù)學的一個分支,主要研究概率論、隨機過程以及數(shù)理統(tǒng)計理論等。二是它被劃為經(jīng)濟學的分支,主要研究經(jīng)濟分析中的應用。而機器學習在統(tǒng)計學界還沒有被深度地關注。統(tǒng)計學和計算機科學仍處于沃塞曼所說的“各自為戰(zhàn)”階段。
我國計算機學科的培養(yǎng)體系還基本停留在早期發(fā)展階段,如今的學生從小就與計算機接觸,他們的編程能力和國外學生相比沒有任何劣勢。但由于理論知識一直沒有被充分重視,而且統(tǒng)計學的重要性沒有被充分認識到,這些造成了學生的數(shù)學能力和國外著名高校相比差距很大。我國大多數(shù)大學計算機專業(yè)的本科生都開設了人工智能課程,研究生則開設了機器學習課程,但無論是深度、寬度還是知識結構都落后于學科的發(fā)展,不能適應時代的需要。因此,人才的培養(yǎng)無論是質(zhì)量還是數(shù)量都無法滿足工業(yè)界的迫切需求。
目前數(shù)據(jù)科學專業(yè)在我國得到了極大的關注,北京大學、復旦大學和中國人民大學等依托雄厚的統(tǒng)計學實力紛紛建立了數(shù)據(jù)科學專業(yè)或大數(shù)據(jù)研究院,并已經(jīng)開始招收本科生和研究生。但是目前還沒有一所大學開設機器學習專業(yè)。機器學習對其他應用或理論學科有輻射作用,也是連接兩者的紐帶。一方面它可以為理論端儲備人才,另一方面可以結合不同領域問題,比如醫(yī)療數(shù)據(jù)、金融數(shù)據(jù)、圖像視頻數(shù)據(jù)等,為應用端輸送人才。因此,我認為在計算機科學和應用數(shù)學本科專業(yè)中,增加機器學習的訓練是必要的。
機器學習集技術、科學與藝術于一體,它有別于傳統(tǒng)人工智能,是現(xiàn)代人工智能的核心。它牽涉到統(tǒng)計、優(yōu)化、矩陣分析、理論計算機、編程、分布式計算等。因此,建議在已有的計算機專業(yè)本科生課程的基礎上,適當加強概率、統(tǒng)計和矩陣分析等課程,下面是具體課程設置和相關教材的建議:
-
加強概率與統(tǒng)計的基礎課程,建議采用莫里斯·德格魯特(Morris H.DeGroot)和馬克·舍維什(Mark J.Schervish)合著的第四版《概率論與數(shù)理統(tǒng)計》(Probability and Statistics)為教材。
-
在線性代數(shù)課程里,加強矩陣分析的內(nèi)容。教材建議使用吉爾伯特·斯特朗(Gilbert Strang)的《線性代數(shù)導論》(Introduction to Linear Algebra)。吉爾伯特·斯特朗在麻省理工學院一直講述線性代數(shù),他的網(wǎng)上視頻課程堪稱經(jīng)典。后續(xù)建議開設矩陣計算,采用特雷費森·勞埃德(Trefethen N.Lloyd)和戴維·鮑(David Bau lll)著作的《數(shù)值線性代數(shù)》(Numerical Linear Algebra)為教科書。
-
開設機器學習課程。機器學習有許多經(jīng)典的書籍,但大多不太適宜做本科生的教材。最近,麻省理工學院出版的約翰·凱萊赫(John D.Kelleher)和布瑞恩·麥克·納米(Brian Mac Namee) 等人著作的《機器學習基礎之預測數(shù)據(jù)分析》(Fundamentals of Machine Learning for Predictive Data Analytics),或者安得烈·韋伯(Andrew R.Webb)和基思·科普塞(Keith D.Copsey)合著的第三版《統(tǒng)計模式識別》(Statistical Pattern Recognition)比較適合作為本科生的教科書。同時建議課程設置實踐環(huán)節(jié),讓學生嘗試將機器學習方法應用到某些特定問題中。
此外,我建議設立以下課程作為本科計算機專業(yè)的提高課程或者榮譽課程。特別是,國內(nèi)有些大學計算機專業(yè)設立了拔尖人才項目,我認為以下課程可以考慮列入該項目的培養(yǎng)計劃中。事實上,上海交通大學ACM 班就開設了隨機算法和統(tǒng)計機器學習等課程。
-
開設數(shù)值優(yōu)化課程,建議參考教材喬治·諾塞達爾(Jorge Nocedal)和史蒂芬·賴特(Stephen J.Wright)的第二版《數(shù)值優(yōu)化》(Numerical Optimization),或者開設數(shù)值分析,建議采用蒂莫西·索爾的《數(shù)值分析》(Numerical Analysis)為教材。
-
加強算法課程,增加高級算法,比如隨機算法,參考教材是邁克爾·米曾馬克(Michael Mitzenmacher)和伊萊·阿普法(Eli Upfal) 的《概率與計算:隨機算法與概率分析》(Probability and Computing:Randomized Algorithms and Probabilistic Analysis)。
-
在程序設計方面,增加或加強并行計算的內(nèi)容。特別是在深度學習技術的執(zhí)行中,通常需要GPU加速,可以使用戴維·柯克(David B.Kirk)和胡文美(Wen-mei W.Hwu)的教材《大規(guī)模并行處理器編程實戰(zhàn)》(第二版)(Programming Massively Parallel Processors:A Hands-on ApprOAch,Second Edition);另外,還可以參考優(yōu)達學城(Udacity)上英偉達(Nvidia)講解CUDA計算的公開課。
我認為以計算機科學為主導,聯(lián)合統(tǒng)計和應用數(shù)學專業(yè),開設機器學習研究生專業(yè)是值得考慮的。研究生專業(yè)應該圍繞理論機器學習、概率與隨機圖模型、貝葉斯方法、大規(guī)模優(yōu)化算法、深度學習等基礎機器學習領域。建議開設理論機器學習、概率圖模型、統(tǒng)計推斷與貝葉斯分析、凸分析與優(yōu)化、強化學習、信息論等課程。在附錄我列出了一些相應書籍供參考。
結語
在AlphaGo和李世石九段對弈中,一個值得關注的細節(jié)是,代表AlphaGo方懸掛的是英國國旗。我們知道AlphaGo是由deep mind團隊研發(fā)的,deep mind是一家英國公司,但后來被google公司收購了。科學成果是世界人民共同擁有和分享的財富,但科學家則是有其國家情懷和歸屬感的。
位低不敢忘春秋大義,我深切地認為我國人工智能發(fā)展的根本出路在于教育。只有培養(yǎng)出一批批數(shù)理基礎深厚、動手執(zhí)行力極強,有真正融合交叉能力和國際視野的人才,我們才會有大作為。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網(wǎng)http://www.lukmueng.com/
本文標題:關于機器學習的領悟與反思
本文網(wǎng)址:http://www.lukmueng.com/html/support/11121520412.html