中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

Facebook AI 賈揚清:AI,從大數(shù)據(jù)問題演進(jìn)到高性能計算問題

2018-11-06    來源:raincent

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

Robin.ly 是一個全新的視頻內(nèi)容平臺,旨在為廣大工程師和研究人員提高對商業(yè),創(chuàng)業(yè),投資,領(lǐng)導(dǎo)力的理解。第二期是Robin.ly線下活動,創(chuàng)始人Alex Ren 采訪Caffe作者、Facebook Director of AI Infrastracture 賈揚清博士,并于場下互動問答。 以下為采訪實錄摘要,原始視頻請訪問www.robin.ly 完整視頻請在文末掃二維碼關(guān)注

Alex: 最早的時候聽說Caffe是你的一個side project,不是你論文的主要內(nèi)容。當(dāng)時開發(fā)Caffe的初衷是什么?中間經(jīng)歷過什么過程,可以給大家講一下嗎?

Yangqing:主要的原因也是因為AI research,以前researcher寫code,像Matlab之類的,很難reproduce。在2011年,2012年的時候大家還沒有太強的reproduceable research的這樣的想法,所以在AlexNet的paper出來之后呢,大家都沒辦法有一個比較reliable的平臺,來實現(xiàn)它的結(jié)果。當(dāng)時我們在Berkeley希望用Caffe來推動獨立研究,所以當(dāng)時內(nèi)部開始試圖來呈現(xiàn)它的結(jié)果,相當(dāng)是一個于side results。

Alex: 整個的過程你大概做了多久?

Yangqing :兩個月吧!

Alex: 那后來到了Facebook之后繼續(xù)做Caffe你有遇到什么新的問題嗎?

Yangqing: Caffe的話因為已經(jīng)六年多了,所以基本上當(dāng)時有很多歷史遺留問題。最開始做Caffe的時候大家都是照著computer vision的模式來做的,所以很多design等等都是在CV方面比較make sense,在NLP等等其他地方都相對比較難一些。當(dāng)時整個modular 的design等等還沒有太清楚。Facebook在15年的時候其實很多產(chǎn)品里都還在用Caffe的runtime來部署,但是后來整個flexibility都會有些問題,所以這也是我們后來寫Caffe2跟PyTorch的原因。

Alex: 前段時間你們宣布了PyTorch1.0的發(fā)布,我記得Caffe主要是做production的,而PyTorch主要是research這個階段,當(dāng)你把這它們合并在一起的時候,是企圖解決什么問題呢?

Yangqing: 這個我們目前也是一個比較explorative的一個方向,包括我覺得整個行業(yè)大家都在往這個方向走。比如TensorFlow在TF2.0的announcement里面提到了eager mode,或者說是imperative mode。最大的一個挑戰(zhàn)基本上是research和production,這兩個 fundamentally是兩個不太一樣的priority。Research需要flexibility,一切都應(yīng)該可以調(diào);而Production是要performance的時候,最后總是會需要有一些相對比較flexible的地方。所以很多時候都是一個看具體的實際應(yīng)用然后來consciously make some compromises。就比如說像computer vision也就是計算機(jī)視覺,包括像推薦系統(tǒng)這種實在是太大規(guī)模,even1% or 2% accuracy matters,在這種情況下我們會需要犧牲一些flexibility,來更加注重在performance上邊。像一些新的應(yīng)用比如說像自然語言處理,機(jī)器翻譯等,可能對于resource的要求沒有那么高。我們可以sacrifice比如說10%的performance,對于model iteration的要求比較高,所以這個就更加偏向于research這邊。

 

 

賈揚清談 PyTorch與Caffe的合并

Alex: 上次我跟你聊,你說到你比較關(guān)注硬件方面的發(fā)展。我想知道你的角度是什么,是software hardware co-design嗎?

Yangqing: 更加偏向于software hardware co-design吧。CPU和GPU它的好處不光是在硬件上,而且是在軟件上。最可怕的事情是什么呢,就是說我們知道它很好,但是最后我們大家發(fā)現(xiàn)說,沒人能在上邊寫程序。Cause it’s too opaque。NVIDIA非常成功的原因是因為,我可以隨便找一個人,我可以花半天的時間,他就可以開始寫CUDAcode,只要他懂C++,我就能讓他寫CUDA code。NVIDIA,從04年CUDA出來以后到今天,NVIDIA把它整個software layer做的如此之好,使得它的入門門檻很低。如果我突然來一個FPGA,沒有一個月的時間,沒人能在上邊寫程序,所以說新的硬件最大的一個挑戰(zhàn)不光是在硬件上而且是在軟件上。這也是為什么我對軟硬件協(xié)同設(shè)計很感興趣。

