摘要:推理時精度錯誤或不達標,怎么辦?模型推理時,模型推理功能調測OK,但推理精度錯誤,或推理精度與標桿資料存在少量差距,這時該怎么做呢?
本文分享自華為云社區《【CANN檔案速遞10期】推理網路精度調優》,作者: 昇騰CANN ,
一、推理時精度錯誤或不達標,怎么辦?
模型推理時,模型推理功能調測OK,但推理精度錯誤,或推理精度與標桿資料存在少量差距,這時該怎么做呢?我們可以從以下兩種導致精度問題的原因入手,建議先檢查配置問題、再檢查算子精度問題,
二、推理前,哪些配置可能影響精度?
1、JPEGD解碼后的輸出圖片可能存在補邊的無效資料,可能影響推理精度,
建議:JPEGD+VPC串聯使用時,由于JPEGD解碼后的輸出圖片的寬stride*高stride有128*16對齊的約束,因此解碼后的輸出圖片的寬、高有一些補邊的無效資料,所以VPC在處理圖片前,應首先對JPEGD對齊后的輸出圖片進行原解析度裁剪,目的是去除無效資料對影像精度的影響,
2、VPC輸出圖片格式與AIPP輸入圖片格式不一致,可能影響推理精度,
建議:AIPP色域轉換配置中的源圖片格式要與VPC的輸出圖片格式保持一致,如果不一致,例如,VPC的輸出格式是YUV420SP(NV12),而AIPP色域轉換的配置是YUV420SP(NV21)-->RGB888,則UV分量的順序不同會影響模型推理的精度,
三、模型中算子精度不達標,怎么定位呢?
模型中算子精度不達標導致整網推理精度不達標時,可以借助精度比對工具、一鍵Dump比對工具,根據下文中具體的問題定位流程獲取各類資料后,再進行比對、分析,逐一解決問題,
在定位問題前,我們先需要獲取相關輔助工具:
? 精度比對工具:用于比對昇騰算子與業界標準算子的運算結果,也可用于比對昇騰算子多次運算結果,但需用戶自行準備昇騰算子或業界標準算子的運算結果資料(即Dump資料),該工具的獲取及用法請參見配套版本的《精度比對工具使用指南》,
? 一鍵Dump比對工具:僅用于比對昇騰算子與TensorFlow/ONNX標準算子的運算結果,無需用戶準備昇騰算子和TensorFlow/ONNX標準算子的運算結果資料,只需指定昇騰模型和TensorFlow/ONNX 模型的路徑即可,該工具的獲取及用法請參見https://gitee.com/ascend/tools/tree/master/msquickcmp
通過工具比對資料時,我們還需要修改或檢查以下配置:
1、配置模型高精度模式
? 原因分析:
當前默認采用fp16(float16)資料型別進行計算,配置模型高精度模式后推理,可提升精度,但可能會影響推理性能,如果在精度達標的同時,需要保持性能,則可以配置部分算子保持原始網路中的資料型別,
? 配置方法:
模型高精度模式:模型轉換時增加--precision_mode=allow_fp32_to_fp16
部分算子保持原始網路中的資料型別:模型轉換時增加--keep_dtype引數以及--precision_mode=force_fp16
2、關閉資料快取優化
? 原因分析:
當前默認開啟資料快取優化,開啟資料快取優化可提高計算效率、提升性能,但由于部分算子在實作上可能存在未考慮的場景,導致影響精度,因此在出現精度問題時可以嘗試關閉資料快取優化,如果關閉資料快取優化功能后,精度達標,則還是需要識別出問題算子,反饋給華為工程師進一步分析、解決算子問題,解決算子問題后,建議保持開啟資料快取優化,
? 配置方法:
模型轉換時增加--buffer_optimize=off_optimize
3、關閉融合規則
? 原因分析:
當前默認開啟融合規則,開啟融合規則可提高計算效率、提升性能,但算子之間可能會融合,融合后的部分算子在實作上可能存在未考慮的場景,導致影響精度,因此在出現精度問題時可以嘗試關閉融合規則,如果關閉融合規則功能后,精度達標,則還是需要識別出問題算子,反饋給華為工程師進一步分析、解決算子問題,解決算子問題后,建議保持開啟融合規則功能,
? 配置方法:
模型轉換時增加--fusion_switch_file引數,指定融合規則組態檔,一鍵式關閉融合規則,融合規則組態檔內容如下:
4、檢查資料處理或配置
推理精度不達標可能是由于資料集預處理或推理結果后處理方式與標桿不一致導致,也有可能是由于AIPP配置不正確導致,需一一檢查、修改后,重新推理,
5、與標桿計算資料比對
上面的配置、檢查都完成后,如果推理精度還是不達標,最后,我們可以使用一鍵Dump比對工具比對昇騰算子與TensorFlow/ONNX標準算子的運算結果的差異,然后聯系華為工程師,進一步定位算子問題并解決,
四、更多介紹
了解更詳細的內容,登錄昇騰社區,在開發者檔案中心:https://www.hiascend.com/document?tag=community-developer
點擊關注,第一時間了解華為云新鮮技術~
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/506034.html
標籤:其他
