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

Caffe作者賈揚(yáng)清:AI,從大數(shù)據(jù)演進(jìn)到高性能計(jì)算

2019-08-27    來(lái)源:raincent

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬(wàn)Linux鏡像隨意使用

本期 Robin.ly 硅谷交流活動(dòng)邀請(qǐng)到 Caffe 作者賈揚(yáng)清博士與大家分享從 Caffe 到 PyTorch 的 AI 基礎(chǔ)架構(gòu)演進(jìn)以及 AI 時(shí)代軟件開發(fā)的趨勢(shì)和挑戰(zhàn)。他在現(xiàn)場(chǎng)與 Robin.ly 創(chuàng)始人 Alex Ren 對(duì)于 Caffe 和 PyTorch 的開發(fā)及軟硬件協(xié)同設(shè)計(jì)進(jìn)行了精彩的訪談對(duì)話,并回答了現(xiàn)場(chǎng)觀眾的問(wèn)題。

從 Caffe 到 PyTorch

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

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

Alex: 后來(lái)到了 Facebook 之后繼續(xù)做 Caffe 你有遇到什么新的問(wèn)題嗎?

Yangqing: Caffe 因?yàn)橐呀?jīng)六年多了,所以當(dāng)時(shí)有很多歷史遺留問(wèn)題。最開始做 Caffe 的時(shí)候大家都是照著 computer vision 的模式來(lái)做的,所以很多 design 都是在 CV 方面比較 make sense,在 NLP 等其他地方都相對(duì)比較難一些。當(dāng)時(shí)整個(gè) modular design 還沒(méi)有太清楚。Facebook 在 15 年的時(shí)候其實(shí)很多產(chǎn)品里都還在用 Caffe 的 runtime 來(lái)部署,但是后來(lái)整個(gè) flexibility 都會(huì)有些問(wèn)題,所以這也是我們后來(lái)寫 Caffe2 跟 PyTorch 的原因。

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

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

軟硬件協(xié)同設(shè)計(jì)

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

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

Alex: 也就是說(shuō)它搭建了一個(gè) eco-system,給 developer 們有更方便的方法去用,對(duì)吧?

Yangqing: 對(duì)!

計(jì)算機(jī)領(lǐng)域的文化

Alex: Facebook 也是少有的做比較頂尖的 AI research 的一個(gè)公司,你在里邊帶領(lǐng) AI infrastructure 這塊的一些研究。我知道 Facebook,Google 這樣的公司有個(gè)特點(diǎn),就是它有很多大牛都在一起工作。而很多別的公司經(jīng)常有這種一山不能容二虎這種現(xiàn)象。我不知道你在這方面有什么體會(huì),有什么心得可以分享?是什么樣的文化使得 Facebook 在 research 這方面有個(gè) cutting-edge research 的結(jié)果?

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

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

Yangqing: Unframework 基本上是說(shuō)以前大家在做 AI 的 software 的時(shí)候一個(gè) framework 什么都有。當(dāng)時(shí)六年前大家說(shuō) Caffe,Torch 跟 Theano,就是一個(gè) framework,你在里頭或者外頭想做什么也很難。現(xiàn)在比如說(shuō),像我們有不同的硬件出來(lái),有 TPU,有 visualization 等等,逐漸有點(diǎn)類似于一個(gè)單元的 operation system,我做完一個(gè) operation system 的時(shí)候不是說(shuō)所有的事都完成就可以在上面裝 app 和 extension 了。發(fā)展到今天,framework 是一個(gè)很小的部分,外面有很多其他各種組件譬如說(shuō)硬件,visualization 等等。舉個(gè)例子說(shuō) PyTorch 目前我們?cè)诟?Google 合作來(lái)做一個(gè) Tensorboard,a very nice visualization tool for AI,它就是不光限制在一個(gè) framework,而是 build different components,get components clip,用各種各樣的方式 plug 起來(lái)。

管理團(tuán)隊(duì)的軟技能

Alex: 你當(dāng)初也是典型的 engineering research 出來(lái)的,現(xiàn)在去 lead 的組織,有很多工程師。你覺得在這個(gè)過(guò)程中 soft skills 你有些什么收獲,給大家有什么建議?

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

Alex: 接下來(lái)歡迎場(chǎng)下同學(xué)提問(wèn)!

從數(shù)據(jù)到?jīng)Q策的新趨勢(shì)

