丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預覽,將在時失效
人工智能 正文
發(fā)私信給劉鵬
發(fā)送

0

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

本文作者: 劉鵬 編輯:汪思穎 2018-05-10 09:45
導語:主流移動端深度學習框架的簡歷資料來了,初入坑開發(fā)者請查收!

雷鋒網(wǎng)按:移動設備相較于 PC ,攜帶便攜,普及率高。近年來,隨著移動設備的廣泛普及與應用,在移動設備上使用深度學習技術的需求開始涌現(xiàn)。

簡書作者 dangbo 在《移動端深度學習展望》一文中對現(xiàn)階段的移動端深度學習做了相關展望。作者認為,現(xiàn)階段的移動端 APP 主要通過以下兩種模式來使用深度學習:

  • online 方式:移動端做初步預處理,把數(shù)據(jù)傳到服務器執(zhí)行深度學習模型,優(yōu)點是這個方式部署相對簡單,將現(xiàn)成的框架(Caffe,Theano,MXNet,Torch) 做下封裝就可以直接拿來用,服務器性能大, 能夠處理比較大的模型,缺點是必須聯(lián)網(wǎng)。

  • offline 方式:在服務器上進行訓練的過程,在手機上進行預測的過程。

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

當前移動端的三大框架(Caffe2、TensorFlow Lite、Core ML)均使用 offline 方式,該方式可在無需網(wǎng)絡連接的情況下確保用戶數(shù)據(jù)的私密性。

各主流移動端深度學習框架誕生時間如下:

  • 2017 年 3 月,XMART LABS 在 GitHub 上開源 Bender

  • 2017 年 4 月 19 日,F(xiàn)acebook 在 F8 開發(fā)者大會上推出 Caffe2

  • 2017 年 5 月 17 日,在 Google I/O 2017 大會上,移動端深度學習框架 TensorFlow Lite 誕生

  • 2017 年 6 月 6 日,蘋果在 WWDC 大會上推出 Core ML

  • 2017 年 9 月 25 日,百度開源移動端深度學習框架 mobile-deep-learning(MDL)

  • ......

接下來,雷鋒網(wǎng) AI 研習社將介紹當前主流的移動端深度學習框架,其中包括移動端三大框架——Facebook、谷歌、蘋果三大巨頭發(fā)布的 Caffe2、TensorFlow Lite、Core ML,新秀 Bender,國產(chǎn)百度 MDL 以及支持移動端的 MXNet,以便剛剛入坑的開發(fā)者們對這些框架有初步的了解和認識。

Facebook 開源 Caffe2,最終將其并入 PyTorch

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

2017 年 4 月 19 日的 F8 年度開發(fā)者大會上,F(xiàn)acebook 發(fā)布了一款全新的開源深度學習框架——Caffe2,按照 Caffe2 官網(wǎng)介紹,它最大的特點就是輕量、模塊化和可擴展性,即一次編碼,到處運行(和 Java 的宣傳語類似)。說得更直白一點,就是 Caffe2 可以方便地為手機等移動終端設備帶來 AI 加持,讓 AI 從云端走向終端。

Caffe2 在此前流行的開源框架 Caffe 基礎上進行了重構和升級,一方面集成了諸多新出現(xiàn)的算法和模型,另一方面在保證運算性能和可擴展性的基礎上,重點加強了框架在輕量級硬件平臺的部署能力。它可以部署在包括 iOS,Android,英偉達 Tegra X1 和樹莓派(Raspberry Pi)等在內(nèi)的各種移動平臺上。用戶只需要加載 Caffe2 框架,然后通過幾行簡單的 API 接口調(diào)用(Python 或 C++),就能在手機 APP 上實現(xiàn)圖像識別、自然語言處理和計算機視覺等各種 AI 功能。此外,Caffe2 還對 Caffe 平臺的另一項核心競爭力:Model Zoo 社區(qū)方面提供了完整的支持。

除了框架自身,Caffe2 還獲得了一系列的云平臺支持,例如亞馬遜 AWS 旗下的 Deep Learning AMI和微軟 Azure 旗下 Data Science Virtual Machine (DSVM),另外也獲得了英偉達和高通的硬件平臺支持。目前,Caffe2 框架已經(jīng)被 Facebook 內(nèi)部采用,開發(fā)者和研究人員們正在使用該框架提供的各種工具訓練大型的機器學習模型,并為 Facebook 旗下的移動應用提供 AI 智能體驗。

