早餐|第十八期 · 開始使用模型優化器

OpenVINO 中文社群發表於2020-09-27

早餐|第十八期 · 開始使用模型優化器

愛學習的 OpenVINO 中文社群

內容來源| 曹慧燕
內容排版| 李擎

在這裡插入圖片描述
大家好,
這裡是OpenVINO早餐

在上一期的節目中,
我帶大家一起看了模型優化器
到底對模型做了哪些優化

從這一期開始,
我們就來看看如何
使用模型優化器對模型進行轉換。

作者介紹

○ 曹慧燕

英特爾
IOTG Edge
AI 工程師

正餐部分

視訊放映

【持續更新】吃 OpenVINO 早餐,玩轉深度學習部署

文稿閱讀

開官方開發文件:https://docs.openvinotoolkit.org/,” Go to Guides >”,找到 Model Optimizer Developer Guide。

模型優化器的工作原理

  • 模型優化器並不用來做模型推理
  • 作用是把支援的模型框架訓練出來的模型轉成IR檔案
  • 在轉換過程中,除了在上一期中介紹的特定的模型優化技術以外,還有一些通用的優化。比如:移除推理階段不需要的層,如:Dropout;使用一個操作運算元替代一組操作節點,從而減少節點數,降低推理時間。

瞭解模型優化器是否支援你的模型

可以在Supported Framework Layers中查詢模型優化器支援的層,如果你的模型中有不支援的層,或者有你自己定義的演算法,需要參考Custom Layers in the Model Optimizer 去自定義這些演算法。

原始碼目錄結構

在這裡插入圖片描述

  • 在使用模型優化器的時候,我們呼叫 mo.py 或者帶 Framework 的 py 即可,他們都是呼叫 mo目錄下的 main 函式。

  • mo 目錄中,有 front, middle, back, ops 這樣的目錄:

    front:前端的校驗,包括:引數的校驗,對原始模型的分析,檢查模型優化器是否支援等。
    middle:對模型進行優化
    back:生成IR
    ops:定義了一些通用的操作

extensions 目錄中定義了對支援的 Framework 中的模型的操作。通常,你自定義的演算法需要放在這個目錄中。

配置模型優化器

因為模型優化器是將OpenVINO支援的模型轉成IR,因此,在對原始模型進行解析時,必須需要安裝對應的框架以及相關的依賴庫。

執行<INSTALL_DIR>/deployment_tools/model_optimizer/install_prerequisites目錄下的install_prerequisites.sh或install_prerequisites.bat即可。

通常這一步在安裝 OpenVINO 工具包的時候會建議大家配置好,如果大家在安裝的時候沒有配置,那在使用模型優化器之前必須配置好。
因為這些都是 python 庫,對 python 熟悉的小夥伴可以建立虛擬環境並在虛擬環境中安裝及使用模型優化器

在這裡插入圖片描述
該指令碼會安裝模型優化器支援的所有框架,也可以只安裝特定的框架:

在這裡插入圖片描述
配置好環境以後,就可以開始使用模型優化器了。

使用模型優化器這一部分內容我會在下一期給大家介紹。
今天的分享就到這裡,我們下期節目見!

原文釋出於2020-09-17:早餐|第十八期 · 開始使用模型優化器

關注我們,讓開發變得更有趣?
在這裡插入圖片描述

微訊號:openvinodev
B站:OpenVINO 中文社群

*OpenVINO and the OpenVINO logo are trademarks of Intel Corporation or its subsidiaries.

相關文章