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