This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] J784S4XEVM:独立 TopK 运算符卸载到 TIDL 的问题 (SDK 11.2)

Guru**** 2826825 points

Other Parts Discussed in Thread: J784S4XEVM

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1621500/j784s4xevm-issue-with-standalone-topk-operator-offload-to-tidl-sdk-11-2

器件型号:J784S4XEVM

您好:

我正在使用 TIDL 使用 ONNX 模型、因此在尝试将独立的 TopK 操作员卸载到 TIDL 时会遇到问题。  

我将使用中的默认实现  SDK 11.2

在编译和推理过程中、我始终会收到一条警告、指示错误的索引输出形状:

image.png

由于此警告、TopK 生成的索引输出不正确。

您可以在此处找到测试期间使用的模型: topk_model.zip 

您能否分析此问题并提供解决建议?

感谢您的支持。

此致、

Ghassen

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ghassen:

    您能否分享编译过的工件以及编译模型所使用的配置、您是否使用 tensor_bit 作为 16?

    另请参考 topk 运算符的 tidl 实现、  

    https://github.com/TexasInstruments/edgeai-tidl-tools/blob/master/docs/topk.md

    输出形状取决于您用于量化模型的 tensor_bit。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gokul、

    以下是用于该编译的编译参数:

    “Accurity_level":“:1、
    “debug_level":“:1、
    “张量_位数“: 16,
    “advanced_options: calibration_frames“: 1,
    “advanced_options: calibration_iterations“: 1,
    “advanced_options: enable_custom_layers“: 1,

    您可以在这里找到所使用的工件: e2e.ti.com/.../topk_5F00_model_5F00_artifacts.zip

    此致、

    Ghassen

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ghassen:

    工件似乎是正确的、  

    [报价 userid=“605537" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1621500/j784s4xevm-issue-with-standalone-topk-operator-offload-to-tidl-sdk-11-2 由于此警告、TopK 生成的索引输出不正确。 [/报价]

    为此、请参阅 https://github.com/TexasInstruments/edgeai-tidl-tools/blob/master/docs/topk.md

    我能够编译和运行 模型、而不会出现任何错误。 我还没有看到您提到的警告。

    您能共享编译日志和推理日志吗?

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gokul、

    请在此处找到用于在主机和目标上进行编译、推理的日志:

    e2e.ti.com/.../1376.logs.zip

    此致、

    Ghassen

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gokul、

    感谢您分享您的日志。

    我尝试 使用 basic_example.py 脚本编译我的 TopK 模型。 编译和推理均在没有任何警告的情况下运行。

    但是、问题仍然存在。 如图中所示 指数形状保持不变 [1,2,38192]

    我还在两次打印期间打印了模型输出 编译 进行推理 。 。 索引输出始终不正确 、如下所示:

    编译:

    推理:

    参考资料:

    你能否告诉我,如果你能重现同样的行为在你身边?

    此致、

    Ghassen

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ghassen:

    但是、问题仍然存在。 如图中所示 指数形状保持不变 [1,2,38192] [/报价]

    这是已知的行为、对于 16 位量化、您将得到输出形状为[1、2、38124]对于 8 位量化、您将得到 [1、4、38124]

    此链接 https://github.com/TexasInstruments/edgeai-tidl-tools/blob/11_02_04_00/docs/topk.md 中提到了这一点

    请参阅“ 6. Re 解释操作“ 来解释 topk 输出。

    您也可以验证 RTD 电阻值  使用基准轻松输出、您能检查是否 RTD 电阻值 输出是否正确?

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Gokul、

    感谢您提供详细信息。

    此问题仅在 TopK 出现时出现 指数 如所示暴露 模型的输出。  在这种情况下、不添加重新解释的整形、因此输出形状仍存在问题、输出不正确。

    我们在您提供的链接之后运行了其他测试、并在时确认 TopK 索引由收集节点消耗 重新解释整形 和相位噪声。 在这种情况下、是 输出形状正确 结果与参考相符

    目前、这解决了我们的问题、如果我们遇到任何其他问题、我们将再次与您联系。

    此致

    Ghassen