0
雷鋒網(wǎng) AI 科技評論按:并行計算是提高計算機系統(tǒng)計算速度和處理能力的一種有效手段。它的基本思想是用多個處理器來協(xié)同求解同一問題,即將被求解的問題分解成若干個部分,各部分均由一個獨立的處理機來并行計算。在訓(xùn)練 AI 系統(tǒng)的時候,并行是提高計算效率的主要途徑。
作為機器學(xué)習(xí)方面的專家,騰訊 AI Lab 專家研究員、美國羅徹斯特大學(xué)助理教授劉霽博士認(rèn)為,目前并行計算的主要難點在于如何提高并行效率。
因「提出一系列異步并行算法,解決了傳統(tǒng)同步并行算法瓶頸問題,設(shè)計機器學(xué)習(xí)中去中心化的并行計算框架,可以極大地減少通訊代價」,劉霽博士在上個月作為「發(fā)明家」入選 MIT TR 35 China(詳情參見 MIT TR35 中國區(qū)榜單公布,清華朱軍、中科院陳云霽等十位 AI 相關(guān)學(xué)者獲此殊榮)。
他們團(tuán)隊最具開創(chuàng)性的工作有兩個:一是用異步的方式并行所有機器,二是提出去中心化的并行框架。
圖:騰訊 AI Lab 專家研究員,美國羅徹斯特大學(xué)助理教授劉霽
從一開始選擇偏冷門的機器學(xué)習(xí),到見證這一學(xué)科的逐年火熱,劉霽博士不僅成為了機器學(xué)習(xí)飛速發(fā)展的親歷者,也一步一個腳印在該方向深耕。
作為騰訊 AI Lab 的一員,劉霽博士對雷鋒網(wǎng) AI 科技評論表示,他們的研究集中在游戲 AI,比如王者榮耀,星際爭霸?!赣螒?AI 是人工智能與博弈論的一個交叉領(lǐng)域,是理解通用人工智能的重要渠道?!?/p>
既投身學(xué)界,也涉足業(yè)界,劉霽博士說道,學(xué)術(shù)界和工業(yè)界各有各的優(yōu)勢和缺陷:學(xué)術(shù)界經(jīng)常關(guān)心的問題未必是工業(yè)界真正的痛點,但是可以鍛煉思維和解決問題的能力;工業(yè)界存在極具應(yīng)用價值的問題,但很多時候缺乏追求技術(shù)上的創(chuàng)新?!付呷绻苡袡C結(jié)合,我想一定能碰撞出不一樣的火花?!?/p>
立足當(dāng)下,放眼未來,他對研究并行優(yōu)化、機器學(xué)習(xí)的同學(xué)提出建議:
「深度學(xué)習(xí)的熱潮終將褪去……把基本功打扎實,少一些功利態(tài)度,多看看比較難的文章,這樣才能以不變應(yīng)萬變迎接深度學(xué)習(xí)后的下一個熱潮?!?/p>
以下為雷鋒網(wǎng) AI 科技評論對劉霽博士的采訪原文,作了不改變原意的編輯整理,以最大還原劉霽博士對技術(shù)的深度思考。
1、恭喜您入選 MIT TR35 China 發(fā)明家榜單,這是對您研究工作的肯定,您有何感想可以分享一下?
非常感謝我的學(xué)生和所有的團(tuán)隊成員,我想這個榮譽屬于大家。同時也非常感謝張潼老師以及所有推薦人的支持。感覺外界對我們的期望更高了。
2、您認(rèn)為這次的成功上榜主要取決于哪些要素?
首先得益于這個大環(huán)境對 AI 的追捧。AI 正處于歷史的風(fēng)口浪尖,社會和人類對 AI 有著無限甚至不太理智的憧憬和期待。
同時也得益于自己在這個方向不懈的堅持,還記得我剛開始從事研究的時候,有兩個研究方向可以選擇:圖形學(xué)或者機器學(xué)習(xí)。圖形學(xué)更容易找工作,但是我選了機器學(xué)習(xí)。機器學(xué)習(xí)在那時候算偏冷門的研究方向,而且很難就業(yè)(彼時很難想像現(xiàn)在的火爆)。當(dāng)時做出這種選擇的主要原因是我對研究通用性的方法更感興趣,個人感覺這更有挑戰(zhàn),不是所有人都能做的(尤其讀了幾篇張潼老師的文章以后)。
還有一個重要的原因是在正確的時候總能遇到合適的前輩和師長給我指引,比如:機器學(xué)習(xí)的啟蒙老師葉杰平老師(密歇根大學(xué)計算機系終身教授)在我初入行就幫我找到合適的問題,后續(xù)再通過努力,總能取得一些階段性的成果,訂立一些宏大的目標(biāo)。我從 Benjamin Recht(加州大學(xué)伯克利計算機系終身教授)那里學(xué)到了如何尋找有價值的科研問題;從博士導(dǎo)師 Stephen Wright(威斯康星大學(xué)計算機系 George B. Dantzig professor and Amar and Balinder Sohi professor)那里看到了最純粹的科研本質(zhì)和最嚴(yán)謹(jǐn)?shù)目蒲袘B(tài)度;從 Ming Yuan(哥倫比亞統(tǒng)計系教授)那里學(xué)到了從一般到特殊再從特殊到一般的科研方法論;從 Jerry Zhu(威斯康星大學(xué)計算機系 Sheldon & Marianne Lubar Professor)那里學(xué)到了如何開拓一個全新的研究領(lǐng)域。
3、您當(dāng)選的理由是「提出一系列異步并行算法,解決了傳統(tǒng)同步并行算法瓶頸問題,設(shè)計機器學(xué)習(xí)中去中心化的并行計算框架,可以極大地減少通訊代價。」能具體談?wù)勀@一系列相關(guān)的研究工作嗎?這些工作給目前的人工智能社群帶來了哪些意義?
這一系列工作對 AI 有著非常重要的意義。將 AI 轉(zhuǎn)化成生產(chǎn)力主要取決于兩個方面:
第一,如何把實際問題轉(zhuǎn)化成計算問題;第二,如何將計算問題求解變得高效。我在這兩方面均有涉獵。
第一個方面的工作包括強化學(xué)習(xí),稀疏學(xué)習(xí)等。我們在強化學(xué)習(xí)方面的研究在人工智能頂級會議 UAI 上獲得 Facebook 最優(yōu)學(xué)生論文獎。
第二個方面的工作主要是在并行計算上,提高并行效率可以有效提高訓(xùn)練 AI 的效率,讓 AI 的迭代和產(chǎn)業(yè)化更加迅速。
當(dāng)未來算法模型比較固定以后,大公司之間的競爭更多是計算效率的競爭。比如訓(xùn)練圍棋 AI 的時候,成百上千的機器需要跑好幾周的時間。如果有公司可以在一周內(nèi)搞定,那么就會有更多的時間和機會去迭代和試錯,有更大的可能訓(xùn)練出比 AlphaGo 更厲害的 AI。
并行是提高計算效率的主要途徑,目前的主要難度在于如何如何提高并行效率。通俗一點講,比如用一臺機器訓(xùn)練圍棋 AI 需要 1000 天,現(xiàn)在給你 50 臺機器,你需要多久才能完成?最理想的情況是 20 天(這是最高的并行效率)。這在實際上不能實現(xiàn),因為機器之間需要通訊協(xié)調(diào)工作,而當(dāng)機器非常多的時候,代價非常大。我們主要解決的問題是如何減少機器之間通訊的代價,進(jìn)而提高并行的效率。
我們最具有開創(chuàng)性的兩個工作如下:
第一個先驅(qū)性的工作是用異步的方式并行所有的機器。異步是相對于同步而言,同步的方式比較好理解。
我們考慮求解一個機器學(xué)習(xí)的問題,這樣的問題通常都能分解為若干個大任務(wù),一個處于中心的機器每次都將大任務(wù)分解,然后送給每個機器,等所有機器都執(zhí)行完任務(wù)之后,將他們返回的結(jié)果匯總,然后進(jìn)入下一個大任務(wù)。這是最直觀的并行方式,主要問題在于有的機器快有的機器慢,導(dǎo)致每次所有機器都在等待最慢的那個。在前面提到的那個例子里,可能需要 80 到 100 天。
異步并行可以解決這種快等慢的問題,簡單來說就是讓所有機器都不需要等待其他機器,每個機器只要完成了分給的任務(wù),直接到中心的那個機器領(lǐng)取新任務(wù),不用跟其他機器協(xié)同或者等待。這種方式完全打破了傳統(tǒng)的同步并行方式,極大節(jié)省了同步協(xié)同代價。但是這種方式完全改變了任務(wù)執(zhí)行的順序,是否還能達(dá)到同步方式的解并不是顯而易見的。
我們做了很多理論和實踐上的工作,奠定了異步并行的技術(shù)基礎(chǔ)。在前面的那個例子里面,通常只需要 30 到 40 天,相比同步的方法可以節(jié)省超過 50% 的時間?,F(xiàn)在異步并行技術(shù)已經(jīng)廣泛被機器學(xué)習(xí)軟件采用,比如 Google 的 TensorFlow,Amazon 的 MXNet,還有 Microsoft 的 CNTK。
我們的第二個開創(chuàng)性的工作是提出了去中心化的并行框架。
傳統(tǒng)的并行架構(gòu)都是假設(shè)有一個中心化的節(jié)點,來收集結(jié)果和分配任務(wù)給其他機器,這樣做的主要問題在于中心節(jié)點會遭遇通訊擁堵,尤其是在網(wǎng)絡(luò)條件不佳的狀況下,以為所有機器都需要跟這個中心節(jié)點交互。為了緩解這種通訊擁堵,我們提出了一種去中心化的并行框架。簡單來說就是去掉了中心節(jié)點,機器跟幾個鄰居之間互聯(lián)通訊。
我們從理論和實踐上都證明了這種方式能夠保證求解的正確性,相比于傳統(tǒng)的中心化的方法,不會增加額外的計算量,可以有效緩解交通擁堵情況,從而提高并行效率。這種去中心化的技術(shù)目前還比較新,我們相關(guān)的工作入選機器學(xué)習(xí)頂級會議 NIPS 2017 的大會宣講論文(Oral 的入選概率大概 1%)。相信在未來,會對新一代的并行計算平臺和軟件開發(fā)產(chǎn)生極其重要的影響。
4、目前對這種去中心化的數(shù)據(jù)的理論研究,還有哪些亟待突破的地方。而想要大規(guī)模應(yīng)用于工業(yè)實踐,又有哪些難點?
主要有幾個方面:
如何設(shè)計更高效的算法提高這種分布式學(xué)習(xí)的效率。
如何有效平衡通訊代價和計算代價。
如果有的節(jié)點向它的相鄰節(jié)點傳遞錯誤信息,該如何設(shè)計算法保證正確性和穩(wěn)定性。
我想最后一點是用于大規(guī)模工業(yè)實踐最難的地方。
5、除了并行計算,您的研究還涉及到優(yōu)化算法、強化學(xué)習(xí)。此外,您還在羅切斯特大學(xué)建立了機器學(xué)習(xí)和優(yōu)化研究組。目前你們小組在優(yōu)化算法、機器學(xué)習(xí)方面取得了哪些進(jìn)展?
優(yōu)化算法和并行計算是密切聯(lián)系的,前面已經(jīng)有很多介紹。我主要介紹一下與強化學(xué)習(xí)相關(guān)的研究。
我第一次接觸強化學(xué)習(xí)是在2010年舉辦 NIPS 大會時,那時機器學(xué)習(xí)并不火,強化學(xué)習(xí)更是冷門中的冷門。我們做過的兩個比較有影響力的工作都是關(guān)于如何求解強化學(xué)習(xí)中的核心問題 Bellman 方程,Bellman 方程不同于一般的機器學(xué)習(xí)或者深度學(xué)習(xí)求解的最小化優(yōu)化問題。
傳統(tǒng)的方法為了求解,做了各種各樣的近似,導(dǎo)致不太容易擴展到求解大數(shù)據(jù)的問題,理論性質(zhì)難以分析。我們找到了一種跟 Bellman 方程等價的最小化最大化優(yōu)化問題,直接把原始問題和優(yōu)化問題聯(lián)系起來了,這樣一來,不僅可以應(yīng)用很多優(yōu)化的理論性質(zhì),而且也容易擴展到大數(shù)據(jù)計算。這個工作獲得了 2015 UAI 大會上的 Facebook 最優(yōu)學(xué)生論文獎。
我們第二個重要的工作是直接求解 Bellman 方程(不做任何近似或者等價變換),我跟在普林斯頓的 Mengdi Wang 教授合作,研發(fā)了一套新的最優(yōu)化的技術(shù),稱為 composition 優(yōu)化。相應(yīng)的算法和理論框架都已經(jīng)建立起來了,開啟了一種新的求解強化學(xué)習(xí)問題的思路。
6、目前機器學(xué)習(xí)的優(yōu)化算法很大程度上仍然依賴研究者的經(jīng)驗方法,缺乏理論支持及可解釋性。您認(rèn)為可以從哪些角度來解決算法的黑箱問題?
我想你主要說的是深度學(xué)習(xí)這種 nonconvex 的優(yōu)化問題吧(convex 的問題已經(jīng)理解得相對比較清楚了)。我覺得要解決這個問題,技術(shù)層面是其次,更重要的是需要支持和鼓勵根本性研究的環(huán)境。
坦白來講,我個人覺得很多深度學(xué)習(xí)相關(guān)的優(yōu)化算法文章和建模文章并不嚴(yán)謹(jǐn),包括一些大牛的文章。文章大多缺乏嚴(yán)謹(jǐn)?shù)耐评砗驼撟C,過分相信經(jīng)驗性的東西。比如我們現(xiàn)在常用的深度學(xué)習(xí)的工具包(比如 TensorFlow)里的很多優(yōu)化技巧都缺乏嚴(yán)格的理論論證,例如 batch normalization,random dropout 等等。大家的邏輯是:一旦有文章說經(jīng)驗上效果不錯,也有現(xiàn)成的工具包,咱們就用吧,不用管是否收斂。如果效果不好,咱們調(diào)調(diào)參數(shù),要不再換一個方法,最后不行了就改網(wǎng)絡(luò)。從工程上講這個是完全沒有問題的,因為目的只是做好一個特定的應(yīng)用或者數(shù)據(jù)集。但是如果從研究的角度會造成不良的后果,因為研究的目的是為了提供穩(wěn)定性好適應(yīng)性強最好還能有清晰的理論保證的解決一類問題和應(yīng)用的算法和工具。
從功利的角度來講,發(fā)一篇深度學(xué)習(xí)理論的研究文章要比發(fā)一篇深度學(xué)習(xí)實驗研究的文章難很多。當(dāng)一個領(lǐng)域的大多數(shù)人都完全相信純經(jīng)驗的東西,從研究上講這是非常危險的。久而久之,大家就不會去質(zhì)疑這些常用的方法是否正確,盡管它很有可能是不完全正確的。這種研究方式也會助長研究者不嚴(yán)謹(jǐn)?shù)淖黠L(fēng)。
深度學(xué)習(xí)的一些經(jīng)驗性研究的文章經(jīng)常出現(xiàn)一些相互對立的結(jié)論,比如我曾聽說過兩個截然不同的結(jié)論,一個是說深度學(xué)習(xí)訓(xùn)練時大 batch 好,另外一篇文章說小 batch 好。想想看,這些不能完全經(jīng)得起推敲的東西,一旦固化到我們的硬件,應(yīng)用到我們的健康醫(yī)療,將會是多么令人不安的事情。
總的來說,我覺得需要有鼓勵研究者去探尋根本的環(huán)境,少一些投機式的研究。最后我想借用 Eric Xing 在深度學(xué)習(xí)是不是煉金術(shù)之爭上的一句話:煉金術(shù)師并不可恥,可恥的是并不努力從「煉金術(shù)師」學(xué)成「化學(xué)家」。
7、同時投身于學(xué)界和業(yè)界,您如何看待這兩者之間的異同點?
就我個人來講,學(xué)術(shù)界的研究更加純粹和單一,目的是把一個個抽象的學(xué)術(shù)問題研究清楚,衡量的標(biāo)準(zhǔn)大多是論文的發(fā)表以及發(fā)明各種酷炫的方法。而工業(yè)界是真正接觸實際項目的地方,衡量標(biāo)準(zhǔn)是項目的成功與否,更像一個系統(tǒng)工程,需要有產(chǎn)品化的思維,最后能把東西做出來才是目的,中間任何先進(jìn)或者酷炫的技術(shù)都不是目的。
學(xué)術(shù)界和工業(yè)界各有各的優(yōu)勢和缺陷。學(xué)術(shù)界經(jīng)常關(guān)心的問題未必是工業(yè)界真正的痛點,但是可以鍛煉思維和解決單個問題的能力,而工業(yè)界有極具實際應(yīng)用價值的問題,但很多時候過度依賴于搭積木的方式完成項目,缺乏對技術(shù)上創(chuàng)新的追求。
如果二者能有機結(jié)合,我想一定能碰撞出不一樣的火花。騰訊在內(nèi)容、游戲、社交到醫(yī)療領(lǐng)域,有極為豐富的應(yīng)用場景,而 AI Lab 也有優(yōu)秀的研究與工程師團(tuán)隊,這種研究與應(yīng)用結(jié)合,非常有利于推進(jìn)技術(shù)的快速迭代與發(fā)展。
8、對于研究并行計算、機器學(xué)習(xí)和優(yōu)化算法的同學(xué)們,您有哪些學(xué)習(xí)和研究上的建議?
深度學(xué)習(xí)的熱潮終將褪去,將來它很有可能成為大家都會的一種應(yīng)用工具,而且使用也會越來越方便,連自動調(diào)參都能實現(xiàn),完全成為端到端的服務(wù)。
我的建議是與其現(xiàn)在猛追深度學(xué)習(xí)的熱潮,不如多學(xué)數(shù)學(xué)、優(yōu)化、統(tǒng)計,把基本功打扎實,少一些功利態(tài)度,多看看比較難的文章,這樣才能以不變應(yīng)萬變,迎接深度學(xué)習(xí)后的下一個熱潮。
(完)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。