|

OpenVINO模型最佳化實測:PC/NB當AI辨識引擎沒問題!

   
作者:尤濬哲

上一次(ROS系統YOLOv3效能初體驗)我們談到在Intel OpenVINO架構下,當需要進行AI運算時利用Intel GPU加速一樣可獲得不錯的效能,並且使用YOLO v3進行測試。

這次我們將會自製一個CNN分類器,並透過OpenVINO的模型轉換程式轉換成IR模型,並進行模型效能與正確率分析。依據Intel官方網站的說明,OpenVINO可以針對不同模型進行最佳化,目前支援包括Tensorflow、Keras、Caffe、ONNX、PyTorch、mxnet等多種模型。

也就是說,當使用者透過其他框架訓練完成的模型檔,例如Keras的model.h5檔,或者TensorFlow的model.pb檔,只要經過轉換就可以在OpenVINO中以最高效能來執行。

(圖片來源: Intel OpenVINO官方網站

不過讀者可能會比較在意的就是透過OpenVINO加速後,效能是能提昇多少、正確率會不會發生變化?還有就是若我已經有一個訓練好的Model,我要如何轉換為OpenVINO可以讀取的模型呢?

本文將分為兩個部份來說明,第一個部份就是如何進行模型轉換,第二部份則來評測轉換前後的執行效能差異,除了模型比較之外,讀者一定會想了解Intel OpenVINO GPU與NVIDIA CUDA的差異,這部份也在本文中進行比較,我相信會讓讀者大開眼界。

OpenVINO模型轉換

以目前官方文件所述,OpenVINO架構執行效能最佳的為IR(Intermediate Representations) 格式模型,所謂的IR模型是「中間表達層」,IR模型包含一個bin及xml,bin包含實際權重的網路權重weight及誤差bais資料,而xml則是記載網路結構。

後續當OpenVINO要載入模型時,只要讀取這兩個檔案即可,雖然這樣轉換須多經過一道手續,但是卻可大幅提高執行效能,在此我們介紹如何轉換模型。

本文為會員限定文章

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

                               

已經是會員? 按此登入

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

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

會員福利
1

免費電子報

2

會員搶先看

3

主題訂閱

4

好文收藏

尤濬哲

Author: 尤濬哲

身兼助理教授/專欄作家/知名部落客,以及點點滴滴科技研發總監等身份,專長包括人工智慧、多媒體互動(Unity)、智慧互動裝置(APP、Arduino)、虛擬實境與擴增實境互動、IoT 實做開發。 學歷:中山大學資訊管理研究所 博士

Share This Post On

Submit a Comment

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