百度深度學(xué)習(xí)研究院“杰出科學(xué)家”徐偉和大家交流自己的研究成果
大會現(xiàn)場,百度深度學(xué)習(xí)研究院“杰出科學(xué)家”徐偉先生就新一代深度學(xué)習(xí)框架助力人工智能發(fā)展和大家交流他自己的研究成果。
以下為現(xiàn)場實錄全文:
各位領(lǐng)導(dǎo),各位專家、各位朋友你們好今天非常有幸給大家分享百度在人工智能,軟件基礎(chǔ)設(shè)施做的一些工作。人工智能發(fā)展的異?;馃?,這兩個圖就是美國(英文)AI(英文)的報告里面給的兩組數(shù)據(jù),這個數(shù)據(jù)里面表示過去20多年,AI創(chuàng)業(yè)公司的數(shù)量,這20多年,AI的創(chuàng)業(yè)公司的數(shù)量有了非常大的增長,2000年到現(xiàn)在有14倍這么多的增長。右邊那幅圖是風(fēng)投,風(fēng)險投資的數(shù)量,我們看到近20多年有了非常大的增長。2000年到現(xiàn)在,風(fēng)險投資的數(shù)量也增長了6倍。
這是美國的狀況,中國發(fā)展的狀況更為火熱,大家也了解到人工智能相關(guān)方面的人才在就業(yè)市場里面非常火熱,還有各大公司提出他們在人工智能方向發(fā)展的計劃。比如百度說要All in AI,還有騰訊提出的AI in all,阿里建立了達摩院來積極地發(fā)展人工智能。
再就是去年7月份的時候國務(wù)院對整個國家的人工智能發(fā)展也作出規(guī)劃。提出我們在2030年要把中國建設(shè)成為理論和技術(shù)以及產(chǎn)業(yè)方面在人工智能都成為世界先進的國家。我們看到人工智能,我們已經(jīng)開始進入這么一個人工智能的時代,進入這個時代根本的原因就是說,就是人工智能在一些特定的應(yīng)用場景,它的效果有了非常非常大的提升,在近的幾年。
提升的幾個基本動力:一個就是計算能力在過去幾十年有非常大的增長。再一個點就是隨著計算機的增長還有互聯(lián)網(wǎng)產(chǎn)業(yè),各行各業(yè)計算機技術(shù)的廣泛使用,我們也積累了大量的數(shù)據(jù)。具備這樣大量數(shù)據(jù)的情況下,還有非常重要的一點就是深度學(xué)習(xí)的使用。因為我們使用的深度學(xué)習(xí)和以前傳統(tǒng)的機器學(xué)習(xí)相比有一個重要的特點,就是傳統(tǒng)的機器學(xué)習(xí)隨著數(shù)據(jù)量的增大它的性能準(zhǔn)確度什么之類的會逐漸達到飽和的階段。深度學(xué)習(xí)不同的就是隨著數(shù)據(jù)量的增大,因為它的模型可以變得更加復(fù)雜,可以更有效的從很大量的數(shù)據(jù)里面提取數(shù)據(jù)里面蘊藏的豐富的信息,從而在應(yīng)用里面能夠不斷地提升它的準(zhǔn)確度、提升效果。
除了這三點之外,還有非常重要的一點,軟件的角度來講,我們近幾年看到在深度學(xué)習(xí)方面有非常多的開源軟件框架的出現(xiàn),就為開發(fā)者還有研究者來使用和開發(fā)深度學(xué)習(xí)模式大大降低了門檻,從而涌現(xiàn)出非常多的人工智能的應(yīng)用和技術(shù)。我們剛才說到,在特定的人工智能領(lǐng)域有了非常好的技術(shù),這是我印象特別深的例子,百度去年參加了江蘇衛(wèi)視做的《強大腦》的節(jié)目,在這個節(jié)目當(dāng)中有一個比賽,通過父母的照片能夠在幾十個女生里面能夠把他的女兒找出來。
大家可以看,左邊是父母的照片,右邊是幾十個女生中的其中六個女生,你們是否可以從他們父母的照片能夠看出哪個女生是他的女兒,大家可以記住他的答案。你們有沒有認(rèn)出來的,我們從這個例子可以看出來,通過深度學(xué)習(xí)的使用,我們在日常特定的領(lǐng)域,所謂的特定領(lǐng)域就是指的我們能夠比較方便的提供數(shù)據(jù)標(biāo)簽的一些應(yīng)用領(lǐng)域,人工機器已經(jīng)可以做的非常非常好了。
因此我們的機器在能力的提升過程中,我們也逐漸看到人工智能開始進入我們傳統(tǒng)行業(yè)里面去,做一些我們意想不到的事情。這里給大家分享一小段視頻給大家介紹一下。(播放視頻)
這里我們看到像人工智能可以進入到我們生產(chǎn)、生活中非常細(xì)微的方面,能夠提升我們的是各個生產(chǎn)環(huán)節(jié)的生產(chǎn)效率。剛才視頻里面提到用的PaddlePaddle,這是我們百度開發(fā)的一款深度學(xué)習(xí)的框架,它的用途是用來讓工程師還有研究人員可以用它來描述他們深度學(xué)習(xí)的模型,對深度學(xué)習(xí)模型結(jié)合數(shù)據(jù)進行訓(xùn)練,后把這個模型應(yīng)用到實際的生態(tài)環(huán)境里面去。
今天給大家介紹一下PaddlePaddle三個方面的一些工作吧。首先就是PaddlePaddle,我們是一個開源的軟件,可能相對于別的深度學(xué)習(xí)方面的框架的軟件相比,PaddlePaddle相對是開源的比較晚的,到目前為止開源的時間大概16個月左右。這幅圖可以看到PaddlePaddle和其他開源軟件相比,他們同樣的時期使用的時候,就是Paddle16個月的時候和TensorFlow,還有其他的比如說MXNet、Caffe,開源16個月的時候活躍度的比較。在Github,這是開源軟件的社區(qū),這個就是表示了在上面開發(fā)的力度。同期的TensorFlow,還有其他的開源軟件相比,這里面紅色的這條就是PaddlePaddle它的開發(fā)者力度已經(jīng)遠(yuǎn)高于那個,即使拿到現(xiàn)在來看,PaddlePaddle的開發(fā)的活躍度也是僅次于現(xiàn)在谷歌開發(fā)的開發(fā)的深度學(xué)習(xí)的TensorFlow。
這個是問題討論的活躍度,可以達到TensorFlow同期的水平,它現(xiàn)在也是僅次于它在Github上面的討論活躍度來看。PaddlePaddle在深度的開源軟件里面,是唯一一家中國公司做出的深度學(xué)習(xí)的開源軟件。
我們做深度學(xué)習(xí)PaddlePaddle這個開源軟件,一個很重要的出發(fā)點就是說,我們希望它不僅能夠支持深度學(xué)習(xí),像現(xiàn)在的模型,還有現(xiàn)在的算法,也希望它能夠支持我們現(xiàn)在還沒有出現(xiàn)過未來可能出現(xiàn)的深度學(xué)習(xí)的模型和算法。怎么才能做到這一點呢?我們提出來,要能夠做到這一點就是根本像編程語言一樣有比較豐富的表達能力。近我們開發(fā)了PaddlePaddle新的版本叫PaddlePaddle(英文),可以像高級語言一樣的描述,來書寫深度學(xué)習(xí)的模型。
在深度學(xué)習(xí)模型的訓(xùn)練里面有一個非常重要的概念就是要對訓(xùn)練做一些批處理,這樣才能充分利用硬件的計算能力。像這里的這個東西描述的一個模型,它有一個特點,就是這個里面有一些動態(tài)的結(jié)構(gòu),包括(英文)的結(jié)構(gòu),這樣的動態(tài)的模型要他比較高效率的進行計算利用TensorFlow,它是非常非常難以高效地實現(xiàn)的。我們使用PaddlePaddle它可以非常容易地描述具有這種動態(tài)結(jié)構(gòu)的深度學(xué)習(xí)的模型。
我們可以看到,和現(xiàn)有的其他深度學(xué)習(xí)的框架相比,(英文)是比較簡單編程的框架,還有TensorFlow,如果你用的非常好可能比較高效,但是像我們剛才說的動態(tài)的模型結(jié)構(gòu),要把它的高效通過TensorFlow實現(xiàn)是比較繁瑣的事情,但是相比之下PaddlePaddle可以非常高效的實現(xiàn)非常先進的深度學(xué)習(xí)的模型,同時非常靈活,非常應(yīng)用。
另外PaddlePaddle還依托于深度學(xué)習(xí)技術(shù)與應(yīng)用國家工程實驗室,像我們學(xué)校里面開發(fā)一些百度的實驗室里面的一些預(yù)算資源。這個實驗室是百度和清華大學(xué)還有北航,還有其他研究機構(gòu)一塊成立的這么一個國家工程實驗室,目的就是說希望能夠推動深度學(xué)習(xí)在中國進一步的發(fā)展。我們通過這個實驗室開放的計算資源叫PaddlePaddleCloud,它能夠提供到一個這樣非常直觀的編成的界面,它可以在網(wǎng)頁上,把你的模型描述出來,能夠非常交互式的調(diào)試和書寫模型,同時在你的應(yīng)用提交到實驗室內(nèi)部訓(xùn)練的Cloud的訓(xùn)練,同時可以實時的觀察到這個結(jié)果。
深度學(xué)習(xí)還有非常重要的一點,就是良好的深度學(xué)習(xí)的框架需要非常有效的處理非常大的數(shù)據(jù)。因此它要能夠很好的進行多棲的進行訓(xùn)練。相比其他的深度學(xué)習(xí)框架,它的深度學(xué)習(xí)的訓(xùn)練任務(wù),集訓(xùn)里面提交之后訓(xùn)練任務(wù)所占的資源數(shù)不能夠動態(tài)調(diào)控的。這樣導(dǎo)致的問題就是在一個集訓(xùn)里面,它很難對集訓(xùn)的使用率能夠充分的利用。比如說它集訓(xùn)繁忙的時候,現(xiàn)在的任務(wù)可能就因為前面的任務(wù)不能調(diào)整它的規(guī)模,現(xiàn)在的任務(wù)就需要做長期的等待。如果集訓(xùn)屬于比較前置的時候,一個新人的任務(wù)也不能做到充分的能夠把所有的閑置的資源都用到,因為他不能預(yù)期接下來是不是有新的任務(wù)提交進來,因此這樣就會導(dǎo)致集訓(xùn)使用率比較低,同時有一些任務(wù)繁忙的時候?qū)θ蝿?wù)有等待的狀況,對體驗也非常不好。
因此我們開發(fā)了,我們叫做Elastic Deep Learning能力的這樣一個技術(shù),它可以動態(tài)地根據(jù)集訓(xùn)的反饋程度能夠動態(tài)地調(diào)整訓(xùn)練任務(wù)的規(guī)模,從而能夠在一個集訓(xùn)里面更有效的利用它的資源。這里稍微展示一下,通過EDL能力以后使用的效果。左邊這幅圖就是說,我們在一個集訓(xùn)里面不斷地提交深度學(xué)習(xí)任務(wù),但是深度學(xué)習(xí)的任務(wù)到一定的時候比較多了,這個時候如果我們開始實現(xiàn)的話,就沒有開啟EDL的功能。這張圖就是左上面的圖展示這個集訓(xùn)需要等待的任務(wù)數(shù),它沒有開啟EDL,隨著這個集訓(xùn)的負(fù)載比較繁忙,在這個等待狀況會出現(xiàn)比較高的數(shù)量。如果我們開啟EDL這樣的功能,提交以后就能夠自動把這個任務(wù)占用的資源縮小,能夠?qū)⑿碌臇|西可以很快地執(zhí)行。
另外就是當(dāng)有周期性的,流量周期性的任務(wù)和深度學(xué)習(xí)的訓(xùn)練能夠混合,這樣的話比如說網(wǎng)絡(luò)服務(wù),比如說白天比較繁忙,晚上比較空閑的時候我們也能夠把這個空閑的資源用來做深度學(xué)習(xí)的訓(xùn)練。
深度學(xué)習(xí)目前發(fā)展趨勢就是在不同硬件的場所都要進行使用,包括訓(xùn)練,CPU、GPU,甚至FPGA這樣的環(huán)境進行訓(xùn)練。部署的時候傳統(tǒng)的服務(wù)端、移動端進行訓(xùn)練。根據(jù)這樣的發(fā)展趨勢我們PaddlePaddle也根據(jù)不同的訓(xùn)練環(huán)境、部署環(huán)境進行開發(fā),同時和相應(yīng)的公司進行合作,針對這些不同的使用環(huán)境進行優(yōu)化。還有深度學(xué)習(xí),人工智能發(fā)展非??煊幸粋€算法、數(shù)據(jù),還有技術(shù)、應(yīng)用的迭代。開始的算法設(shè)計,底下的初始數(shù)據(jù)得到初的模型,通過應(yīng)用的打磨收集到更多的數(shù)據(jù),反過來讓我們算法和模型變得更好。未來讓廣大的開發(fā)者快把人工智能的閉環(huán)能夠構(gòu)造出來,我們也開放了一系列在百度內(nèi)部,通過我們實踐打磨出來的工業(yè)級的應(yīng)用的模型,停留在我們官方的Github上面的我們的開源的社區(qū)里面,通過這些開源的模型,這些開發(fā)者可以使用,這些開源的模型也進行了詳細(xì)的中英文的文檔,還有中文的數(shù)據(jù),英文的數(shù)據(jù),可以方便開發(fā)者來使用,謝謝大家!官方微博
官方微信公眾號
官方百家號