Q1: 這兩年我們看到了一個(gè)趨勢(shì),從 classification regression 要做 reasoning,然后要去做 reinforcement learning,要去做 decision making,在這個(gè)趨勢(shì)你有什么看法呢?因?yàn)閺奈覀兊闹庇X上來(lái)說(shuō)這個(gè)是跟過(guò)去相反的趨勢(shì),但是實(shí)際上我們看到如果不這么做的話,直接用 probabilistic 的方法遇到了很多問(wèn)題,所以想問(wèn)您對(duì)這個(gè)趨勢(shì)怎么看,這是個(gè)大趨勢(shì)嗎?他將來(lái)怎么樣發(fā)展會(huì)對(duì)現(xiàn)在 Deep Learning 社區(qū)有什么樣的幫助?

Yangqing: 我覺得這應(yīng)該是一個(gè)挺大的趨勢(shì),在很多領(lǐng)域都有體現(xiàn)。比如說(shuō)像六七年前我在做 PhD 的時(shí)候我們做 probabilistic graphical model,第一個(gè)是,數(shù)據(jù)進(jìn)來(lái)之后我們可以把它建模成一個(gè)大的 joint probability,但是 graphical model 關(guān)注的是怎么樣來(lái) interpret 不同數(shù)據(jù),或者不同 dimension 之間的 relationship,causality 等等。所以一方面是計(jì)算或者歸納,一方面是怎么從 statistic 當(dāng)中提取一些 logic 或者一些 rule 來(lái),因?yàn)榫拖衲銊偛盘岬降,因(yàn)槲覀兗冇?statistical 或者現(xiàn)在的 deep learning 的方法的話,我們很難從中提煉出一些 knowledge,what is the guiding principle for us to design new models?前面幾年像 Alex 提出來(lái)之后大家覺得這樣有一個(gè) principle 來(lái)設(shè)計(jì) CNN,而我們?cè)谶@個(gè)方向上已經(jīng)走的差不多了,然后接下來(lái)就是 what is the new principle for us to design even better models?Maybe it’s AutoML,or maybe it’s kind of new principles. 所以從現(xiàn)有的這些數(shù)據(jù)當(dāng)中提煉出 logic,提煉出知識(shí)來(lái)是一個(gè)挺重要的東西。

計(jì)算機(jī)語(yǔ)言的選擇

Q2: 前段時(shí)間有一個(gè)語(yǔ)言叫 Julia 橫空出世,號(hào)稱集百家之長(zhǎng),所以我想問(wèn)問(wèn)你對(duì)這個(gè)語(yǔ)言有什么看法,有沒(méi)有打算基于 Julia 這個(gè)語(yǔ)言建立一個(gè) framework。

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

數(shù)據(jù)收集與處理

Q3: 我們知道 deep learning 是非常 data hungry 的,我在想在設(shè)計(jì) AI infrastructure 的時(shí)候有沒(méi)有考慮在一定 level 上比較 general 的 direction 可以把 data collection 這件事情也集成進(jìn)來(lái)?

Yangqing: 在大公司可能這個(gè)不是一個(gè)問(wèn)題,data is kind of naturally coming in,但是在很多應(yīng)用的時(shí)候的確我們也發(fā)現(xiàn) data 的 pipeline 需要很緊密的 integrate 到 compute 系統(tǒng)。主要的兩塊第一個(gè)是 how to actually process data,就是怎么樣用傳統(tǒng)的 MapReduce 或者說(shuō)現(xiàn)在的 online approach 來(lái) feed data into training algorithms,特別是 high performance 的環(huán)境下我們發(fā)現(xiàn)不光計(jì)算是個(gè)瓶頸 data 也是一個(gè)瓶頸。如果我們?cè)?GPU 上做計(jì)算的話,GPU 能算得如此之快經(jīng)常導(dǎo)致大家的 data input 跟不上。另外一塊就是怎么樣做 data versioning 跟 data management。我們發(fā)現(xiàn)模型 train 完了之后 holdout 上的 data,validation 上的 data performance 非常好,上線之后就發(fā)現(xiàn)不行,最后發(fā)現(xiàn) validation data 搞錯(cuò)了,跟 training data 有 overlap 等等。所以說(shuō),怎么樣讓我們很容易的 detect 這樣一些問(wèn)題呢,可以更好的做 data management,這個(gè)其實(shí)在 infrastracture 這邊的 saving 會(huì)很大。

