您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>數(shù)值算法/人工智能>

基于GPU實(shí)現(xiàn)的深度學(xué)習(xí)的數(shù)據(jù)庫

大?。?/span>0.8 MB 人氣: 2017-09-28 需要積分:1

  項(xiàng)目組基于深度學(xué)習(xí)實(shí)現(xiàn)了視頻風(fēng)格化和人像摳圖的功能,但這是在PC/服務(wù)端上跑的,現(xiàn)在需要移植到移動(dòng)端,因此需要一個(gè)移動(dòng)端的深度學(xué)習(xí)的計(jì)算框架。

  同類型的庫

  caffe-Android-lib 目前應(yīng)該是最便于集成使用的深度學(xué)習(xí)框架庫。

  tensorflow和mxnet據(jù)說也有對(duì)應(yīng)的android庫,因時(shí)間原因暫未。

  CNNdroid,網(wǎng)址,這個(gè)是用

  render 作優(yōu)化的深度學(xué)習(xí)框架,不過就代碼實(shí)現(xiàn)和實(shí)際測(cè)試結(jié)果來看,性能一般。

  工程定位

  實(shí)現(xiàn)可實(shí)時(shí)、體積小、通用的深度學(xué)習(xí)預(yù)測(cè)框架。

  可實(shí)時(shí)

  跟PC或服務(wù)器不同,移動(dòng)設(shè)備上的GPU可不一定有CPU強(qiáng)悍(多線程+neon/vfp),但在需要實(shí)時(shí)計(jì)算的場(chǎng)景(主要是相機(jī)預(yù)覽和視頻播放),往往都是基于OpenGL渲染環(huán)境的。

  實(shí)時(shí)的情況下,深度學(xué)習(xí)框架的輸入和輸出都在GPU端,使用CPU進(jìn)行計(jì)算往往需要拷貝圖像出來,算好后再傳到GPU端,因此基于GPU實(shí)現(xiàn)的深度學(xué)習(xí)的庫能持平CPU版本的效率就有足夠優(yōu)勢(shì)了。

  比如實(shí)時(shí)摳人像這個(gè)case:

  基于GPU實(shí)現(xiàn)的深度學(xué)習(xí)的數(shù)據(jù)庫

  對(duì)每一幀相機(jī)預(yù)覽產(chǎn)生的數(shù)據(jù),系統(tǒng)將其映射為opengl 的一個(gè)external texture,然后需要 計(jì)算出一個(gè) mask texture,與原先的texture作混合,顯示出來。如果mask texture 的計(jì)算在cpu上進(jìn)行,則需要每幀先把 graphicbuffer 的數(shù)據(jù)拷貝出來,計(jì)算出mask后上傳到 mask texture 去,產(chǎn)生一來一回兩次額外拷貝。

  通用

  本工程需要支持 caffe 產(chǎn)出的模型文件,支持常見的網(wǎng)絡(luò)如lenet、ResNet等等。這個(gè)工作量包括編寫相應(yīng)層的算子,設(shè)計(jì)網(wǎng)絡(luò)結(jié)構(gòu),解析caffe模型的參數(shù)等。

  所幸的是,目前在移動(dòng)端做好深度學(xué)習(xí)的預(yù)測(cè)就足夠了,相比于兼顧訓(xùn)練的結(jié)構(gòu)至少省去2/3的工作量。

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?