Alex: 也就是說它搭建了一個eco-system,給developer們有更方便的方法去用,對吧?(對!)然后,我想問一個其他方面的問題。Facebook也是少有的做比較頂尖的AI research的一個公司,你在里邊帶領(lǐng)AI infrastructure這塊的一些研究。我知道Facebook,Google這樣的公司呢,你發(fā)現(xiàn)它有個特點,就是它有很多大牛都在一起工作,對吧?(嗯。)而很多別的公司經(jīng)常有這種一山不能容二虎這種現(xiàn)象。我不知道你在這方面有什么體會,在這種環(huán)境里,我想有些人可能也在創(chuàng)業(yè),或者在自己公司里lead research,你對他們有什么心得可以分享?是什么樣的文化使得Facebook在research這方面有個cutting-edge research的結(jié)果?

Yangqing: 我覺得更多的算是計算機(jī)領(lǐng)域的文化吧,比如說大家最近經(jīng)常能夠聽到的消息比如像金融這個領(lǐng)域目前逐漸的越來越難吸引到頂尖的人才。一定的原因就是因為,整個領(lǐng)域太封閉了,誰都不知道其他人在做什么。那么這個時候就有很簡單的一個事,就是我們有句老話說的,叫獨木難支嘛,如果一個領(lǐng)域大家都在鉆著自己做自己的事情的話,有很多collective wisdom就很難被激發(fā)出來。而計算機(jī)這個領(lǐng)域的話,大家很多的想法,第一是說開源,第二是open research,第三是非常頻繁的交流。有很多的平臺本身就是,像我們用的Reddit啊,Hacker news都是一個很好的平臺,包括Robin.ly等等,所以我覺得整個這樣的一個文化使大家可以更快的把這個蛋糕做大,等到蛋糕做大了之后,誰都能從中獲益。

Alex: 謝謝你提到了我們!你提到了Reddit,我看到了你Reddit上有篇評論,里邊提了一個詞叫unframework,因為當(dāng)時是Caffe 2.0的時候你提的,能給我們解釋一下是什么意思嗎?

Yangqing:Unframework的idea基本上就是說以前大家在做AI的software的時候就是說,一個framework就什么都有嘛,對吧。當(dāng)時比如說六年前大家說Caffe,Torch跟Theano,反正就是一個framework,你在里頭或者外頭想做什么也很難,就是說它是一整個kind of crisp,F(xiàn)在的話比如說,像我們有不同的硬件出來,有TPU,比如說我們有visualization等等,逐漸的就有點類似于一個unit operation system,就是說我做完一個operation system的時候不是說所有的差都完了我可以在上面裝app,我可以在上面裝extension了。所以就是說發(fā)展到今天,framework是一個很小的一部分,外面有很多其他各種譬如說硬件啊,visualization啊等等。舉個例子比如說PyTorch目前我們在跟Google合作來一起做一個Tensorboard這樣的,做一個a very nicevisualization tool for AI,就是不光限制在一個framework,而是說build different components,get components clip,用各種各樣的方式plug起來。

Alex: 明白。那我問一下我最后一個問題吧,就是你當(dāng)初也是典型的engineering research出來的,現(xiàn)在去lead的組織,有很多工程師。你在softskills這塊,你覺得在這個過程中你有些什么收獲,給大家有什么建議?

Yangqing: 這方面的話,可能一個人做事情和一群人做事情還是有一些區(qū)別的。第一個是我們所謂叫innovator’s dilemma:一開始大家會覺得這個team做的太慢了,這事兒我一個人能夠兩個小時就能搞定的。為什么這個team一天還沒搞定。大家有時候怎么樣來properly set expectation,因為自己一個人的bandwidth是有限的嘛,怎么樣來幫助整個team能夠合作把這個事情往前推?赡茉趩蝹的事情上efficiency不好但是在整個大的全組project上能夠更加accelerate一些;第二個是怎么樣grow people,就是create space for people to make mistakes,怎么樣能讓大家來逐漸take ownership。第三個是管理層面提到的give away Legos,就是說focus在別人需要你的地方而不是自己做的最好的地方。我覺得在做technical management或者technical leadership的這塊兒其實還是挺有意思的。

Alex: 接下來歡迎場下同學(xué)提問。

 

 

Alex 介紹Robin.ly平臺

