|

不須轉換!OpenVINO整合TensorFlow框架實現推論加速!

   
作者:Felix Lin

有在涉略AI邊緣運算的各位們對於OpenVINO應該都有基礎的了解:不同框架(如TensorFlow、PyTorch等)訓練完成的模型檔在經由OpenVINO轉換後可以在不同邊緣運算裝置執行推論加速。

若筆者告訴各位,現在不用經過模型轉換可以直接在TensorFlow中推論時完成OpenVINO加速呢?

是的你沒看錯!Intel在2021下半年推出的OpenVINO™ integration with TensorFlow(以下簡稱OVTF)能夠實現在TensorFlow中介接OpenVINO執行推論加速。本篇將帶大家實際操作看看在不用改code就能夠把TensorFlow推論進行加速的方法!

OpenVINO x TensorFlow 幸福來得太突然

對於TensorFlow開發者來說,只要在程式碼裡增加兩行就可以增加推論速度!什麼程式碼這麼神奇!?眼見為憑,這兩行指令如下:

import openvino_tensorflow

openvino_tensorflow.set_backend('')

上面第一行嚴格來說不算指令,只是匯入了OpenVINO整合TensorFlow套件。而第二行呼叫了openvino_tensorflow設定後端運算硬體的指令,其中帶入的參數可以設定為CPU(Intel 處理器)、GPU(Intel處理器中的整合式顯示卡)、MYRIAD(AI加速晶片VPU)等。如此一來就已完成TensorFlow推論加速了。

而其特別之處從架構圖看來可以得知在原始TenorFlow與OpenVINO toolkit之間多增加了Operator Capability Manager (OCM)、Graph Partitioner、TensorFlow Importer與

Backend Manager,讓前述二者可以渾然天成的結合在一起。簡單來說在執行推論時會對神經網路各個運算進行判讀,是否能夠透過OpenVINO進行加速,並讓其對應到OpenVINO 的相應的運算子,最後分配到指定的後端硬體進行運算,反之若是不行加速的運算則讓其返回在TensorFlow中處理。

各別功能作用細節可從github repo說明文件進行深入探究。若不了解這些技術細節也不要緊,參考模型支援文件可以得知各個TensorFlow模型(包含TF-Slim Classification、Object Detecion、TF-Hub等眾多來源)的支援程度,或是跟著我們接下來的步驟進行體驗一番!

本文為會員限定文章

立即加入會員! 全站文章無限看~

                               

已經是會員? 按此登入

只需不到短短一分鐘...

輸入您的信箱與ID註冊即可享有一切福利!

會員福利
1

免費電子報

2

會員搶先看

3

主題訂閱

4

好文收藏

Lin Felix

Author: Lin Felix

長期出沒在南部地區的Maker社群,致力於推廣從實作中學習的精神。熱愛胡搞瞎搞,喜歡嘗試新事物。現職為亞堤教育團隊講師與創客閣樓召集人。

Share This Post On

Submit a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *