a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

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

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

作者: 時間:2018-03-27 來源:網絡 收藏

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

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

  深度學習

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

  深度學習的概念由Hinton等人于2006年提出。基于深信度網(DBN)提出非監督貪心逐層訓練算法,為解決深層結構相關的優化難題帶來希望,隨后提出多層自動編碼器深層結構。此外Lecun等人提出的卷積神經網絡是第一個真正多層結構學習算法,它利用空間相對關系減少參數數目以提高訓練性能。

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

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

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

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

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

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


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

  項目負責人之一Andrew稱:“我們沒有像通常做的那樣自己框定邊界,而是直接把海量數據投放到算法中,讓數據自己說話,系統會自動從數據中學習。”另外一名負責人Jeff則說:“我們在訓練的時候從來不會告訴機器說:‘這是一只貓。’系統其實是自己發明或者領悟了“貓”的概念。”


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

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

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

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

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

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

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

  加速

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


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

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

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

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

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

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

  深度學習發展遇到瓶頸了嗎?

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

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

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

  GPU、 還是專用芯片?

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

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

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








關鍵詞: GPU FPGA

評論


相關推薦

技術專區

關閉