如何看待谷歌移動端深度學習框架 TensorFlow Lite 正式發布?可能會帶來什麼影響?

谷歌移動端深度學習框架TensorFlow Lite正式發布


謝邀 @Jasmineee

總的來說,它降低了對開發人員經驗的要求,並能在一系列移動和嵌入式設備上部署模型。

先從TensorFlow Lite的三個設計初衷開始講,分別是:

輕量級:允許在具有很小的,快速初始化/啟動的機器學習模型設備上使用。

跨平台:能夠運行在許多不同的平台上,首先支持Android和iOS平台

快速:針對移動設備進行了優化,包括咸豬提高模型載入時間和支持硬體加速,它支持Android神經網路API(Android NN API)利用各種定製的加速器硬體。當加速器硬體不可用的時候,又會執行優化CPU,可確保你的模型仍然可以很快的運行在一個大的設備上。

它包括三個組件:

TensorFlow模型:一個保存在磁碟上訓練好的TensorFlow模型。

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

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

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

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

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

解釋器:採用一組運算符來執行模型。解釋器支持選擇性的運算負荷;沒有運算符大小只有70kb,當所有的運算符載入時,大小是300kb。正常的移動端的Tensorflow(包含一個規範的運算符操作集)需要1.5M的大小,可以看到解釋器顯著減少了內存。

接下來是模型,它有如下一些訓練並優化好的支持移動端的模型:

MobileNet: 一種能夠識別1000類不同目標的視覺模型,專為移動設備和嵌入式設備上而生

Inception v3: 一個圖像識別的模型,在功能上類似MobileNet,提供更高的精度和尺寸

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

Inception v3和MobileNet均是在ImageNet數據集上預訓練好的。通過遷移學習,你可以輕鬆的在你自己的數據集上再訓練這些模型。


TensorFlow Lite+Android,細說Google要搞的大事情

近日谷歌開源了TensorFlow的終端版本TensorFlowLite,這個版本的發布其實早在預料之中,但又能從這件事看出未來谷歌整個生態版圖的一些端倪,接下來就讓博主為大家分析一下。

首先為什麼說TensorFlow Lite的發布早在意料之中呢?因為TensorFlow在之前的版本中已經發布了Android可運行的版本,我們知道Android是谷歌的另一大開源利器,也就是說谷歌從一開始就設想將終端系統Android和TensorFlow做一個整合。下面集中討論下,這兩大框架的整合到底能產生什麼價值。大家都知道現在IT領域最火的兩個技術,一個是人工智慧,另外一個是物聯網(IOT)。Android是大部分物聯網設備未來的內在系統,而TensorFlow又是業內標準的訓練框架,這兩個系統的整合將會產生巨大的化學反應。

先來看下人工智慧和物聯網領域融合所面臨的主要挑戰,以機器人為例。目前有很大的機器人公司都希望機器人作為智能的載體為人類提供服務,需要機器人能聽、說、讀、寫,這些背後的功能就是深度學習的識別模型。在將這些人工智慧模型服務化的過程中會面臨以下一些挑戰:

1. 如果模型文件太大,比如機器人的圖像識別、語音識別模型通常都達到幾百兆,這些模型文件如果特別大,當模型非常多的時候,很難在終端部署。

2. 很多機器人的功能需要調用雲端服務,那麼一旦斷網,這些服務就會中斷

3. 目前機器人所有模型訓練工作全在雲端完成,需要數據上傳,這就會產生安全風險

4. 數據在雲端訓練很難實時同步到終端

那麼通過TensorFlow Lite和Android模型的結合將有效解決以上問題,首先TensorFlow Lite可以大大壓縮模型大小,適配終端;另外,TensorFlow Lite完全可以將模型的serving本地部署,並且提升效率,解決了斷網情況造成的影響。最後,未來隨著終端硬體能力的升級,完全可以做到訓練在終端本地完成,這樣對於無人駕駛或者機器人領域都將起到性能的大躍進,試想下汽車攝像頭邊進行路面圖像提取邊在汽車上直接進行模型訓練和預測工作,這些都可以通過TensorFlow Lite+Android的方案解決。

講到這裡其實谷歌要做的事情已經很清晰了,TensorFlow未來會作為Android的演算法framework層,為終端設備提供智能服務,

這個就是谷歌為物聯網的智能化做的提前布局。當這套體系都成為業內標準,那麼Android壓倒IOS,或者說谷歌建立IOT行業系統標準,只是時間問題。


謝邀。我傾向於認為這裡面有兩件不同的事吧。

一個是TFL里有專門給移動設備優化過的執行庫,所以桌面版的模型要先轉換才能在TFL里運行,然後TFL也就可以採取很多新的、甚至激進的手段提高速度、降低內存使用

對應這篇文章:Google正式發布TensorFlow Lite預覽版,針對移動/嵌入設備的輕量級解決方案,原文在developer blog

另一件事是,谷歌同時還介紹了用投影「ProjectionNet 」的方式壓縮大模型的方法, 這個方法里原模型和要壓縮成的新模型是需要重新聯合訓練的,然後壓縮後的新模型可以直接在TFL里運行,訓練過程里也可以加入其它的傳統壓縮方法繼續提升效果

