文章作者:周兆靖
DL Workbench 深度學習工作臺
是 OpenVINO軟件棧中非常重量級的一個工具
涉及到的內容和操作比較多
決定還是另起一篇來介紹!
1.概述介紹
如果您對深度學習感興趣,DL Workbench 提供了更為直觀的學習平臺:帶您了解什么是神經網絡,神經網絡是如何工作的,以及如何檢查它們的架構。您可以在開發產品之前,學習神經網絡的分析和優化網絡的基礎知識,以及熟悉 OpenVINO生態系統及其主要組件。如果您是資深的 AI 工程師,DL Workbench 將為您提供一個方便的 web 界面,以實時優化您的模型并可以為您的產品落地進行加速。
DL Workbench 可以很方便地測量和分析模型性能,同時在實驗中調整模型以提高性能,最終分析模型的拓撲結構并產生可視化輸出。DL Workbench 的工作流程如下圖所示:
圖1-1 DL Workbench 的工作流程
英特爾提供了兩種運行 DL workbench(DLWB)環境。基于本地硬件的 DLWB 環境,訪問的算力僅限本地現有的算力資源;基于 IntelDeveloper Cloud 的 DLWB 提供了豐富的算力選項用于模型的橫向對比和分析,同時提供了類似本地化的用戶操作體驗。
IntelDeveloper Cloud 平臺上運行 DLWB 方法:
Run DL Workbench in Intel DevCloud
https://docs.openvino.ai/latest/workbench_docs_Workbench_DG_Start_DL_Workbench_in_DevCloud.html
(復制鏈接到瀏覽器打開)
本地硬件運行 DLWB 的方法:
Run DL Workbench on Local System
https://docs.openvino.ai/latest/workbench_docs_Workbench_DG_Run_Locally.html
(復制鏈接到瀏覽器打開)
接下來我們在 Intel Developer Cloud 平臺來運行 DLWB,無需安裝,直接運行。
2. 啟動DL Workbench
在 Intel Developer Cloud 平臺上啟動 DL Workbench 的步驟如下:
1打開 Work with Intel Distribution of OpenVINO Toolkit 頁面:
https://www.intel.com/content/www/us/en/developer/tools/devcloud/edge/overview.html
(復制鏈接到瀏覽器打開)
劃到頁面下半部分,點擊 Deep Learning Workbench:
https://www.intel.com/content/www/us/en/developer/tools/devcloud/edge/build/overview.html
(復制鏈接到瀏覽器打開)
圖2-1 DL Workbench啟動一
2運行第一個 Cell 里的代碼,之后會出現“Start Application”,點擊“Start Application”并等待初始化完成,進入點擊“Launch DL Workbench”啟動 DL Workbench( 以下簡稱 DLWB):
圖2-2 DL Workbench 啟動二
3. 使用DL Workbench評估模型性能
DLWB 的主界面如下圖所示,點擊 “Create Project” 進行模型評估:
圖3-1 創建 Project
步驟一
模型選擇
首先點擊“import model”,導入需要評估的模型。Open Model Zoo 是我們提供的一個在線模型庫,你可以直接從庫中下載需評估的模型,當然,你也可以上傳你的本地的模型文件,既可以是 IR 格式,也可以是原生的模型格式:
圖3-2 選擇模型
步驟二
設備選擇
單擊選定模型完成之后,請點擊“Select an Environment”,這里可以選定你部署的設備節點,Intel DevCloud 平臺的設備都可以進行實驗:
圖3-3 選擇設備一
你可以在”Device” 下拉菜單里選擇該模型運行在 CPU 上還是集成 GPU 上:
圖3-3 選擇設備二
步驟三
數據集選擇
點擊“Next Step”之后進入數據集選擇頁面,點擊“import Dataset”,你可以選擇使用 DLWB 提供的圖像創建一個數據集,或者通過本地上傳已有的數據集,例如 COCO,VOC,ImageNET 等格式的數據集:
圖3-4 選擇數據集
步驟四
推理性能測試
點擊“Create Project”之后,開始運行推理,等待推理完成之后,可以直觀的看到模型的 FPS 指標,以 FPS 值來判斷這個模型的性能水平:
圖3-5 推理性能測試
4. DL Workbench 模型調試
4.1模型單層運行時間統計
在模型網絡分析板塊,DLWB 可以計算出模型中每一層的消耗時間,可以以此進行網絡分析,從而決定下一步的優化策略。
圖4-1 模型單層運行時間統計
4.2模型層各精度占比統計
根據這個圖表,你可以很直觀的看到該模型層中每種精度的占比情況。若你覺得你可以降低 FP32 精度層的占比,你可以根據自己的需求,對高精度層實行量化操作,使其精度下降,并確保模型準確度下降在可接受的范圍內,這樣可以使得模型推理速度更為快速。
圖4-2 模型層各精度占比統計
4.3模型網絡拓撲展示
這個部分通過直接展示模型的拓撲結構圖和模型的層屬性,讓開發者對此模型能有一個更清晰與直觀的認識。
圖4-3 模型網絡拓撲展示
4.4模型優化建議
下拉頁面,可以看到 DLWB 會自動針對你的模型提供性能提升的建議。比如在這個模型中,它檢測到該模型有0%的層運行在 INT8 整型精度上,所以它建議我們對模型進行 INT8 精度校驗。
圖4-4 DLWB 對模型性能提升的優化建議
4.5校準模型成為 INT8 精度模型
在“Perform”選項中,包含了對于模型優化評估的多種策略。例如,通過校驗模型層從 FP32 到 INT8 來優化推理性能:優化步驟會將原本 FP32 精度格式的模型層校準量化成精度為 INT8 的模型層,不用重訓練并且可以控制精度下降不超過1%的范圍。
圖4-5 校準為 INT8 模型層介紹頁面
選擇默認模式,點擊啟動優化,即可完成低精度優化:
圖4-6 選擇校準為 INT8 模型層的算法
完成以后,你可以在模型主頁看到已優化的模型和未優化的模型,可以看到模型推理吞吐量獲得了巨大的提升:
圖4-7 精度為 FP32 精度與 INT8 精度模型的性能對比
4.6創建模型準確度報告
在“Perform”標簽下,選擇“Create Accuracy Report”,點擊創建報告,就可以得到當前模型校驗當前數據集獲得的識別準確度。
圖4-8 創建模型識別準確度報告
當你同時有 FP32 精度模型和 INT8 精度模型時,你可以通過準確度測算報告來獲得詳細的準確度信息。標注于“Accuracy”一欄中。
圖4-9 對比 INT8 模型與 FP32 模型識別準確度與推理性能數據
最終,我們發現同樣一個拓撲結構的模型,模型各層主要精度分別為 FP32 和 INT8,實測 FPS 的數據為 FP32 的 135.5FPS,而 INT8 精度的模型高達 450.46FPS,且前提是在準確度下降在百分之一的范圍內。說明低精度推理對于模型推理計算的性能提升還是非常可觀的。
4.7設置多組推理參數,獲取最優推理參數
優化策略中也包含了對于推理參數的組合設定,通過“Group Inference”實現:
圖4-10 Group Inference 設置
在此選擇你需要測試的多個 Stream 數值,以及 Batch 的數值,組合推理測試結果將會以圖表的方式展現,以幫助你找到該模型的在此設備上的最佳推理參數:
圖4-11 推理測試結果展示
4.8橫向/縱向模型性能評估
完成了單個模型的性能評估,可以使用不同的設備對此模型進行多次深入評估。
圖4-12 橫向模型性能對比
由此可知,你可以從橫向(精度格式,batch size,steam)對模型進行評估,也可以從縱向(不同的設備,CPU/iGPU)來比較同一個模型的性能水平。當然也可以在相同的機器上選擇測試兩個不一樣的模型來評估兩個模型的性能優劣。
圖4-13 縱向模型性能對比
5.總結
DL workbench 工具集成了非常多的功能,方便開發者的調用。由于篇幅的限制,本篇的介紹并不能全部覆蓋,僅就 DL workbench 功能做分享。更多功能,請登陸Intel Developer Cloud 平臺來嘗試吧!
審核編輯:湯梓紅
-
英特爾
+關注
關注
61文章
10137瀏覽量
173530 -
神經網絡
+關注
關注
42文章
4797瀏覽量
102237 -
intel
+關注
關注
19文章
3490瀏覽量
187554 -
Developer
+關注
關注
0文章
25瀏覽量
6516 -
深度學習
+關注
關注
73文章
5547瀏覽量
122292
原文標題:一文了解Intel? Developer Cloud 之DL Workbench深度學習工作臺 | 開發者實戰
文章出處:【微信號:英特爾物聯網,微信公眾號:英特爾物聯網】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
通過docker下載的DL Workbench,DL Workbench在導入模型時停止響應是怎么回事?
為什么無法通過OpenVINO?深度學習 (DL) 工作臺優化 MYRIAD 導入的模型?
在深度學習工作臺中安裝Python軟件包報錯怎么解決?
模具工作臺檢測應用案例
使用SPC5 studio作為工作臺調試收到警告
工作臺生成不完整的源代碼怎么處理?
如何借助TigerGraph機器學習工作臺加速企業BI
Intel Developer Cloud Telemetry數據分析(一)

Intel Developer Cloud之Telemetry數據分析

評論