🧠 ONNX → NPU 适配实战 30章 · 从入门到部署

📚 友好 · 全彩目录
01 ONNX基础认知
  • ONNX是什么
  • 为什么需要ONNX
  • 生态与工具链概览
↗ 进入
02 NPU芯片架构入门
  • NPU vs CPU/GPU
  • 达芬奇·寒武纪·地平线
  • 算力指标
↗ 进入
03 ONNX模型结构解析
  • protobuf结构
  • 节点·张量·图
↗ 进入
04 ONNX模型可视化
  • Netron工具
  • 输入输出·中间层
↗ 进入
05 ONNX算子集详解
  • Conv/Relu/Gemm
  • 版本兼容·自定义算子
↗ 进入
06 ONNX模型导出
  • PyTorch导出
  • TensorFlow导出
↗ 进入
07 导出常见问题
  • 动态轴·控制流
  • 算子不支持·命名
↗ 进入
08 ONNX模型验证
  • onnxruntime推理
  • 精度差异·正确性
↗ 进入
09 ONNX模型简化
  • onnx-simplifier
  • 消除冗余·常量折叠
↗ 进入
10 ONNX模型量化基础
  • FP32→INT8
  • 对称/非对称·校准集
↗ 进入
11 ONNX模型量化实战
  • onnxruntime量化
  • QAT与PTQ
↗ 进入
12 NPU适配流程总览
  • 解析→优化→编译→加载→推理
↗ 进入
13 NPU编译器原理
  • 图优化·算子融合
  • 内存分配·调度
↗ 进入
14 NPU算子映射
  • 映射规则·支持列表
  • 不支持列表
↗ 进入
15 NPU不支持算子处理
  • 算子替换·拆分
  • 自定义算子·回退CPU
↗ 进入
16 NPU内存管理
  • DDR/SRAM
  • 带宽优化·tiling
↗ 进入
17 NPU模型编译
  • SDK编译·选项配置
  • 编译日志分析
↗ 进入
18 NPU模型加载与推理
  • Runtime API
  • Session·执行推理
↗ 进入
19 NPU推理性能分析
  • Profiling工具
  • 计算/带宽瓶颈
↗ 进入
20 NPU推理精度分析
  • 精度损失·逐层对比
  • 混合精度·误差补偿
↗ 进入
21 NPU多模型部署
  • 并发推理·模型切换
  • 内存复用·Pipeline
↗ 进入
22 NPU模型加密与保护
  • 加密方案·解密加载
  • 安全启动·防逆向
↗ 进入
23 实战:图像分类 ResNet50
  • ONNX→NPU全流程
↗ 进入
24 实战:目标检测 YOLOv5
  • ONNX→NPU全流程
↗ 进入
25 实战:语义分割 UNet
  • ONNX→NPU全流程
↗ 进入
26 实战:NLP模型 BERT
  • ONNX→NPU全流程
↗ 进入
27 常见问题排查
  • 编译失败·结果错误
  • 性能不达标·内存溢出
↗ 进入
28 NPU性能调优
  • 算子选择·内存布局
  • 多核并行·异步推理
↗ 进入
29 工具链进阶
  • 自定义算子开发
  • Profiling·自动调优
↗ 进入
30 总结与展望
  • 技术趋势·发展方向
  • 学习资源推荐
↗ 进入