對應文章:TF Lite只是故事的一部分,谷歌還一併介紹了新的模型壓縮方法,原文在research blog

總結起來,可以看這篇文章:Google正式發布TensorFlow Lite預覽版,針對移動/嵌入設備的輕量級解決方案


瀉藥,目前還沒深入研究,想必谷歌要有大動作吧。


帶來很深遠的影響!接下來2018往下看


深度學習小白,我想知道終端和後台配合,能不能以較小的數據交換量實現比較高效的圖像識別。比如miui9推出的圖像處理,就得打開照片雲備份才能用


瀉藥,雖然移動端的DL不太熟悉,但是可以看出谷歌的野心,相信是一個很好的框架,值得一看


瀉藥~沒什麼建設性意見,只有瞎逼逼。

android+tensorflow之後,本來開源的android發展得就比ios好,現在加上了強大的智能拓展,更多的應用可以享受到深度學習帶來的智能化功能,我想會有一大批的app和android自帶以及各種廠商如小米會在產品經理的大腦風暴後開發出更加方便用戶的功能,我想這點發展的肯定要比ios快上很多,所以這張牌打的好,打的越早利益越大。

誠如恩達兄所說的人工智慧是未來的新電力能源,那麼怎麼去開發這種能源就是關鍵。現在深度學習能做到的事情很多,在監督學習方面能做到的應用數不勝數。

還有,既然這等玩意都出來了,搞Android的哥們就不要轉來ML,給我們留點吃飯的地吧~大家都去學安卓吧!!~


謝邀。

對移動端不是很熟。所在的NVIDIA公司移動業務也不多。在內部做deep learning方面包括engineering和research,用TensorFlow和PyTorch的人最多。


謝邀。

這個問題的本質是人類日常閱讀習慣的改變。

人類的閱讀習慣從岩畫—竹簡—紙質書—電腦—移動端,雖說現在還會有人習慣看紙質書和電腦,但是移動端是未來的發展趨勢。深度學習框架的發布只是順應時代的潮流。

任何一家企業的最終目的,都是盈利,不是因為深度學習框架發布會產生影響,而是市場有了移動端的閱讀需求才會產生這款產品。


細說Google要搞的大事情


@Jasmineee 謝邀。 不過讓你失望了,我不是這個領域的專家。現在這麼火的AI, 還是留給其他牛人吧。


謝邀

我認為這次發布非常之正常不過,也是必然的,一貫符合人工智慧發展的大趨勢。當然我個人覺得這是一個里程碑級別的事。TensorFlow我前段時間在工作中使用過,給我印象挺好,文檔也很完備。隨著手機處理器集成AI模塊,人工智慧應該會像前幾年的安卓一樣迎來一次大的爆發,不過這個時間點還沒到,個人認為是因為有它的局限性。比如安卓剛開始火的時候,並不需要多高的學歷,只需要有足夠的經驗,可以出活就夠了。但人工智慧不同,機器學習和深度學習的招聘崗位大部分要求碩士研究生以上學歷,很多演算法還是需要好好理解一下的。當然如果已經有足夠的經驗也是可以勝任的,不過很難。

另外,看了文章之後,比較擔心手機的耗電問題。使用圖形處理器總歸還是比較費電的,不管是用來加速還是以後可能在移動端進行模型的訓練等。人工智慧火爆必然帶來小紅利,就看自己能不能抓住這個機遇了。關於其之後的發展,讓我們拭目以待吧!!

註:第一次被邀請,有點小惶恐,答的可能比較亂,求輕拍~


值得一提的是lite現在支持的運算符還比較少,很多操作符似乎會被直接刪掉,所以稍微觀望下。


有關具體的介紹可以看這個鏈接 https://www.tensorflow.org/mobile/tflite/ 。我們注意到tensorflow 之前還出過一個東西叫 TF Mobile。 那麼這兩個有什麼區別呢?簡而言之TF Lite是TF Mobile 的精簡版。當然,現在TF Lite 的很多功能還在開發當中,所以說不能做到像TF Mobile所有的生產環境需求都覆蓋,但隨著TF團隊對於這個套件的進一步開發,相信這些功能會逐漸得到完善。

為啥TF要搞出這個東東來呢,網站上說了,主要是因為:

  1. 需要能夠更好利用硬體加速的功能來用模型進行推斷
  2. 需要Benchmarking (23333,估計TF要刷分數)
  3. 需要能夠用於智能硬體
  4. 有些數據不能傳到服務端(用戶隱私)
  5. 需要能夠線下操作(off-line)

總而言之,感覺TF在下一盤很大的棋……


謝邀:

拋磚引玉 回答一發吧:

tensorflow lite這個原理類似於下邊鏈接里的文章的原理,大致是可以理解為聯合訓練兩個模型,一個完整模型,一個projection-model,projection-model比較節約內存,正好符合移動設備的需求,並且訓完之後可以直接在移動端設備上運行。 https://arxiv.org/abs/1708.00630


推薦閱讀:

有沒有基於移動端GPU的深度學習前饋網路框架?
如何評價deep mind開源的sonnet?
如何評價陳天奇的模塊化深度學習系統NNVM?
如何評價Sony新出的深度學習庫NNabla?

TAG:機器學習 | 谷歌Google | 深度學習DeepLearning | TensorFlow |