Q4: 你覺得在設(shè)計(jì) AI infrastructure 的時(shí)候如果想把 data 考慮進(jìn)去的話應(yīng)該怎么做呢?

Yangqing: 傳統(tǒng)的 data infrastructure 一直以來(lái)在很多公司都是一個(gè)挺大的 organization,有非常成熟的像 Hadoop,Google 的 Big Table 這樣一些解決方案;旧 data infra 這邊大家考慮的問(wèn)題也是兩個(gè),第一個(gè)是 serving,像 web serving,第二個(gè)是 batch processing,像 MapReduce。比如像 Berkeley 前面幾年我們一直在做的 Spark 的這個(gè)項(xiàng)目也是 Spark ML 一直以來(lái)比較偏向于 batch processing MapReduce 這樣一個(gè)方向。而現(xiàn)在突然這個(gè) SGD (Stochastic gradient descent) 的 training 方法來(lái)了之后大家發(fā)現(xiàn)以前這種 batch processing 的想法已經(jīng)行不通了。所以像 Berkeley 的最近的 Ray,Clipper 這些 project 就會(huì)更加偏向于更加現(xiàn)代一些的 SGD 的某些 computation pattern。這方面沒(méi)有一個(gè)太好的解決方案。

Q5: 你剛才說(shuō)到數(shù)據(jù)的問(wèn)題,其實(shí)很大的問(wèn)題是像你說(shuō)的,數(shù)據(jù)其實(shí)一直在變,這個(gè) tracking 其實(shí)跟 big data 的 stack 是很不一樣的。Big data 很強(qiáng)調(diào) immutability,它要是不變的我們才可以做很多事情,F(xiàn)在你的數(shù)據(jù)不停在變,label 在變,然后新的數(shù)據(jù)進(jìn)來(lái),這個(gè) versioning 現(xiàn)在是一個(gè) big mess。我們看了很多 solution 也都找不到很好的一種,我想聽聽你有沒(méi)有什么想法?

Yangqing: 對(duì),不光是 data version,而且 model versioning 也有問(wèn)題。即使是同一個(gè) data,我們?cè)谏线吪軆纱?training,出來(lái)結(jié)果都不一樣。我們?cè)?Facebook 做 testing 的時(shí)候,有時(shí)候就算是兩個(gè) matrix application,你把 threading 換一下,從 4 個(gè)詞變成 8 個(gè)詞結(jié)果就不一樣。非常 deep 的 neural network 你從最開始有這些小的變化到最后的一個(gè)輸出,基本上有很多時(shí)候都是沒(méi)法 guarantee binary wise compatibility 的。CPU 跟 GPU 之間幾乎不能,大概像 ResNet 這樣一個(gè)模型,最后的輸出可能會(huì)有 1% 到 2% 的 fluctuation 都是正常的。所以說(shuō)對(duì)這種 testing environment 或者說(shuō)怎么樣來(lái) interpret ‘Correctness’,大家目前還不太清楚。最大的一個(gè) investment 在 Facebook 這邊是怎么樣做更好的 experimentation management,可能沒(méi)法解決這些問(wèn)題,但是我們可以解決對(duì)于任意 experiment 來(lái)說(shuō),我們可以記錄 as much information as possible,在哪個(gè) commit 上面 run 的這個(gè),在哪個(gè)版本的 data 上跑的,使得我們?cè)?manually 做 inspection 的時(shí)候能夠有更多的 information。

工具的使用

Q6: 前面介紹提到說(shuō)從 research 到 production,一個(gè)方面是工具上的不同,另外一方面其實(shí)是 research 過(guò)程中,比如你用 Jupyter Notebook,你會(huì)做很多的小的 code 的片段,但真的上 production 你需要一整塊的、經(jīng)過(guò) unit test 的軟件工程整個(gè)進(jìn)入系統(tǒng)。這個(gè)之間其實(shí)還是有一個(gè)工具上的不同,想聽聽看 Facebook 有什么樣的解決方案。