現(xiàn)在 Caffe2 代碼也已正式并入 PyTorch,來使 Facebook 能在大規(guī)模服務器和移動端部署時更流暢地進行 AI 研究、訓練和推理。

Caffe2 官網(wǎng):http://Caffe2.ai/ 

GitHub 地址:https://github.com/Caffe2/Caffe2 

Caffe2go 移動端項目 Github 鏈接: https://github.com/Caffe2/Caffe2

谷歌移動端深度學習框架 TensorFlow Lite,有望成為移動端模型部署推薦解決方案

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

谷歌于美國時間 2017 年 11 月 14 日正式發(fā)布 TensorFlow Lite 預覽版,這一框架主要用于移動端和嵌入式設備,顧名思義,相較于 TensorFlow,TensorFlow Lite 是一個輕量化版本。這個開發(fā)框架專門為機器學習模型的低延遲推理做了優(yōu)化,專注于更少的內(nèi)存占用以及更快的運行速度。

TensorFlow Lite 具備以下三個重要功能:

輕量級(Lightweight):支持機器學習模型的推理在較小二進制數(shù)下進行,能快速初始化/啟動

跨平臺(Cross-platform):可以在許多不同的平臺上運行,現(xiàn)在支持 Android 和 iOS

快速(Fast):針對移動設備進行了優(yōu)化,包括大大減少了模型加載時間、支持硬件加速

結構

下圖是 TensorFlow Lite 的結構設計:

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

模塊如下:

  • TensorFlow Model: 存儲在硬盤上已經(jīng)訓練好的 TensorFlow 模型

  • TensorFlow Lite Converter: 將模型轉換為 TensorFlow Lite 文件格式的程序

  • TensorFlow Lite Model File: 基于 FlatBuffers 的模型文件格式,針對速度和大小進行了優(yōu)化。

模型

TensorFlow Lite 目前支持很多針對移動端訓練和優(yōu)化好的模型。

  • MobileNet:能夠識別 1000 種不同對象類的視覺模型,為實現(xiàn)移動和嵌入式設備的高效執(zhí)行而設計。

  • Inception v3:圖像識別模型,功能與 MobileNet 相似,它提供更高的精度,但相對來說更大。

  • Smart Reply: 設備對話模型,可以即時回復聊天消息,在 Android Wear 上有使用這一功能。

  • Inception v3 和 MobileNets 已經(jīng)在 ImageNet 數(shù)據(jù)集上訓練了。大家可以利用遷移學習來輕松地對自己的圖像數(shù)據(jù)集進行再訓練。

TensorFlow Lite 發(fā)布一個月后,谷歌即宣布與蘋果達成合作——TensorFlow Lite 將支持 Core ML。TensorFlow Lite 為 Core ML 提供支持后,iOS 開發(fā)者就可以利用 Core ML 的優(yōu)勢來部署模型。

目前,該框架還在不斷更新與升級中,隨著 TensorFlow 的用戶群體越來越多,同時得益于谷歌的背書,假以時日,TensorFlow Lite 極大可能會成為在移動端和嵌入式設備上部署模型的推薦解決方案。

TensorFlow Lite 文檔頁面:http://Tensorflow.org/mobile/tflite

Core ML 轉化器頁面:https://github.com/tf-coreml/tf-coreml

pypi pip 安裝包地址:https://pypi.python.org/pypi/tfcoreml/0.1.0

蘋果 Core ML:離線狀態(tài)下,隱私與 AI 可兼得

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

蘋果在 2017WWDC 大會更新 iOS 11 時一并推出了面向開發(fā)者的全新機器學習框架——Core ML,聲稱能讓本地數(shù)據(jù)處理愈加方便快捷。據(jù)介紹,Core ML 提供支持人臉追蹤、人臉檢測、地標、文本檢測、條碼識別、物體追蹤、圖像匹配等任務的 API。

據(jù)雷鋒網(wǎng) AI 研習社了解,Core ML 是一個基礎機器學習框架,能用于眾多蘋果的產(chǎn)品,包括 Siri、相機和 QuickType。據(jù)官方介紹,Core ML 帶來了極速的性能提升和機器學習模型的輕松整合,能將眾多機器學習模型集成到 APP 中。它不但有 30 多種層來支持廣泛的深度學習,而且還支持諸如樹集成、SVM 和廣義線性模型等標準模型。

