48.現(xiàn)有移動端開源框架及其特點—MDL(mobile-deep-learning)

48.1 功能特點

  • 一鍵部署,腳本參數(shù)就可以切換ios或者android
  • 支持iOS gpu運行MobileNet、squeezenet模型
  • 已經(jīng)測試過可以穩(wěn)定運行MobileNet、GoogLeNet v1、squeezenet、ResNet-50模型
  • 體積極小,無任何第三方依賴。純手工打造。
  • 提供量化函數(shù),對32位float轉(zhuǎn)8位uint直接支持,模型體積量化后4M上下
  • 與ARM相關(guān)算法團隊線上線下多次溝通,針對ARM平臺會持續(xù)優(yōu)化
  • NEON使用涵蓋了卷積、歸一化、池化所有方面的操作
  • 匯編優(yōu)化,針對寄存器匯編操作具體優(yōu)化
  • loop unrolling 循環(huán)展開,為提升性能減少不必要的CPU消耗,全部展開判斷操作
  • 將大量繁重的計算任務(wù)前置到overhead過程

48.2 框架結(jié)構(gòu)

  • MDL 框架主要包括:
    • 模型轉(zhuǎn)換模塊(MDL Converter)
    • 模型加載模塊(Loader)
    • 網(wǎng)絡(luò)管理模塊(Net)
    • 矩陣運算模塊(Gemmers)及供 Android 端調(diào)用的 JNI 接口層(JNI Interfaces)
  • 其中,模型轉(zhuǎn)換模塊主要負責將Caffe 模型轉(zhuǎn)為 MDL 模型,同時支持將 32bit 浮點型參數(shù)量化為 8bit 參數(shù),從而極大地壓縮模型體積;模型加載模塊主要完成模型的反量化及加載校驗、網(wǎng)絡(luò)注冊等過程,網(wǎng)絡(luò)管理模塊主要負責網(wǎng)絡(luò)中各層 Layer 的初始化及管理工作;MDL 提供了供 Android 端調(diào)用的 JNI 接口層,開發(fā)者可以通過調(diào)用 JNI 接口輕松完成加載及預(yù)測過程。

48.3 MDL 的性能及兼容性

  • 體積 armv7 300k+
  • 速度 iOS GPU mobilenet 可以達到 40ms、squeezenet 可以達到 30ms
  • MDL 從立項到開源,已經(jīng)迭代了一年多
    • 移動端比較關(guān)注的多個指標都表現(xiàn)良好,如體積、功耗、速度。百度內(nèi)部產(chǎn)品線在應(yīng)用前也進行過多次對比,和已開源的相關(guān)項目對比,MDL 能夠在保證速度和能耗的同時支持多種深度學(xué)習(xí)模型,如 mobilenet、googlenet v1、squeezenet 等,且具有 iOS GPU 版本,squeezenet 一次運行最快可以達到 3-40ms。

48.4 同類框架對比

  • 框架Caffe2TensorFlowncnnMDL(CPU)MDL(GPU)硬件CPUCPUCPUCPUGPU速度慢慢快快極快體積大大小小小兼容Android&iOSAndroid&iOSAndroid&iOSAndroid&iOSiOS
  • 與支持 CNN 的移動端框架對比,MDL 速度快、性能穩(wěn)定、兼容性好、demo 完備。

48.5 兼容性

  • MDL 在 iOS 和 Android 平臺均可以穩(wěn)定運行,其中 iOS10 及以上平臺有基于 GPU 運算的 API,性能表現(xiàn)非常出色,在 Android 平臺則是純 CPU 運行。高中低端機型運行狀態(tài)和手機百度及其他 App 上的覆蓋都有絕對優(yōu)勢。
  • MDL 同時也支持 Caffe 模型直接轉(zhuǎn)換為 MDL 模型。

大數(shù)據(jù)視頻推薦:
網(wǎng)易云課堂
CSDN
人工智能算法競賽實戰(zhàn)
AIops智能運維機器學(xué)習(xí)算法實戰(zhàn)
ELK7 stack開發(fā)運維實戰(zhàn)
PySpark機器學(xué)習(xí)從入門到精通
AIOps智能運維實戰(zhàn)
騰訊課堂
大數(shù)據(jù)語音推薦:
ELK7 stack開發(fā)運維
企業(yè)級大數(shù)據(jù)技術(shù)應(yīng)用
大數(shù)據(jù)機器學(xué)習(xí)案例之推薦系統(tǒng)
自然語言處理
大數(shù)據(jù)基礎(chǔ)
人工智能:深度學(xué)習(xí)入門到精通

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容