Yangqing: 我先說(shuō)工具的這個(gè)問(wèn)題吧,工具的話其實(shí)我們也發(fā)現(xiàn) Jupyter Notebook 最大的問(wèn)題是什么呢,就是說(shuō)跑實(shí)驗(yàn)的時(shí)候才能跑這些個(gè),最后發(fā)現(xiàn),再跑一遍跑不出來(lái)了。所以我們現(xiàn)在內(nèi)部有一個(gè)類似于 Notebook 這樣的 environment 但是更多的就是用來(lái)純做 research,更多的時(shí)候工具這邊大家都是 set expectation,就是說(shuō) this is the place where you maximize your ideas but it’s not guaranteed to ship into products,at all。所以最后在做 product 的時(shí)候大家還是會(huì)需要 enforce 一些 quality test 相關(guān)的東西。更多的是從 experience 的角度來(lái)說(shuō),使得大家更加像一些,比如 research 用 Matlab,product 用 C++,這怎么寫?如果 research 用的 Python,只不過(guò)是我用的是 Notebook,然后 product 用的是 Python,只不過(guò)是一個(gè).py file,這個(gè)時(shí)候 migration 就相對(duì)更加容易一些。所以我們?cè)?PyTorch 跟 Caffe2 這邊非常重視怎么樣來(lái) unify experiences,包括比如說(shuō)像 Twython 跟 Scripton 也是,they look similar,保證你真的回頭要 transfer 的時(shí)候你可以吧 Twython 改成 Scripton 就完了,沒(méi)有太多的像從 Matlab 到 C++ 的這樣一個(gè)變化了。

PyTorch 與 TensorFlow

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

Yangqing: 我問(wèn)你這樣一個(gè)小問(wèn)題。我們?cè)谟?uber,gmail,或者 calendar 的時(shí)候,我們會(huì)擔(dān)心是在 Android 上面,還是 iOS 上面嗎?就是說(shuō)根本上到最后 product 這邊, as long as we have a platform for us to run models, it’s probably gonna be not different. 對(duì)于 uber 來(lái)說(shuō),它可能并不擔(dān)心 iOS 或者 Android,假如說(shuō)他們能合并,那這是一個(gè)最省事兒的事兒,那將來(lái)他們就不用寫 app 寫兩套了。但是 it’s not a deal breaker。 然后從 framework 的角度來(lái)說(shuō),我覺得一方面大家開玩笑說(shuō) There’s a war on frameworks, 對(duì)吧?從當(dāng)年相對(duì)比較 academic 的 Caffe 跟 Torch 跟 Theano 這三家,到現(xiàn)在 Google 的 TensorFlow,Amazon 的 MXnet,F(xiàn)acebook 的 PyTorch,Microsoft 的 CNTK 等等,到最后大家發(fā)現(xiàn)這些 idea 都會(huì)逐漸 converge 起來(lái)。所以我個(gè)人不會(huì)太擔(dān)心最后 which framework wins on framework, or which framework migrates which framework. 最后的 idea 都差不多。

 

 

軟硬件結(jié)合的挑戰(zhàn)

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

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

10 年后博士研究的玩法

Q8: 現(xiàn)在這些 framework,這些工具非常的成熟完善,這必然是件好事。但從另一個(gè)角度來(lái)講他對(duì) computer vision researcher 和 graduate student 的 impact 是非常不同的。比如說(shuō)五年前 / 八年前你可以 design 自己的 feature,做一個(gè) minimization variation whatever graphical model 你可以發(fā) paper,這個(gè)玩法和現(xiàn)在必然不同,現(xiàn)在你要 train model,你要自己想辦法做一些新的 architecture 或者其它一些比較有竅門的東西才能發(fā) paper。那比如說(shuō)十年之后你再去 Berkeley 讀一個(gè) computer vision PhD 從頭開始的話,這個(gè)玩法是什么?

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

Alex: 我們今天的問(wèn)答就到底為止,很榮幸今天能請(qǐng)到賈博士來(lái)和我們分享他在 Facebook 的工作,對(duì) AI 的看法,對(duì)未來(lái)行業(yè)的想法。謝謝賈博士今天的分享!

主持人:Alex Ren

作者:Robin.ly

標(biāo)簽: 大數(shù)據(jù)演進(jìn) 

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

上一篇:從全球大數(shù)據(jù)市場(chǎng)看未來(lái)發(fā)展趨勢(shì)

下一篇:Apache Beam 實(shí)戰(zhàn)指南 | 大數(shù)據(jù)管道 (pipeline) 設(shè)計(jì)及實(shí)戰(zhàn)