Q1: 賈博士你好,我來自O(shè)PPO美國研究所。有個問題想請教你,前段時間有一個語言叫Julia橫空出世,號稱集百家之長,所以我想問問你對這個語言有什么看法,有沒有打算基于Julia這個語言建立一個framework。

Yangqing: 我們其實嘗試過很多各種各樣的語言,所以說我不太好評論。Julia的好處是它對于low level language migration非常好,比如大家如果用Python的話,可能你在Python里寫for loop, performance非常差。Julia對這個low level language binding的performance一直都是挺不錯的。我們考慮過很多的language,包括我們自己Facebook以前有Torch,Torch是基于Lua的,我們最后發(fā)現(xiàn)了一點就是說,it’s not about the language itself,it’s about the eco-system。Python平心而論很多人都說Python是一個很爛的語言,但是它有社區(qū),它的整個的eco-system非常好,如果我要裝Python,我有Anaconda;如果我要用Python visualization,我有Matplotlib;如果我要有numerical computation我有NumPy和SciPy,如果我要做圖像處理,我有Scikit-image。 所以說最后我們發(fā)現(xiàn)這個eco-system很重要,當(dāng)年Luatorch遇到的很大的一個瓶頸是沒有人知道怎么寫Lua。大家都很懶,我也很懶,我不想為了學(xué)一個新語言而學(xué)一個新語言,whatever works for me。所以說這個時候Python作為一個很不錯的compromise,似乎是目前整個industry大家比較common的選擇。

Q2:你好,我有一個問題: PyTorch是一個用戶很多的一個系統(tǒng),還有一些用戶比較多的系統(tǒng)就是TensorFlow,背后都有一個很大的community,有很大的公司在支持,但是其實你剛才也提到了就是TensorFlow也出了這個eager mode大家需求也都一樣,都有這個research developability或者interactivity這方面的需求,deployment都有scalability或者performance這方面的需求。那最后有沒有這兩個系統(tǒng)或者說市面上所有系統(tǒng)合并到一起的可能,從business的角度來說什么樣的條件會造成這種合并。

Yangqing: 我問你這樣一個小問題。我們在用Uber,Gmail,或者calendar的時候,我們會擔(dān)心是在Android上面,還是iOS上面嗎?就是說essentially,到最后 product這邊, as long as we have a platform for us to run models , it's probably gonna be not different. 對于uber來說,它可能并不擔(dān)心Ios或者Android,假如說他們能合并,那這是一個最省事兒的事兒,那將來他們就不用寫app寫兩套了。但是it's not a deal breaker。 然后從framework的角度來說,我覺得一方面大家開玩笑說 There's a war on frameworks, 對吧!從當(dāng)年相對比較academic的Caffe 跟Torch 跟Theano 這三家,到現(xiàn)在Google的TensorFlow,Amazon的MXNet,F(xiàn)acebook的PyTorch,Microsoft的CNTK等等。到最后大家發(fā)現(xiàn)這幫framework writter其實就是大家天天在那聊天說,我們design應(yīng)該怎么走啊等等。到最后大家的idea都會逐漸converge起來。所以我個人不會太擔(dān)心最后 which framework wins on framework, or which framework migrates which framework. 最后的idea都差不多。

Q3: 我想問一個比較抽象的問題,看我能不能解釋清楚了,現(xiàn)在這些framework,這些工具非常的成熟了,非常完善,這必然是件好事。但從另一個角度來講他對computer vision researcher和graduate student的impact是非常不同的。比如說五年前/八年前你可以design自己的feature,做一個minimization variation whatever graphical model你可以發(fā)paper,這個玩法和現(xiàn)在必然不同,現(xiàn)在你要train model,你要自己想辦法做一些新的architecture或者其它一些比較有竅門的東西才能發(fā)paper。那比如說十年之后你再去Berkeley讀一個computervision PhD從頭開始的話,這個玩法是什么呀。就比如說AutoML這種東西都出來了,很多東西可能就被取代了,就不需要了,那怎么玩?

