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

          新聞中心

          EEPW首頁 > 智能計算 > 設計應用 > 怎樣加速“深度學習”?GPU、FPGA還是專用芯片?

          怎樣加速“深度學習”?GPU、FPGA還是專用芯片?

          作者: 時間:2018-03-27 來源:網(wǎng)絡 收藏

            計算機發(fā)展到今天,已經(jīng)大大改變了我們的生活,我們已經(jīng)進入了智能化的時代。但要是想實現(xiàn)影視作品中那樣充分互動的人工智能與人機互動系統(tǒng),就不得不提到深度學習。

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

            深度學習

            深度學習的概念源于人工神經(jīng)網(wǎng)絡的研究。含多隱層的多層感知器就是一種深度學習結構。深度學習通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。

            深度學習的概念由Hinton等人于2006年提出?;谏钚哦染W(wǎng)(DBN)提出非監(jiān)督貪心逐層訓練算法,為解決深層結構相關的優(yōu)化難題帶來希望,隨后提出多層自動編碼器深層結構。此外Lecun等人提出的卷積神經(jīng)網(wǎng)絡是第一個真正多層結構學習算法,它利用空間相對關系減少參數(shù)數(shù)目以提高訓練性能。

            深度學習是機器學習研究中的一個新的領域,其動機在于建立、模擬人腦進行分析學習的神經(jīng)網(wǎng)絡,它模仿人腦的機制來解釋數(shù)據(jù),例如圖像,聲音和文本。

            同機器學習方法一樣,深度機器學習方法也有監(jiān)督學習與無監(jiān)督學習之分.不同的學習框架下建立的學習模型很是不同.

            例如,卷積神經(jīng)網(wǎng)絡(Convolutional neural networks,簡稱CNNs)就是一種深度的監(jiān)督學習下的機器學習模型,而深度置信網(wǎng)(Deep Belief Nets,簡稱DBNs)就是一種無監(jiān)督學習下的機器學習模型。

            Artificial Intelligence,也就是人工智能,就像長生不老和星際漫游一樣,是人類最美好的夢想之一。雖然計算機技術已經(jīng)取得了長足的進步,但是到目前為止,還沒有一臺電腦能產(chǎn)生“自我”的意識。是的,在人類和大量現(xiàn)成數(shù)據(jù)的幫助下,電腦可以表現(xiàn)的十分強大,但是離開了這兩者,它甚至都不能分辨一個喵星人和一個汪星人。

            圖靈(圖靈,大家都知道吧。計算機和人工智能的鼻祖,分別對應于其著名的“圖靈機”和“圖靈測試”)在 1950 年的論文里,提出圖靈試驗的設想,即,隔墻對話,你將不知道與你談話的,是人還是電腦。這無疑給計算機,尤其是人工智能,預設了一個很高的期望值。但是半個世紀過去了,人工智能的進展,遠遠沒有達到圖靈試驗的標準。這不僅讓多年翹首以待的人們,心灰意冷,認為人工智能是忽悠,相關領域是“偽科學”。

            但是自 2006 年以來,機器學習領域,取得了突破性的進展。圖靈試驗,至少不是那么可望而不可及了。至于技術手段,不僅僅依賴于云計算對大數(shù)據(jù)的并行處理能力,而且依賴于算法。這個算法就是,Deep Learning。借助于 Deep Learning 算法,人類終于找到了如何處理“抽象概念”這個亙古難題的方法。


            2012年6月,《紐約時報》披露了Google Brain項目,吸引了公眾的廣泛關注。這個項目是由著名的斯坦福大學的機器學習教授Andrew Ng和在大規(guī)模計算機系統(tǒng)方面的世界頂尖專家JeffDean共同主導,用16000個CPU Core的并行計算平臺訓練一種稱為“深度神經(jīng)網(wǎng)絡”(DNN,Deep Neural Networks)的機器學習模型(內(nèi)部共有10億個節(jié)點。這一網(wǎng)絡自然是不能跟人類的神經(jīng)網(wǎng)絡相提并論的。要知道,人腦中可是有150多億個神經(jīng)元,互相連接的節(jié)點也就是突觸數(shù)更是如銀河沙數(shù)。曾經(jīng)有人估算過,如果將一個人的大腦中所有神經(jīng)細胞的軸突和樹突依次連接起來,并拉成一根直線,可從地球連到月亮,再從月亮返回地球),在語音識別和圖像識別等領域獲得了巨大的成功。

            項目負責人之一Andrew稱:“我們沒有像通常做的那樣自己框定邊界,而是直接把海量數(shù)據(jù)投放到算法中,讓數(shù)據(jù)自己說話,系統(tǒng)會自動從數(shù)據(jù)中學習?!绷硗庖幻撠熑薐eff則說:“我們在訓練的時候從來不會告訴機器說:‘這是一只貓?!到y(tǒng)其實是自己發(fā)明或者領悟了“貓”的概念。”


            2012年11月,微軟在中國天津的一次活動上公開演示了一個全自動的同聲傳譯系統(tǒng),講演者用英文演講,后臺的計算機一氣呵成自動完成語音識別、英中機器翻譯和中文語音合成,效果非常流暢。據(jù)報道,后面支撐的關鍵技術也是DNN,或者深度學習(DL,DeepLearning)。

            用什么加快計算速度?異構處理器

            在摩爾定律的作用下,單核標量處理器的性能持續(xù)提升,軟件開發(fā)人員只需要寫好軟件,而性能就等待下次硬件的更新,在2003年之前的幾十年里,這種“免費午餐”的模式一直在持續(xù)。2003年后,主要由于功耗的原因,這種“免費的午餐”已經(jīng)不復存在。為了生存,各硬件生產(chǎn)商不得不采用各種方式以提高硬件的計算能力,以下是目前最流行的幾種方式是。

            1) 讓處理器一個周期處理多條指令 ,這多條指令可相同可不同。如Intel Haswell處理器一個周期可執(zhí)行4條整數(shù)加法指令、2條浮點乘加指令,同時訪存和運算指令也可同時執(zhí)行。

            2) 使用向量指令 ,主要是SIMD和VLIW技術。SIMD技術將處理器一次能夠處理的數(shù)據(jù)位數(shù)從字長擴大到128或256位,也就提升了計算能力。

            3) 在同一個芯片中集成多個處理單元 ,根據(jù)集成方式的不同,分為多核處理器或多路處理器。多核處理器是如此的重要,以至于現(xiàn)在即使是手機上的嵌入式ARM處理器都已經(jīng)是四核或八核。

            4) 使用異構處理器,不同的架構設計的處理器具有不同的特點,如X86 處理器為延遲優(yōu)化,以減少指令的執(zhí)行延遲為主要設計考量(當然今天的X86 處理器設計中也有許多為吞吐量設計的影子);如NVIDIA 和AMD 則為吞吐量設計,以提高整個硬件的吞吐量為主要設計目標。

            加速

            相比之前在游戲、視覺效果中的應用,GPU正在成為數(shù)據(jù)中心、超算中心的標配,并廣泛應用于深度學習、大數(shù)據(jù)、石油化工、傳媒娛樂、科學研究等行業(yè)。GPU計算正在加速著深度學習革命,作為深度學習研究技術平臺領導廠商,NVIDIA將為中國的深度學習提供更多的技術平臺和解決方案,并繼續(xù)與中國的合作伙伴一起積極參加和推動深度學習生態(tài)鏈的構建。


            基于GPU加速的深度學習算法,百度、微軟和Google的計算機視覺系統(tǒng)在ImageNet圖像分類和識別測試中分別達到了5.98% (2015年1月數(shù)據(jù))4.94%(2015年2月數(shù)據(jù))、4.8%(2015年2月數(shù)據(jù))、的錯誤率,接近或超過了人類識別水平——跑分競賽雖然有針對已知數(shù)據(jù)集進行特定優(yōu)化之嫌,但優(yōu)化結果對工業(yè)界的實踐仍然具有參考價值。

            人工智能從過去基于模型的方法,變成現(xiàn)在基于數(shù)據(jù)、基于統(tǒng)計的方法,主要得益于GPU高度并行的結構、高效快速的連接能力。事實證明GPU很適合深度學習。

            幾乎所有深度學習的研究者都在使用GPU

            熟悉深度學習的人都知道,深度學習是需要訓練的,所謂的訓練就是在成千上萬個變量中尋找最佳值的計算。這需要通過不斷的嘗試實現(xiàn)收斂,而最終獲得的數(shù)值并非是人工確定的數(shù)字,而是一種常態(tài)的公式。通過這種像素級的學習,不斷總結規(guī)律,計算機就可以實現(xiàn)像像人一樣思考。如今,幾乎所有的深度學習(機器學習)研究者都在使用GPU進行相關的研究。當然,我說的是“幾乎”。除了GPU之外,包括MIC和也提供了不同的解決方案。NVIDIA如何看待不同的硬件架構對深度學習的影響,又是如何評價這些技術的呢?

            NVIDIA中國區(qū)解決方案架構工程總監(jiān)羅華平認為:“技術發(fā)展和科技的發(fā)展,是需要不同的技術一起來參與。無論是GPU也好、也好或者是專用的神經(jīng)網(wǎng)芯片也好,它的主要目的都是推動深度學習(機器學習)這個方向的技術發(fā)展。那么我們在初期,確實可以嘗試不同的技術,來探討哪種技術可以更好的適合這項應用。從目前來看,深度學習大量的使用,主要集中在訓練方面。那么在這個領域,GPU確實是非常適合的,這也體現(xiàn)在所有的這些工業(yè)界的大佬如BAT、谷歌,F(xiàn)acebook等等,都在使用GPU在做訓練。”而除了訓練之外,在實際的應用方面,NVIDIA也正在結合中國地區(qū)IDC機房普遍具備的功耗、網(wǎng)絡等特點,“考慮是否設計低功耗的GPU,來滿足用戶的需求”。

            除了硬件方面的因素之外,英偉達中國區(qū)技術經(jīng)理賴俊杰也從軟件方面解答了GPU對于深度學習應用的價值。首先從深度學習應用的開發(fā)工具角度,具備CUDA支持的GPU為用戶學習Caffe、Theano等研究工具提供了很好的入門平臺。其實GPU不僅僅是指專注于HPC領域的Tesla,包括Geforce在內(nèi)的GPU都可以支持CUDA計算,這也為初學者提供了相對更低的應用門檻。除此之外,CUDA在算法和程序設計上相比其他應用更加容易,通過NVIDIA多年的推廣也積累了廣泛的用戶群,開發(fā)難度更小。最后則是部署環(huán)節(jié),GPU通過PCI-e接口可以直接部署在服務器中,方便而快速。得益于硬件支持與軟件編程、設計方面的優(yōu)勢,GPU才成為了目前應用最廣泛的平臺。

            深度學習發(fā)展遇到瓶頸了嗎?

            我們之所以使用GPU加速深度學習,是因為深度學習所要計算的數(shù)據(jù)量異常龐大,用傳統(tǒng)的計算方式需要漫長的時間。但是,如果未來深度學習的數(shù)據(jù)量有所下降,或者說我們不能提供給深度學習研究所需要的足夠數(shù)據(jù)量,是否就意味著深度學習也將進入“寒冬”呢?對此,賴俊杰也提出了另外一種看法?!白錾疃壬窠?jīng)網(wǎng)絡訓練需要大量模型,然后才能實現(xiàn)數(shù)學上的收斂。深度學習要真正接近成人的智力,它所需要的神經(jīng)網(wǎng)絡規(guī)模非常龐大,它所需要的數(shù)據(jù)量,會比我們做語言識別、圖像處理要多得多。假設說,我們發(fā)現(xiàn)我們沒有辦法提供這樣的數(shù)據(jù),很有可能出現(xiàn)寒冬”。

            不過他也補充認為——從今天看到的結果來說,其實深度學習目前還在蓬勃發(fā)展往上的階段。比如說我們現(xiàn)階段主要做得比較成熟的語音、圖像方面,整個的數(shù)據(jù)量還是在不斷的增多的,網(wǎng)絡規(guī)模也在不斷的變復雜?,F(xiàn)在我沒有辦法預測,將來是不是會有一天數(shù)據(jù)真不夠用了。

            對于NVIDIA來說,深度學習是GPU計算發(fā)展的大好時機,也是繼HPC之后一個全新的業(yè)務增長點。正如Pandey所提到的那樣,NVIDIA將世界各地的成功經(jīng)驗帶到中國,包括國外的成功案例、與合作伙伴的良好關系等等,幫助中國客戶的快速成長。“因為現(xiàn)在是互聯(lián)網(wǎng)的時代,是沒有跨界的時代,大家都是同等一起的?!?/p>

            GPU、 還是專用芯片?

            盡管深度學習和人工智能在宣傳上炙手可熱,但無論從仿生的視角抑或統(tǒng)計學的角度,深度學習的工業(yè)應用都還是初階,深度學習的理論基礎也尚未建立和完善,在一些從業(yè)人員看來,依靠堆積計算力和數(shù)據(jù)集獲得結果的方式顯得過于暴力——要讓機器更好地理解人的意圖,就需要更多的數(shù)據(jù)和更強的計算平臺,而且往往還是有監(jiān)督學習——當然,現(xiàn)階段我們還沒有數(shù)據(jù)不足的憂慮。未來是否在理論完善之后不再依賴數(shù)據(jù)、不再依賴于給數(shù)據(jù)打標簽(無監(jiān)督學習)、不再需要向計算力要性能和精度?

            退一步說,即便計算力仍是必需的引擎,那么是否一定就是基于GPU?我們知道,CPU和FPGA已經(jīng)顯示出深度學習負載上的能力,而IBM主導的SyNAPSE巨型神經(jīng)網(wǎng)絡芯片(類人腦芯片),在70毫瓦的功率上提供100萬個“神經(jīng)元”內(nèi)核、2.56億個“突觸”內(nèi)核以及4096個“神經(jīng)突觸”內(nèi)核,甚至允許神經(jīng)網(wǎng)絡和機器學習負載超越了馮·諾依曼架構,二者的能耗和性能,都足以成為GPU潛在的挑戰(zhàn)者。例如,科大訊飛為打造“訊飛超腦”,除了GPU,還考慮借助深度定制的人工神經(jīng)網(wǎng)絡專屬芯片來打造更大規(guī)模的超算平臺集群。

            不過,在二者尚未產(chǎn)品化的今天,NVIDIA并不擔憂GPU會在深度學習領域失寵。首先,NVIDIA認為,GPU作為底層平臺,起到的是加速的作用,幫助深度學習的研發(fā)人員更快地訓練出更大的模型,不會受到深度學習模型實現(xiàn)方式的影響。其次,NVIDIA表示,用戶可以根據(jù)需求選擇不同的平臺,但深度學習研發(fā)人員需要在算法、統(tǒng)計方面精益求精,都需要一個生態(tài)環(huán)境的支持,GPU已經(jīng)構建了CUDA、cuDNN及DIGITS等工具,支持各種主流開源框架,提供友好的界面和可視化的方式,并得到了合作伙伴的支持,例如浪潮開發(fā)了一個支持多GPU的Caffe,曙光也研發(fā)了基于PCI總線的多GPU的技術,對熟悉串行程序設計的開發(fā)者更加友好。相比之下,F(xiàn)PGA可編程芯片或者是人工神經(jīng)網(wǎng)絡專屬芯片對于植入服務器以及編程環(huán)境、編程能力要求更高,還缺乏通用的潛力,不適合普及。








          關鍵詞: GPU FPGA

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁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); })();