有在涉略AI邊緣運算的各位們對於OpenVINO應該都有基礎的了解:不同框架(如TensorFlow、PyTorch等)訓練完成的模型檔在經由OpenVINO轉換後可以在不同邊緣運算裝置執行推論加速。
若筆者告訴各位,現在不用經過模型轉換可以直接在TensorFlow中推論時完成OpenVINO加速呢?
是的你沒看錯!Intel在2021下半年推出的OpenVINO™ integration with TensorFlow(以下簡稱OVTF)能夠實現在TensorFlow中介接OpenVINO執行推論加速。本篇將帶大家實際操作看看在不用改code就能夠把TensorFlow推論進行加速的方法!
OpenVINO x TensorFlow 幸福來得太突然
對於TensorFlow開發者來說,只要在程式碼裡增加兩行就可以增加推論速度!什麼程式碼這麼神奇!?眼見為憑,這兩行指令如下:
openvino_tensorflow.set_backend('')import openvino_tensorflow
上面第一行嚴格來說不算指令,只是匯入了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註冊即可享有一切福利!
會員福利
免費電子報
會員搶先看
主題訂閱
好文收藏