Yangqing:大家還有另外的一個相關(guān)的comment就是說目前這個整個做deeplearning training需要的資源越來越多,學(xué)校到底怎么辦對吧,誰也沒有一萬個GPU來train Auto ML model,那這個大家這個Auto MLresearch是怎么做的呢?我覺得可能第一個比較passive aggressive的answer是come to industry labs,and you can just get resources,但這是一個玩笑話,另外一方面是我覺得就是比如說像12年的時候大家都覺得Google的infinite resource,大家deep learning怎么做最后Alex做的方法就是2個GPU,我當(dāng)時在Google實習(xí),對我們來說還挺surprising的,就是說其實computation resource isn’t the wining factor。其實學(xué)術(shù)界的一個好處是,I naturally create一個constrain是說,you have to be efficient。我現(xiàn)在個人是在工業(yè)界,工業(yè)界有的時候大家被這些resource給寵壞了,就是說學(xué)術(shù)界其實一直都還是source of the new information and new ideas。很多時候可能模型并不一定需要太大,但硬懟performance或者硬懟containerresource大家在grad student這個地方就別做了,對吧。然后,挺有意思的,能夠做的方向就是howwe actually basically just like look at the current models and then do newideas,Berkeley去年做了很有意思的一個paper叫CycleGAN,怎么樣在generative advisorynetwork上面做一些新的工作。這些方面可能不需要太多的resource,包括是一兩個CPU就差不多夠了。所以可能就說回去再讀PhD的話可能做法還是差不多的,就是看看最近新的idea在什么方向,然后更多的是iterate on ideas, not iterate on systems。

 

 

活動現(xiàn)場,賈揚清在左,Alex在右

Q4: 我有一個follow up的一個問題就是剛才你說很多algorithm需要特別大的一個計算資源,從硬件的發(fā)展上看你有看到一個趨勢是說,硬件快速增長,越來越便宜,能力越來越強,能夠讓更多的人能夠訓(xùn)練AlphaGo這種algorithm,你能看到這種趨勢嗎?

Yangqing: 硬件這方面again,I’m not an expert。David Patterson在最近他的talk里邊提到Moore’s law is ending,is it a badthing,or is it a good thing?I actually say this is the golden age for hardware because a lot of things arebeing collaboratively redesigning, and iterating. And domain specific architecture is becoming the next new exciting idea. 所以我覺得更多是硬件這邊會朝向更緊密地跟軟件結(jié)合的這個方向。Imagine就是現(xiàn)在我們在寫軟件的時候,我們現(xiàn)在調(diào)我們的軟件就不用we don’t give a damn about what kind of software we wrote yesterday,we can just change it。硬件這邊的話還是大家又一點自己的constrain,硬件這邊大家還是有一些follow一個一年或者兩年的cycle。Imagine如果我們有一些新的方法能夠,像我們做 throw away software 這樣來做throw away hardware,假如我們每六個月就可以iterate一個硬件的version,這個時候?qū)τ谡麄硬件的industry會是一個挺新的一個paradigm,我自己不知道具體怎么做但是我覺得這方面從軟件的角度來說我們希望有更多的硬件來支持計算,從硬件角度來說就是我覺得最近有好多的機(jī)會。

Q5: 首先謝謝賈博士speech 非常好,我有兩個問題是關(guān)于OpenCL和 CUDA的問題。第二個問題是,OpenCL 和CUDA是不是算你們framework里的一部分。第二個問題是,你們用沒用OpenCL,因為Intel或者amd他們是用OpenCL或者CUDA做他們的product,你們怎么看這兩個產(chǎn)品之間的功能?

Yangqing: CUDA我們一般不會把他們看成我們framework的一部分, 我們更多的是把它會看成C或者C++這樣的一個programming language。 用CUDA的主要原因是。NVidia對于CUDA的support非常好。我們以前在四五年前上,Caffe 上或者Torch上我們都有試過從OpenCL import,但其實很有意思的一個事兒是,目前好像沒有太多vendor在熱心推OpenCL這個方向,然后自從走了Metal的路后,對OpenCL 都不是太熱心。Google這邊在Android上面的話,更加會偏向于RenderScript 和 Vulkan。我目前也不是太清楚OpenCL 的eco-system有多大,目前的話就是說從framework 完整的角度來說, 我們沒有太強的熱心去做OpenCL 方向的工作,AMD最近的話,也差不多有一點moving away from OpenCL,and do HIP(Heterogeneous-compute Interface for Portability). 所以HIP這邊可能是一個挺有意思的方向。對于in general怎么樣來做一個parallel computation的abstraction,這方面是一個挺大的問題,也是一個挺有意思的方向,但是目前我們沒有找到太好的方向。我們最近有一個開源的project叫Glow,試圖來解決對accelerator,對special accelerator這方面,怎么樣來幫助硬件的vendordesign nicer,design a completion stack,但是我們也沒有考慮怎樣unifyOpenCL,OpenGL,HIP,Vulkan,Metal,等等其他一些programming languages。

Q6: 我有一個關(guān)于硬件平臺的問題,你提到軟硬件一定要結(jié)合,才能發(fā)展。那你現(xiàn)在覺得從production eco-system 上看,有哪些地方軟硬件結(jié)合做的還不是很好?

Yangqing: In general的話,目前的話是說,在production應(yīng)用上,軟硬件結(jié)合的只有CPU, GPU。所以說這個問題還是,除了google上可能有更多的insight之外,大家都還在探索的一個階段。CPU 跟 GPU 差不多都已經(jīng)足夠well known了。最大的挑戰(zhàn)可能就是說,怎么樣來manage heterogeneous computation,因為在做prediction service的時候,傳統(tǒng)CPU這邊的話,整個架構(gòu)都很homogeneous。我可以在productionlogic thread上來做computation也沒什么問題。然后一旦走向GPU,或者accelerator之后,就會需要有更加desegregatedservice。比如prediction/computation stack是一個pool,然后production logic會是另一個pool。那么在這樣的一個setting上面,怎么樣把中間整個connection結(jié)合起來,是不是network bandwidth會變成一個新的bottleneck。整個latency或者怎么樣來manage computationpool 然后capacity怎么樣最后balancing。 這些傳統(tǒng)的問題都會重新emerge起來。這方面還是需要一些early analysis。

Q7: 因為你特別focus在AI infrastructure的部分,剛剛討論很多問題,不管是hardwarespecialization,或者contrast between compilation andinterprerator,事實上,不管是research/industry,事實上已經(jīng)repeat很多次。所以我想請教你,以AI application,它present unique opportunity and change,for the system of hardware and software. How do you see the main difference?

Yangqing: 我覺得其實您說的特別對。有很多提到的問題是很傳統(tǒng)的software engineer這方面的問題。AI 這方面的問題,其實是大家逐漸意識到這件事 it's not a big data problem but an HPC(High-performance computing) problem,以前大家基本是說,從十幾年前開始,HPC,或者segmentationbig data,internet開始分道揚鑣的感覺,一方面internetcompany,一方面所有的national lab。HPC這邊的情況,就會focus在 computation efficiency, high connectivity。AI從現(xiàn)在來看的話,AI 非常強力的需要HPC這方面的 background,我們經(jīng)常開玩笑說,MPA is fight。所以這方面有一些interesting opportunities。Essentially,HPC 跟big Data 在solve kind of different problems,AI 基本上就是we need to solve this and that.

Q: 這也許就是為什么NVidia可以很快的把CUDA拿來support AI的部分. CUDA是非常,如果我們看CUDA的話,像現(xiàn)在一些,像NCCL這樣的communicationlibrary的話,有非常強的HPC的烙印在里頭 ,it's kinda like MPI replica.

Q8: 你們Facebook在做HPC方面的硬件,既然提到了HPC。我是做compiler的,我做runtime。看現(xiàn)在的模型就覺得,這不是我十幾年前做的HPC?我是spec出身的,全是computation,都是loop,做了很多l(xiāng)oop的優(yōu)化。因為這種東西,特別適合做那種非常傻的,只會計算,有大量cache的architecture,非常好, GPU就是perfect match。我在想說這個不難,說老實話。NVidia能這么快幾年發(fā)展起來,通用CPU比這個復(fù)雜多了。我們那個branch prediction 那個面積太復(fù)雜了,但是Intel那個branch prediction,ARM他們未必能做那么好。它這么多年想在CPU這個application上趕上Intel前幾年做的那個,這還差了好多年了。但是GPU就很快catch up了。我就想,人人都能做。那 Facebook在做什么呢?當(dāng)然你可以不用講,說 買GPU就好了

Yangqing: Facebook更多的還是一個軟件公司,我們在做一些軟件設(shè)計方面的design等等,我們也在和很多硬件的vendor partner在合作。包括比如說Glow 是怎么樣來幫助build 一個 softwarestack,okular compiler stack。包括像我們做的Onnx,希望能夠向硬件的partner 提供更多的insight, whatkind of models do we care about today. 然后從CPU優(yōu)化上的話,我們其實有一個挺強的organization的團(tuán)隊,在做類似MKL,或者M(jìn)KL-DNN這樣的優(yōu)化。所以 Why don't you talk to us?

Alex: 由于時間原因,我們今天的問答就到底為止,很榮幸今天能請到賈博士來和我們分享他在Facebook的工作,對AI的看法,對未來行業(yè)的想法。謝謝賈博士今天的分享!

標(biāo)簽: Google isp 金融

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:專訪吳恩達(dá):AI將改變所有人類工作,下次寒冬不會到來

下一篇:海量數(shù)據(jù)條件下,企業(yè)自定義數(shù)據(jù)分析需求的實現(xiàn)