@移動開發者,谷歌發佈移動端深度學習框架TensorFlow Lite

翻譯 | 劉暢Troy
編程


谷歌今天終於發佈了TensorFlow Lite 的開發者預覽!該項目是在5月份的I/O開發者大會上宣佈的,據Google網站描述,對移動和嵌入式設備來講,TensorFlow是一種輕量級的解決方案,支持多平臺運行,從機架式服務器到微小的物聯網設備。近幾年來,因爲其做爲機器學習模型的使用已成倍增加,因此移動設備和嵌入式設備也出現了部署需求。Tensorflow Lite使機器學習模型設備可以實現低延遲的推理。服務器

在本文中,Google展現了TensorFlow Lite的框架構成以及一些功能特性。網絡


TensorFlow Lite設計初衷

  • 輕量級:容許在具備很小的二進制大小和快速初始化/啓動的機器學習模型設備上進行推理。架構

  • 跨平臺:可以運行在許多不一樣的平臺上,首先支持Android和iOS平臺框架

  • 快速:針對移動設備進行了優化,包括顯著提升模型加載時間和支持硬件加速機器學習

如今愈來愈多的移動設備集成了定製硬件來更有效地處理機器學習帶來的工做負載。TensorFlow Lite支持Android神經網絡API(Android Neural Networks API)利用這些新的加速器硬件。當加速器硬件不可用的時候,TensorFlow Lite會執行優化CPU,這能夠確保你的模型仍然能夠很快的運行在一個大的設備上。性能


TensorFlow Lite架構設計

下面的關係圖顯示了TensorFlow Lite的構架設計:學習

組件包括:優化

  • TensorFlow模型:一個保存在磁盤上訓練好的TensorFlow模型。網站

  • TensorFlow Lite轉換器:一個將模型轉換爲Tensorflow Lite文件格式的程序。

  • TensorFlow模型文件:基於FlatBuffers格式的模型文件,已針對最大速度和最小尺寸進行了優化。

Tensorflow Lite模型文件將被部署在一個移動應用程序,其中:

  • Java API:在Android上對C++API的一個封裝。

  • C++ API:加載Tensorflow Lite模型文件和調用解釋器。在Android和iOS上共用同一個庫文件。

  • 解釋器:採用一組運算符來執行模型。解釋器支持選擇性的運算負荷;沒有運算符大小隻有70kb,當全部的運算符加載時,大小是300kb。正常的移動端的Tensorflow(包含一個規範的運算符操做集)須要1.5M的大小,能夠看到解釋器顯著減小了內存。

關於選擇Android設備,解釋器會採用Android Neural Networks API來進行硬件加速,或者若是沒有可用的,默認爲CPU執行。

開發人員還可使用C++ API實現可由解釋器使用的定製的內核。

模型

Tensorflow Lite已經有一些訓練和優化好的支持移動端的模型:

  • MobileNet: 一種可以識別1000類不一樣目標的視覺模型,它是爲在移動設備和嵌入式設備上高效執行而獨特設計的。

  • Inception v3: 一個圖像識別的模型,在功能上相似MobileNet,提供更高的精度同時也有較大的尺寸

  • Smart Reply: 一種設備級的會話模型,針對即將到來的會話聊天消息,它提供一種觸摸響應。在Android Wear上,第一方和第三方的消息應用程序均使用了此功能。

Inception v3和MobileNet均是在ImageNet數據集上預訓練好的。經過遷移學習,你能夠輕鬆的在你本身的數據集上再訓練這個模型。


什麼是TensorFlow Mobile?

正如你可能知道的,經過Tensorflow Mobile API,Tensorflow已經支持了在移動端和嵌入式上部署模型。將來TensorFlow Lite應該被視爲Tensorflow Mobile的演化,並隨着它的成熟將成爲模型部署在移動端和嵌入式設備上的推薦方案。目前TensorFlow Lite是開發者預覽版,同時Tensorflow Mobile仍然支持APP的開發。

Tensorflow Lite的應用範圍大,目前處於積極開發中。經過這個開發者預覽版,咱們有意地啓動了一個帶約束的平臺來確保一些最重要的經常使用模型的性能。咱們計劃根據用戶的需求對將來的功能擴展進行優先級排序。咱們持續開發的目標是爲了下降對開發人員經驗的要求,並能爲一系列移動和嵌入式設備部署模型。

咱們很是興奮開發者可以上手使用Tensorflow Lite。對於其他的Tensorflow項目,咱們計劃使用同一強度來支持和解決外部社區問題。期待你能用TensorFlow Lite作些很是酷的事情。

更多關於Tensorflow Lite的功能和信息,請點擊TensorFlow Lite文檔:http://tensorflow.org/mobile/tflite

祝你們Tensorflow Lite編程快樂。

相關文章
相關標籤/搜索