E2E Simulator Check時出現錯誤


前面將pytorch模型轉ONNX檔案 再用Onnx2onnx跑一遍都成功執行(不過我沒有將softmax拔掉)

在IP Evaluation那邊成功跑過了

E2E Simulator Check時出現錯誤

Tagged:

Comments

  • @范太恩

    Hi 范太恩,

    您必須要把 KL520 NPU 上不支援的 OP 去除 (e.g. softmax)。🙂


    在使用 Kneron ToolChain Docker 的情況下,IP Evaluation 後,您可以在 /data1/compiler/ 找到評估結果。

    IP Evalution 主要是在評估您 model 的性能並檢查是否存在 Kneron ToolChain 不支持的 op 或 結構。

    E2E Simulator Check 主要是確保優化後的 onnx 文件可以產生與最初設計的 model 有相同的結果。


    看到您的錯誤訊息,您也可能需要注意您的 input_names 是否為 "data_out" ,如果不是,您的 input_names = ["data_out"] 也要修改一下。

  • 我修改過後bug還是存在 上面是我的model的頭尾 不知道還有哪些地方需要修改

  • @范太恩

    Hi 范太恩,

    不知道您是已經有 把 KL520 NPU 上不支援的 OP 去除後,再去做 ONNX to ONNX (ONNX optimization),再進行後續的 E2E Simulator Check。

    看到您的錯誤訊息,應該是您沒有做 ONNX to ONNX (ONNX optimization),優化完以後再把您的 input_data 的 size 那邊也調整一下,應該就可以完成您後續的 E2E Simulator。

    如果您方便的話,您也可以提供您的 script (.py) 還有您的 model (.onnx) 給我看一下。

  • edited December 2021

    這是我的scrip跟model 還有預處理的code



  • 上述的問題我經由更改input_shape解決了 謝謝~

  • @范太恩

    Hi 范太恩,

    很高興您能順利解決您遇到問題。

    我看過您的 script (python_api_workflow.py) 之後給您一個小建議,您在 Section4 做 Quantization 前,您的 input_mapping 內的 input_images 建議可以輸入一百張與模型推論相關的圖片,只有四張可能會影響到推論結果。

  •  您好

    我已成功編譯好nef檔

    然後我修改KL520KnModelZooGenericInferenceClassification.py讓它去讀我的nef

    執行後它出現以下錯誤

    Error: inference failed, error = Error raised in function: generic_raw_inference_receive. Error code: 22. Description: ApiReturnCode.KP_ERROR_IMAGE_RESOLUTION_TOO_SMALL_22

    看起來是img_size的問題但我自己的預處理已經將已經將data resizee成我要的大小了

    是不是還有地方需要設定或修改

    我附上我的轉出來的轉出來的nef資料夾與我的我的程式 感謝~

  • @范太恩

    Hi 范太恩,

    不知道您是否可以提供"s.wav",讓我們方便測試一下。

  • edited December 2021

    @范太恩

    Hi 范太恩,

    看到您的 script (KL520KnModelZooGenericInferenceClassificationOSA.py), 您的 image input 的維度可能要改一下,改成(64, 256, 1) ,也就是您只要註解掉第166行 (移除這行image = np.expand_dims(image, axis=0)) 就可以成功執行推論。

    順便提醒您一下,您使用 normalize_mode=kp.NormalizeMode.KP_NORMALIZE_KNERON 會做 -128 的動作,請確認您做完之後是否符合您 model 的輸入條件,若是您模型輸入條件比較特別,建議您可以 bypass preporcess 直接餵進去。

The discussion has been closed due to inactivity. To continue with the topic, please feel free to post a new discussion.