蘋果在 Core ML 開發(fā)文檔中如此介紹:

使用 Core ML,你可以將訓練好的模型整合進自己開發(fā)的 APP 中。Core ML 支持用于圖像分析的 Vision、用于自然語言處理的 Foundation(如 NSLinguisticTagger 類)和用于評估已經(jīng)學習到的決策樹的 GameplayKit。Core ML 構建在 Accelerate、BNNS 和 Metal Performance Shaders 之上。

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

Core ML 在設備上嚴格運行,確保了用戶隱私數(shù)據(jù),在無網(wǎng)絡連接的情況下依然能夠響應用戶操作。

CORE ML 相關技術

  • Metal 是針對 iPhone 和 iPad 中 GPU 編程的高度優(yōu)化的框架,Metal 相較 OpenGL ES 能耗顯著降低。另外,Metal 可以預估 GPU 狀態(tài)來避免多余的驗證和編譯

  • Metal Performance Shader 是蘋果推出的一套借助 Metal 在 iOS 上實現(xiàn)深度學習的工具,它主要封裝了 MPSImage 來存儲數(shù)據(jù)管理內(nèi)存,實現(xiàn)了 Convolution、Pooling、Fullconnetcion、ReLU 等常用的卷積神經(jīng)網(wǎng)絡中的 Layer

可以在 iPhone 內(nèi)置應用中利用 Core ML 的優(yōu)勢,提升或實現(xiàn)如 Siri 語音識別、相機應用中識別人臉、QuickType 打字聯(lián)想等新特性。Core ML+Vision 應用場景如下所示:

  • 在相機或給定圖像中檢測人臉

  • 檢測眼睛和嘴巴的位置、頭部形狀等人臉面部詳細特征

  • 錄制視頻過程中追蹤移動的對象和確定地平線的角度

  • 轉換兩個圖像,使其內(nèi)容對齊,識別圖像中的文本

  • 檢測和識別條形碼

  • ......

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

另外,還可以使用 Vision 驅動 Core ML,即在使用 Core ML 進行機器學習時,用 Vision 框架進行一些數(shù)據(jù)預處理。

Core ML 文檔地址:https://developer.apple.com/documentation/coreml

Bender:基于 Metal 的機器學習框架

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

2017 年 3 月份左右,XMART LABS 在 GitHub 上開源了 Bender,它是一個基于 Metal 的機器學習框架,它允許你在 IOS APP 上輕松地定義和運行神經(jīng)網(wǎng)絡,該框架在底層使用了蘋果的 Metal Performance Shaders。

XMART LABS 在 Github 上對 Bender 進行了這樣的描述:

Bender 是 MetalPerformanceShaders 之上的一個可用來操作神經(jīng)網(wǎng)絡的抽象層(abstraction layer)的工具。Bender 允許你使用卷積、池化、全連接以及一些規(guī)范化等最常見的 layer 來輕松地定義和運行神經(jīng)網(wǎng)絡。XMART LABS 還想加載在其他框架(TensorFlow 或者 Caffe2 等框架)上訓練好的模型,現(xiàn)在的 Bender 已經(jīng)內(nèi)置了一個 TensorFlow 適配器(其可加載帶有變量的圖,并將其「翻譯」成 Bender 的 layer),并計劃將其功能大大增強。

優(yōu)勢

  • Bender 支持選擇 Tensorflow、 Keras、Caffe 等框架來運行已訓練的模型,無論是在將訓練好的模型 freeze,還是將權重導至 files(官方表示該支持特性即將到來)

  • 可直接從支持的平臺導入一個 frozen graph 或者重新定義神經(jīng)網(wǎng)絡結構并加載權重。這兩項操作均只需花費幾分鐘

  • Bender 支持最常用的機器學習節(jié)點和 layer,同時其也具有可擴展性,因而你可以編寫自己的可定義函數(shù)

使用 Bender 開發(fā) APP 的示例如下。

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

