<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 智能計(jì)算 > 業(yè)界動(dòng)態(tài) > 機(jī)器學(xué)習(xí)如何改變未來(lái)十年軟硬件

          機(jī)器學(xué)習(xí)如何改變未來(lái)十年軟硬件

          作者: 時(shí)間:2017-08-29 來(lái)源:量子位 收藏
          編者按:摩爾定律放緩,使得我們得以重新進(jìn)入“架構(gòu)的黃金年代”,見(jiàn)證各式各樣芯片和指令集的飛速發(fā)展。

            最近,Google Brain員工,TensorFlow產(chǎn)品經(jīng)理Zak Stone在硅谷創(chuàng)業(yè)者社群South Park Commons上做了個(gè)講座,談到了TensorFlow、XLA、Cloud TPU、TFX、TensorFlow Lite等各種新工具、新潮流如何塑造著的未來(lái)。同時(shí),他還暗示了一些還未向公眾披露的exciting的事兒。

          本文引用地址:http://www.ex-cimer.com/article/201708/363672.htm

            講座的題目叫“Tensor Flow, Cloud TPUs, and ML progress”,以下是整個(gè)講座的概要,量子位編譯整理自South Park Commons官方博客。

            作為一個(gè)平臺(tái)來(lái)說(shuō),TensorFlow算是一場(chǎng)豪賭:它兼顧了快速,靈活,還可用于生產(chǎn)。實(shí)驗(yàn)和執(zhí)行之間的轉(zhuǎn)換要足夠快,才能保證工程生產(chǎn)力,靜態(tài)圖像計(jì)算通過(guò)Python等高級(jí)靈活的語(yǔ)言來(lái)表示,同時(shí)圖編譯允許對(duì)特定目標(biāo)進(jìn)行準(zhǔn)確度優(yōu)化。


            作為一個(gè)開(kāi)源項(xiàng)目,TensorFlow極為成功,它從2015年11月發(fā)布至今在Github上已經(jīng)獲得了超過(guò)20,000個(gè)commit。Github版的TensorFlow每周與Google內(nèi)部鏡像文件之間至少會(huì)進(jìn)行一次雙向同步,同時(shí)TensorFlow也收獲了來(lái)自Intel,Microsoft,IBM,Rstudio,Minds.ai以及其他公司研發(fā)團(tuán)隊(duì)的大大小小的貢獻(xiàn)。

            為了更好地觸及用戶,能夠在移動(dòng)端上提高運(yùn)行TensorFlow模型效率的TensorFlow Lite將會(huì)在今年晚些時(shí)候內(nèi)嵌到設(shè)備中,而像是XLA這樣的項(xiàng)目更具野心:XLA使用深度學(xué)習(xí)來(lái)支持線性代數(shù)元的先時(shí)和實(shí)時(shí)編譯,從而為任意的目標(biāo)后端系統(tǒng)生成加速過(guò)的代碼。XLA的目標(biāo)是在遞階優(yōu)化上實(shí)現(xiàn)重大突破,不僅是在GPU架構(gòu)上,而是要在任意能夠平行放置線性代數(shù)元的架構(gòu)上實(shí)現(xiàn)突破?! ?/p>

            谷歌內(nèi)部,在CEO Sundar Pichai要成為“AI-first”公司的號(hào)召下,TensorFlow被應(yīng)用到非常多的項(xiàng)目當(dāng)中。

            而加速研發(fā)基于軟件的趨勢(shì)不僅在Google身上發(fā)生,亞馬遜,蘋(píng)果,百度,F(xiàn)acebook,微軟,Salesforce,Uber,Lyft等幾乎所有的主流科技企業(yè),都雇傭了專業(yè)的研發(fā)團(tuán)隊(duì)來(lái)推動(dòng)的工業(yè)化。而在這些公司中,深度學(xué)習(xí)的開(kāi)發(fā)平臺(tái)也是五花八門(mén),其中包括來(lái)自Facebook的PyTorch和Caffe2,來(lái)自Microsoft的CNTK,來(lái)自Apple的Core ML以及來(lái)自Amazon的MXNet等。

            機(jī)器學(xué)習(xí)的崛起,意味著原來(lái)的clean abstraction和模塊化設(shè)計(jì)正在被高維浮點(diǎn)張量和高效矩陣乘法所取代。

            按這種趨勢(shì)發(fā)展下去,軟件工程行業(yè)將徹底改變。

            Google軟件工程師D. Sculley曾寫(xiě)過(guò)一篇題為“Machine Learning: The High-Interest Credit Card of Technical Debt”的文章,他在其中列舉出了機(jī)器學(xué)習(xí)系統(tǒng)促進(jìn)低劣軟件設(shè)計(jì)的種種可能,甚至?xí)惯@些低劣的設(shè)計(jì)成為必須。他提到,“這些系統(tǒng)的基本代碼跟正常代碼擁有相同的復(fù)雜度,但在系統(tǒng)層面上擁有更大的復(fù)雜度,從而可能引發(fā)潛在的風(fēng)險(xiǎn)。”

            機(jī)器學(xué)習(xí)系統(tǒng)通過(guò)將所有系統(tǒng)輸入緊密耦合,模糊了模型邊界和抽象:理想的行為不變性不是來(lái)自軟件邏輯,而是來(lái)自于驅(qū)動(dòng)它們的特定外部數(shù)據(jù)。盡管存在通過(guò)靜態(tài)分析和圖連接來(lái)辨別代碼可靠性的工具,但總體上,這些工具并沒(méi)有辦法用來(lái)分析數(shù)據(jù)的相關(guān)性。

            D Sculley等人在文章中討論了幾種系統(tǒng)設(shè)計(jì)中的劣勢(shì),很能與相關(guān)從業(yè)者產(chǎn)生共鳴:

            1. Glue Code(粘滯的代碼)系統(tǒng)設(shè)計(jì)樣式,“在這其中需要寫(xiě)大量的支持代碼負(fù)責(zé)把數(shù)據(jù)傳入、傳出各種用途的安裝包”;

            2. Pipeline jungles(亂七八糟的流水線),它會(huì)隨時(shí)間有機(jī)地演變,數(shù)據(jù)準(zhǔn)備系統(tǒng)“可能會(huì)變成由scape,join和sampling步驟組成的一團(tuán)亂麻,通常還伴隨著中間文件的輸出”;

            3. Configuration debt(龐大的編譯代價(jià)),將會(huì)隨著系統(tǒng)和生產(chǎn)線的研發(fā)而逐漸累積,集合了“各種編譯選項(xiàng),包括使用的特征有哪些,怎樣篩選數(shù)據(jù),特定學(xué)習(xí)算法的設(shè)置(范圍很寬),潛在的預(yù)處理或者后處理,驗(yàn)證方法等等。”

            即使在更小、更輕量化的項(xiàng)目中,工程師還會(huì)被以下這些問(wèn)題困擾:

            1. 在實(shí)驗(yàn)中模型架構(gòu)和權(quán)重的版本——尤其是當(dāng)模型從不同體系借來(lái)了部分與訓(xùn)練模型,或者從其他模型借來(lái)了權(quán)重的時(shí)候。

            2. 數(shù)據(jù)來(lái)源和特征的版本;

            3. 在實(shí)驗(yàn)環(huán)境和實(shí)際生產(chǎn)環(huán)境之間的遷移(domain shift);

            4. 監(jiān)測(cè)生產(chǎn)中推斷的質(zhì)量。

            解決這些問(wèn)題的一個(gè)可能方案是TFX,它是一個(gè)Google內(nèi)部研發(fā)的平臺(tái),用來(lái)在生產(chǎn)中分布和供應(yīng)機(jī)器學(xué)習(xí)模型:

            創(chuàng)造和管理一個(gè)可用于可靠地生產(chǎn)和部署機(jī)器學(xué)習(xí)模型的平臺(tái),需要在很多部件之間進(jìn)行細(xì)致編排——這些部件包括基于訓(xùn)練數(shù)據(jù)生成模型的學(xué)習(xí)器、用于分析和驗(yàn)證數(shù)據(jù)和模型的模塊、以及最終在生產(chǎn)工程中用于部署模型的基礎(chǔ)架構(gòu)。當(dāng)數(shù)據(jù)隨著時(shí)間變化且模型在連續(xù)更新時(shí),平臺(tái)的管理就變得非常難。

            不幸的是,這些編排通常是在通過(guò)glue code和特定的腳本文件來(lái)有針對(duì)性的一一處理,導(dǎo)致了復(fù)制成本大、系統(tǒng)脆弱同時(shí)伴隨著大量的技術(shù)隱患。

            TFX標(biāo)準(zhǔn)化了這些過(guò)程和部件,并把它們整合到單個(gè)平臺(tái)上,從而簡(jiǎn)化了平臺(tái)編譯的過(guò)程,在確保平臺(tái)可靠性、減少服務(wù)崩潰的基礎(chǔ)上,將制作的時(shí)間從數(shù)月減少到了數(shù)周。


            諸如英特爾旗下的Nervana、英偉達(dá)、Cerebras和Google等公司全都開(kāi)始研發(fā)能夠加速機(jī)器學(xué)習(xí)中線性代數(shù)運(yùn)算的下一代硬件架構(gòu)。且在默認(rèn)情況下,每種架構(gòu)都需要獨(dú)特的、像cuDNN那樣的底層、手動(dòng)優(yōu)化基元庫(kù)。(cuDNN全稱是CUDA Deep Neural Network library,是NVIDIA專門(mén)針對(duì)深度神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)的一套GPU計(jì)算加速庫(kù)。)

            想打破這個(gè)趨勢(shì),需要同行們?cè)赬LA等更普適的編譯器框架上下更多功夫。

            Google的TPU(Tensor Processing Units)目前最有可能打破GPU的統(tǒng)治。每個(gè)Cloud TPU能提供高達(dá)每秒180萬(wàn)億次的浮點(diǎn)運(yùn)算,64GB的超高帶寬存儲(chǔ)空間以及可串聯(lián)的特性。跟之前超級(jí)計(jì)算機(jī)的架構(gòu)不同,TPU是從零開(kāi)始設(shè)計(jì),專門(mén)針對(duì)機(jī)器學(xué)習(xí)中常見(jiàn)的線性代數(shù)運(yùn)算。

            TPU是與TensorFlow集成的,Google提供收費(fèi)云端服務(wù)(Cloud TPU),同時(shí)通過(guò)TensorFlow Research Cloud(TFRC)項(xiàng)目,對(duì)想要提前使用TPU的機(jī)器學(xué)習(xí)專家進(jìn)行補(bǔ)貼,提供1000個(gè)Cloud TPU,希望他們能通過(guò)論文和開(kāi)源軟件來(lái)跟世界分享其研究成果。



            小結(jié)

            像TensorFlow這樣的圖計(jì)算和深度學(xué)習(xí)庫(kù)是未來(lái)計(jì)算行業(yè)發(fā)展背后的主要驅(qū)動(dòng)力,這推動(dòng)我們?nèi)ブ匦聦徱曄到y(tǒng)架構(gòu),從硬件到編譯器再到更高級(jí)的程序語(yǔ)言和設(shè)計(jì)規(guī)范。

            于是,繁重的工作擺在了軟件架構(gòu)師,工程師、研究人員等從業(yè)者面前,但同時(shí)這過(guò)程也很令人興奮。就像Zak在演講中所總結(jié)的一樣:

            我讀研究生的時(shí)候,這些驚艷的應(yīng)用大都還不可能實(shí)現(xiàn)——當(dāng)人們對(duì)機(jī)器學(xué)習(xí)技術(shù)習(xí)以為常,然后開(kāi)始做一些我們現(xiàn)在預(yù)見(jiàn)不到的事情,會(huì)是什么樣呢?第一批TensorFlow原生的產(chǎn)品會(huì)是什么樣?”



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();