ZHDA053 February   2026

 

  1.   1
  2.   摘要
  3.   商标
  4. 简介
    1. 1.1 NPU 定义和用途
    2. 1.2 关键功能
    3. 1.3 技术限制
  5. 开发流程概述
    1. 2.1 模型开发阶段
    2. 2.2 模型编译阶段
    3. 2.3 应用程序集成阶段
  6. 模型创建示例 (Python)
    1. 3.1 模型选型依据
    2. 3.2 模型架构设计
    3. 3.3 训练详细信息
      1. 3.3.1 开发环境设置
      2. 3.3.2 数据集生成
      3. 3.3.3 模型训练配置
      4. 3.3.4 量化感知训练流程
  7. 嵌入式平台量化
    1. 4.1 量化方法:QAT 与 PTQ
      1. 4.1.1 训练后量化 (PTQ)
      2. 4.1.2 量化感知训练 (QAT)
    2. 4.2 量化框架和包装器模块
      1. 4.2.1 用于 CPU 量化的通用包装器
      2. 4.2.2 用于 NPU 硬件加速的 TINPU 包装器
  8. 验证模型
    1. 5.1 两阶段训练策略
      1. 5.1.1 初始训练阶段
      2. 5.1.2 微调阶段
    2. 5.2 训练阶段比较
    3. 5.3 验证结果和指标
  9. 测试模型
    1. 6.1 推理设置和方法
      1. 6.1.1 通用用户测试方法
    2. 6.2 测试结果和可视化分析
      1. 6.2.1 可视化性能评估
    3. 6.3 定量性能指标
  10. 将模型迁移至 TI MCU (C2000 – F28P55x)【入门级】
  11. 将模型迁移至 TI MCU (C2000 – F28P55x)【开发人员级别】
    1. 8.1 编译前提条件
      1. 8.1.1 必需的 TI 软件组件
      2. 8.1.2 环境设置过程
    2. 8.2 配置文件设置
      1. 8.2.1 配置文件结构
        1. 8.2.1.1 需要反量化标志的模型
      2. 8.2.2 回归模型专属配置
        1. 8.2.2.1 输出反量化标志
        2. 8.2.2.2 编译器常量修改
        3. 8.2.2.3 编译字典更新
    3. 8.3 编译处理流程
      1. 8.3.1 启动编译
      2. 8.3.2 编译阶段
      3. 8.3.3 需要注意的常见问题
  12. MCU 工程设置
    1. 9.1 为 NPU 应用创建 CCS 工程
    2. 9.2 了解 NPU 接口
      1. 9.2.1 主要接口组件
      2. 9.2.2 基本使用模式
  13. 10在嵌入式环境中测试模型
    1. 10.1 可视化性能评估
    2. 10.2 定量性能指标
  14. 11NPU 在实时信号链中的集成
    1. 11.1 应用方框图
    2. 11.2 应用代码实现
    3. 11.3 所使用的硬件组件
    4. 11.4 硬件验证结果
      1. 11.4.1 输入信号特性
      2. 11.4.2 神经网络输出分析
  15. 12关键设计决策和影响
    1. 12.1 NPU 数值处理
      1. 12.1.1 纯整数架构
      2. 12.1.2 负值与浮点值处理
    2. 12.2 支持的神经网络层和约束
      1. 12.2.1 支持的层类型
        1. 12.2.1.1 卷积层
        2. 12.2.1.2 其他核心层
        3. 12.2.1.3 灵活性
    3. 12.3 模型复杂度和大小限制
      1. 12.3.1 内存约束和模型大小
      2. 12.3.2 优化流程和性能权衡
  16. 13基准测试
    1. 13.1 模型性能比较
      1. 13.1.1 128 神经元模型
      2. 13.1.2 64 神经元模型
      3. 13.1.3 16 神经元模型
      4. 13.1.4 参考基准测试
    2. 13.2 性能分析
      1. 13.2.1 模型选择权衡
      2. 13.2.2 CPU 与 NPU 性能对比
    3. 13.3 流水线级时序测量
  17. 14总结
    1. 14.1 关键功能和约束
    2. 14.2 开发工作流程
    3. 14.3 模型设计注意事项
    4. 14.4 实现挑战和解决方案
    5. 14.5 更广泛的应用
  18. 15参考资料

验证结果和指标

为保持性能评估的客观性,验证过程采用了一套简单的方法:

  • 验证数据集:从生成数据中抽取 20% 不参与训练。
  • 多维指标:采用互补的评估指标进行全面评估。
  • 量化仿真:采用与目标硬件一致的量化方案开展验证。

经过量化感知训练的 Sine_64 模型达到了良好性能指标,符合简单 ML 模型的预期,并证明了其在 NPU 部署中的有效性:

  • 验证损失通过均方误差 (MSE) 进行衡量。均方误差衡量的是预测值 (ŷi) 与实际值 (yi) 之间差值平方的平均值。数值越低,模型性能越好。
方程式 1. MSE=1/n0n(yi-ŷi)2
  • 平均绝对误差衡量的是预测值与实际值之间绝对差值的平均值。与 MSE 不同,该指标不会对误差求平方,对异常值不敏感。
方程式 2. MAE=1/n0n|yi-ŷi|
  • R² 表示模型相对于使用均值作为预测器,对数据方差的解释程度。值范围为 0 到 1,其中 1 表示完美预测。验证 R² 分数反映了模型对给定数据方差的解释能力。
方程式 3. R2=1-(0nyi-ŷi2)/(0nyi-ȳ2)

Variables:

  • yi = 第 i 个样本的实际(真实)正弦值
  • ŷi = 神经网络对第 i 个样本的正弦预测值
  • ȳ = 验证数据集中所有实际正弦值的均值
表 5-2 训练验证指标
MetricMetric技术意义
验证损失0.00038均方误差极低,表明预测精度高
验证 MAE0.01305整个正弦范围(-1 至 +1)内的平均绝对误差约 1.3%
验证 R² 分数0.9993决定系数接近完美,表明模型可解释 99.93% 的正弦值方差

上述指标验证了以下核心成果:

  • 高精度:虽受量化约束,但该模型仍实现了百分之一以内的精度。
  • 稳定的性能:优异的 R² 分数表明模型在全输入范围内预测结果可靠。
  • 量化鲁棒性:纯整数运算下,模型性能几乎无衰减。
  • 部署就绪性:指标验证模型对于 NPU 实施的适用性。