Bender 有何優(yōu)勢?

  • Bender 能解決 MetalPerformanceShaders(iOS 中可使用的框架)中對開發(fā)者不太友好導致需要大量重復代碼的問題

  • TensorFlow 雖然可為 iOS 進行編譯,但它并不支持在 GPU 上運行,而 Bender 的適配器則可以將 TF graph 解析并翻譯成 Bender layer 

Bender 頁面網(wǎng)址:https://xmartlabs.github.io/Bender/

Github 地址:https://github.com/xmartlabs/Bender

百度開源移動端深度學習框架 MDL,可在蘋果安卓系統(tǒng)自由切換

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

2017 年 9 月,百度在 GitHub 上開源了移動端深度學習框架 mobile-deep-learning(MDL)的全部代碼以及腳本,這項研究旨在讓卷積神經(jīng)網(wǎng)絡(CNNC)能更簡單和高速的部署在移動端,支持 iOS GPU,目前已經(jīng)在百度 APP 上有所使用。

MDL 具有體積小和速度快的特點。

  • 大?。?40k+(在 arm v7 上)

  • 速度:對于 iOS Metal GPU Mobilenet,速度是 40ms,對于 Squeezenet,速度是 30ms

特征

  • 一鍵部署,可以通過修改參數(shù)在 iOS 和 Android 端之間轉換 

  • iOS GPU 上支持運行 MobileNet 和 Squeezenet 模型

  • 在 MobileNet、GoogLeNet v1 和 Squeezenet 模型下都很穩(wěn)定

  • 占用空間極?。?M),不需要依賴第三方的庫

  • 支持從 32 比特 float 到 8 比特 unit 轉化

  • 接下來會與與 ARM 相關的算法團隊進行線上線下溝通,優(yōu)化 ARM 平臺

  • NEON 使用涵蓋了所有的卷積、歸一化、池化等

  • 利用循環(huán)展開,可以讓性能更加優(yōu)化,防止不必要的 CPU 損失

  • 對于 overhead 進程,可以轉發(fā)大量繁重的計算任務

GitHub 地址:https://github.com/baidu/mobile-deep-learning

MXNet: AWS 官方深度學習框架,支持移動端開發(fā)

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

MXNet 是一款開源的、輕量級、可移植的、靈活的深度學習庫,它讓用戶可以混合使用符號編程模式和指令式編程模式來最大化效率和靈活性,目前已經(jīng)是 AWS 官方推薦的深度學習框架。

MXNet 的核心是一個動態(tài)的依賴調(diào)度器,支持自動將計算任務并行化到多個 GPU 或分布式集群(支持 AWS、Azure、Yarn 等)。它上層的計算圖優(yōu)化算法可以讓符號計算執(zhí)行得非常快,而且節(jié)約內(nèi)存,開啟 mirror 模式會更加省內(nèi)存,甚至可以在某些小內(nèi)存 GPU 上訓練其他框架因顯存不夠而訓練不了的深度學習模型。

MXNet 支持在移動設備(Android、iOS)上運行基于深度學習的圖像識別等任務,它的性能如下:

  • 依賴少,內(nèi)存要求少,對于 Android 性能變化大的手機,通用性更高

  • MXNet 需要先使用 ndk 交叉編譯項目中的 amalgamation,可以根據(jù)自己的需求,修改 jni 中的接口,然后,編譯好的動態(tài)鏈接庫替換掉 Android demo 中的

  • MXNet 提供了對 Caffe 模型的支持,通過提供的工具將 Caffe 訓練好的模型進行轉化 json 格式,隨后在移動端使用

此外,MXNet 的一個很大的優(yōu)點是支持多語言封裝,比如 C++、Python、R、Julia、Scala、Go、MATLAB 和 JavaScript。在 MXNet 中構建一個網(wǎng)絡需要的時間可能比 Keras、Torch 這類高度封裝的框架要長,但是比直接用 Theano 等要快。MXNet 的各級系統(tǒng)架構(下面為硬件及操作系統(tǒng)底層,逐層向上為越來越抽象的接口)如下圖所示。

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

GitHub:http://github.com/dmlc/MXNet

Apache MXNet 官方網(wǎng)站:https://MXNet.incubator.apache.org/

(完)

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權禁止轉載。詳情見轉載須知

AI開發(fā)者看過來,主流移動端深度學習框架大盤點

分享:
相關文章
當月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設置密碼以方便用郵箱登錄
立即設置 以后再說