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.

[参考译文] AM62A3:在适用于工业应用的 AM62A 上申请时间系列 AI 模型示例(非视觉)

Guru**** 2889230 points

Other Parts Discussed in Thread: AM62A7

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1643304/am62a3-request-for-time-series-ai-model-examples-on-am62a-for-industrial-applications-non-vision

器件型号: AM62A3
主题: AM62A7 中讨论的其他器件

TI E2E 团队大家好、

我目前正在 为一个工业自动化工程评估 AM62A7 处理器。 虽然我知道 AM62A 系列通过其 C7x/MMA 加速器针对视觉 AI 进行了高度优化、但我的用例侧重于 工业时间序列数据分析、 而不是图像处理。

具体来说、我希望在 EtherCAT 主设备上实现 AI 模型 、以便 根据高速传感器数据和总线流量执行预测性维护 (PDM) 或异常检测等任务。

关于对非视觉 AI 的支持、我有以下问题:

  1. 示例可用性: 是否有任何 专门针对 AM62A NPU 进行验证的时间序列预测或分类(例如 LSTM、GRU 或 1D-CNN)参考设计或软件示例(Jupyter 笔记本等)?

  2. 优化路径: 对于 处理 1D 传感器数据的 ONNX 或 TFLite 格式的模型、建议使用什么工作流程来确保将其卸载到 C7x/MMA、 而不是仅在 Arm Cortex-A53 内核上运行?

  3. 传感器数据集成: 由于这将用于 EtherCAT 主站 环境、是否推荐了任何方法将实时总线数据高效馈送到 TIDL(TI 深度学习)运行时?

如果有任何涵盖 AM62Ax 平台上的非视觉边缘 AI 的白皮书或 GitHub 存储库、请告知我。

此致、
Jack Cha

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

    您好、Jack、

    这些都是不错的问题、您认为这是一款视觉优化加速器是正确的。 因此、该器件支持的操作人员组针对 Vision CNN 和变压器进行了调优。  

    我们已经在这里的页面上列出了一组受支持的运算符和任何参数集的重新设置[1]-请注意这些是版本敏感的、最新的 11.1 SDK 对应于 11_01_06_00。  

    • 当前未实施 LSTM 和 GRU、卷积支持名义上适用于方形内核(1D 可在低效率,零权重下进行仿真)

    根据您的问题:  

    [引述 userid=“477602“ url=“~/support/processors-group/processors/f/processors-forum/1643304/am62a3-request-for-time-series-ai-model-examples-on-am62a-for-industrial-applications-non-vision
    • 示例可用性: 是否有任何 专门针对 AM62A NPU 进行验证的时间序列预测或分类(例如 LSTM、GRU 或 1D-CNN)参考设计或软件示例(Jupyter 笔记本等)?

    [/报价]

    遗憾的是、没有、我们迄今为止的示例适用于视觉 模型和应用

    [引述 userid=“477602“ url=“~/support/processors-group/processors/f/processors-forum/1643304/am62a3-request-for-time-series-ai-model-examples-on-am62a-for-industrial-applications-non-vision
    • 优化路径: 对于 处理 1D 传感器数据的 ONNX 或 TFLite 格式的模型、建议使用什么工作流程来确保将其卸载到 C7x/MMA、 而不是仅在 Arm Cortex-A53 内核上运行?

    [/报价]

    请参见[1]--如果您的模型中支持所有运算符、那么它将在 NPU 上完全加速。 编译模型时、将列出哪些层未针对 NPU 进行优化、它们将在 Arm 上运行。 您还将在运行时看到模型的消息、说明将加速多少 X 个 Y 层

    我要提到的是、由于在 Arm 和 NPU 之间移动数据、网络中间不受支持的运营商可能会显著降低总体运行时间

    [引述 userid=“477602“ url=“~/support/processors-group/processors/f/processors-forum/1643304/am62a3-request-for-time-series-ai-model-examples-on-am62a-for-industrial-applications-non-vision
    1. 传感器数据集成: 由于这将用于 EtherCAT 主站 环境、是否推荐了任何方法将实时总线数据高效馈送到 TIDL(TI 深度学习)运行时?

    [/报价]

    问得好。 我不太熟悉 EtherCAT 以及如何从网络接口/协议栈中解包数据

    通常、我们有一个多步视觉组件链、这些组件都对 DDR_SHARED_REGION 内的数据运行、远程内核(包括 C7 NPU)希望数据来自该区域。 图像缓冲区非常大、因此这对于快速运行非常重要。 根据输入的大小和运行模型的频率、这可能非常重要。

    TIDLRT(ONNX/TFL 下的内核运行时)有一个接口、用于将输入分配到该共享区域[2]。 它只能与 C/C++程序一同使用(python 不允许此类内存访问)。 对输入和输出执行此操作将减少多余的存储副本。  

    [1] https://github.com/TexasInstruments/edgeai-tidl-tools/blob/11_01_06_00/docs/supported_ops_rts_versions.md 

    [2] https://github.com/TexasInstruments/edgeai-tidl-tools/blob/e70106c59a5bec5a4f794b81b88534279b8a2312/examples/osrt_cpp/ort/onnx_main.cpp#L282