本文由 【AI前線】原創,推薦閱讀:t.cn/RHNgd73算法
做者|王小輝服務器
編輯|Emily網絡
AI 前線導讀:」不少年之後,當咱們回望 2017 年,會意識到對於移動互聯網的發展來講,這一年是一個重要的里程碑。芯片製造商、移動操做系統提供商、深度學習框架社區以及移動應用開發者都開始轉向 On Device AI,同時,這個趨勢一樣惠及於 IoT 產業的 Edge 端設備。本文就從這幾個方面來解讀一下這個趨勢。」架構
移動端 AI 現狀——正在發生的移動平臺的 AI 革命app
首先,爲何咱們須要 On Device AI 能力呢?在 Edge 端設備上的 AI 能力能夠帶來這幾個好處:框架
那麼,Edge 端設備的硬件計算能力畢竟有限,可否支持 AI 模型的 Inference 呢?機器學習
芯片製造商ionic
2017 年 3 月 ARM 提出了面向 AI 的新架構 DynamlQ 技術。性能
「Cortex-A CPUs that are designed based on DynamIQ technology can carry out advanced compute capabilities in Machine Learning and Artificial Intelligence. Over the next three to five years, DynamIQ-based systems will deliver up to a 50x* boost in AI performance. This is achieved through an aggressive roadmap of future DynamIQ IP, integrated with new Arm architectural instructions, microarchitectural improvements, and further software optimizations to the Arm Compute Libraries.」學習
ARM 表示將來 3 到 5 年內實現比基於 Cortex-A73 的設備高 50 倍的人工智能性能,最多可將 CPU 和 SoC 上特定硬件加速器的反應速度提高 10 倍。
緊接着,ARM 在 4 月份開源了支持 Context-A 系列 CPU 和 Mali 系列 GPU 的 Compute Library,讓機器學習和深度學習算法在 ARM 平臺更高效地運行。
2017 年 8 月高通對外發布了支持 Caffe/Caffe2 和 TensorFlow 的 Neural Processing Engine SDK,讓深度學習能夠利用 GPU 和 DSP 的計算能力
實際上,在 2017 年 4 月,Facebook 發佈了針對 Edge 端設備的深度學習框架 Caffe2,其主要做者賈揚清在 F8 大會上演講時就提到:「Android 系統上的 GPU 也相似,咱們與高通合做開發了‘驍龍神經處理引擎’(SNPE),現在高通驍龍 SoC 芯片爲大量的手機服務,如今是 Caffe2 的首要概念( first class concept),咱們能夠利用這些 CPU 和 DSP,從本質上提高能效和性能。」
高通在 2017 年 12 月發佈最新芯片驍龍 845 時提到:「In addition to the existing support for Google’s TensorFlow and Facebook’s Caffe/Caffe2 frameworks, the Snapdragon Neural Processing Engine (NPE) SDK now supports TensorFlow Lite and the new Open Neural Network Exchange (ONNX), making it easy for developers to use their framework of choice, including Caffe2, CNTK and MxNet. Snapdragon 845 also supports Google’s Android NN API.」
也就是說,SNPE 不但支持 Caffe、Caffe二、TensorFlow 和 Edge 設備端專用的 TensorFlow Lite 等深度學習框架,也支持由 Facebook 和微軟發起的 ONNX(Open Neural Network Exchange),一個 Intermediate Representation,讓 Caffe二、CNTK、PyTorch 以及 MXNet 這些框架能夠實現模型互通,方便芯片廠商能夠針對一個標準進行硬件級別優化。
2017 年 9 月,華爲發佈了麒麟 970,內置中科院寒武紀 -1A NPU,能夠加速神經網絡在手機端的運行。
在發佈旗艦設備 Mate 10 以後,華爲推出了 HiAI 移動計算平臺業務,踐行在麒麟 970 發佈會上的承諾,打造一個開放式的 AI 生態系統,讓開發者能夠經過這個平臺爲華爲 Mate 10 這樣搭載了最新麒麟芯片的設備上提供具備 AI 能力的應用。
2017 年 9 月,Apple 在年度產品發佈會上,發佈了將會搭載在 iPhone 八、iPhone 8 Plus 和 iPhone X 上的 A 11 Bionic SoC,用於支持 iOS 系統機器學習和深度學習模型的框架 CoreML 和加強現實框架 ARKit,而且升級了圖形處理芯片 Metal 2,用於加速深度學習模型的 Inference。
2017 年 11 月,Google 發佈了 Android 8.1 Beta 最終版本,正式支持在今年發佈的新款旗艦 Pixel 2 中搭載的 IPU(Image Processing Unit),用於加速圖像處理和機器學習的 Inference:「Also, for Pixel 2 users, the Android 8.1 update on these devices enables Pixel Visual Core -- Google's first custom-designed co-processor for image processing and ML -- through a new developer option. Once enabled, apps using Android Camera API can capture HDR+ shots through Pixel Visual Core.」
移動操做系統提供商
2017 年 5 月,Google 在年度 I/O 大會上,宣佈會推出 TensorFlow Lite,運行在下一代 Android 系統將會新增的 Neural Network API 之上,使得開發者能夠將 TensorFlow 深度學習框架建立的模型移植到移動端運行。10 月 25 日,Google 發佈了 Android 8.1 Beta 開發者預覽版,正式推出了 NN API:
11 月 14 日,Google 發佈的 TensorFlow Lite 已經支持 NN API 了,而 DNNLibrary 是一個 GitHub 上開源的庫,支持運行經過 DNN Convert Tool 轉換的 Caffe 模型。
2017 WWDC 上,Apple 發佈了支持 Caffe、TensorFlow 等深度學習框架,以及 SVM、XGBoost 、 sklearn 等機器學習模型的 CoreML。12 月 5 日,Google 發佈文章 Announcing Core ML support in TensorFlow Lite,宣佈已經和 Apple 合做使得 CoreML 支持 TensorFlow Lite。
深度學習框架
2017 年 4 月,Facebook 宣佈開源面向 Edge 端設備的深度學習框架 Caffe2,其主要做者 賈揚清在 F8 上說:「在移動端進行機器學習任務有如下好處:保護隱私,由於數據不會離開你的移動端;避免網絡延遲和帶寬問題;提高用戶體驗,好比優化 feed ranking 功能。因此咱們開始着手,從底層建造一個專門爲移動端優化的機器學習框架。」
2017 年 9 月,百度發佈了 Mobile Deep Learning library,騰訊早些時候也開源了相似的 ncnn 框架。
2017 年以來,Google 開源了專爲移動端優化的 MobileNets 模型;Face++ 提出了適合移動端的 ShuffleNet 模型。OpenCV 3.3 內置了支持多種深度學習框架的 DNN。
應用開發者
從上面的內容能夠看到,從芯片製造商到移動操做系統提供商,再到深度學習框架社區,都爲 On Device AI 作了不少準備,並且,從 GitHub 和國內外的開發者博客上,咱們看到了很是多基於 CoreML、基於 TensorFlow 等深度學習框架的移動端應用案例,體現了開發者對這個趨勢的極大熱情。不管咱們是哪一個移動平臺的開發者,都應該清晰認識到這個趨勢,及時點亮本身的技能點,爲用戶提供更智能、更人性化的應用。
移動端 AI 的應用場景
AI 在智能手機上有哪些應用場景呢,對於不一樣的開發者來講,如何肯定自家的應用是否須要 AI ?若是須要,如何引入?
智能手機制造商(好比 Apple、華爲等)和數以萬計的應用開發者均可以在本身的 apps 中應用 AI 相關的技術,讓自家的 apps 更好地服務用戶的同時,提升競爭力和市場佔有率。
本部分將從智能手機制造商和應用開發者這兩種角色出發,分別進行討論。
智能手機制造商
2017 年,最具備明星氣質的兩款配備 AI 能力的手機是 iPhone X 和 華爲 Mate 10,這兩款手機有如下共同點:
智能相機
智能語音助理
智能系統優化
應用開發者
對於智能手機制造商來講,可以提供的系統應用畢竟是有限的,更多的用戶需求須要應用開發者提供各自的解決方案。對於應用開發者來講,其實也能夠提供基礎類應用,好比拍照應用、智能語音助理等,若是可以藉助手機制造商提供的硬件計算能力,達到比系統自帶的基礎類應用更好的效果,也會獲得用戶的歡迎。好比 Google 的輸入法在 iOS 平臺就比較受歡迎,該應用採用了 Google 於上半年提出的 Federated Learning,可以在提供個性化能力的同時,在線優化輸入法的預測模型,並在整個過程當中不上傳用戶的輸入數據記錄,保護了用戶隱私。
除了基礎類應用,下面這些應用場景對開發者來講也很是值得考慮:
最後,咱們還須要強調的是,不管是智能手機制造商仍是應用開發者,都須要考慮對用戶隱私的保護。當咱們能夠在移動端高效運行機器學習以及深度學習模型時,有不少任務能夠在移動端作,用戶的數據無需上傳到服務器進行處理,在保護隱私的同時,也減小了流量消耗和服務器成本。上面提到的 Google 推出的 Federated Learning 就是這樣作的,Apple 也在本身的官方機器學習博客中介紹了本身的相似作法:Learning with Privacy at Scale。
關注後回覆「AI」你懂的