MindStudio模型訓練場景精度比對全流程和結果分析( 四 )


MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
環境變量的解釋如下表所示:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
步驟四 執行訓練生成dump數據 。
點擊按鈕開始訓練
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
訓練時控制臺輸出如下所示:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
resnet目錄下生成的數據文件展示如下:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
在所有以“_Build.txt”為結尾的dump圖文件中,查找“Iterator”這個關鍵詞 。記住查找出的計算圖文件名稱,用于后續精度比對 。
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
如上圖所示,“ge_proto_00000343_Build.txt”文件即是我們需要找到的計算圖文件 。將此文件拷貝至用戶家目錄下,便于在執行比對操作時選擇 。
打開上面找到的計算圖文件,記錄下第一個graph中的name字段值 。如下示例中 , 記錄下“ge_default_20220926160231_NPU_61” 。
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
進入以時間戳命名的dump文件存放路徑下,找到剛記錄的名稱為name值的文件夾 , 例如ge_default_20220926160231_NPU_61,則下圖目錄下的文件即為需要的dump數據文件:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
五 比對操作在MindStudio菜單欄選擇“Ascend > Model Accuracy Analyzer > New Task”,進入精度比對參數配置界面 。
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
配置tookit path,點擊文件標識,如下圖所示:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
選擇對應的版本,如5.1.RC2版本,單擊ok:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
單擊next進入參數配置頁面:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
接著填寫gpu和npu的數據的相關信息,如下圖所示:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
參數解釋如下所示:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
點擊start:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
結果展示:
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
如上圖所示將Vector比對結果界面分為四個區域分別進行介紹 。
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
表1 精度比對分析界面字段說明
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
表2 散點分布圖字段說明
MindStudio模型訓練場景精度比對全流程和結果分析

文章插圖
六、常見問題 & 解決方案匯總Q:tfdbg復制pt命令時執行出錯
A:由于tfdbg將多行的pt命令識別為了單個命令,使得命令執行失敗 。解決辦法如下:
  1. 先退出tfdbg命令行
  2. 安裝pexpect庫 , 命令為 pip install pexpect --user(--user只針對普通用戶,root用戶是沒有的)
  3. 進入resnet所在的目錄 , cd ~/models/official/resnet
  4. 確保目錄下有dump.txt文件,即生成的pt命令
  5. 編寫下述代碼,vim auto_run.py
import pexpectimport syscmd_line = 'python3 -u ./cifar10_main.py'tfdbg = pexpect.spawn(cmd_line)tfdbg.logfile = sys.stdout.buffertfdbg.expect('tfdbg>')tfdbg.sendline('run')pt_list = []with open('dump.txt', 'r') as f:for line in f:pt_list.append(line.strip('\n'))for pt in pt_list:tfdbg.expect('tfdbg>')tfdbg.sendline(pt)tfdbg.expect('tfdbg>')tfdbg.sendline('exit')6.保存退出vim , 執行python auto_run.py
七、從昇騰官方體驗更多內容更多的疑問和信息可以在昇騰論壇進行討論和交流:https://bbs.huaweicloud.com/forum/forum-726-1.html

推薦閱讀