内容简介
本书介绍嵌入式系统中的机器学习算法优化原理、设计方法及其实现技术。内容涵盖通用嵌入式优化技术,包括基于SIMD指令集的优化、内存访问模式优化、参数量化等,并在此基础上介绍了信号处理层面的优化、AI推理算法优化及基于神经网络的AI算法训练—推理联合的优化理论与方法。其中信号处理层面优化介绍了基于线性代数的快速近似算法、基于多项式的快速卷积构造技术、基于数据二进制结构的快速乘法算法等;在AI推理层面,介绍了机器学习推理模型共性结构、运算图中各个算子的计算优化途径;对基于神经网络的AI算法,阐述了如何将推理阶段的运算量约束以及底层数据量化约束加入训练代价函数,从算法训练端减少运算量以提升AI嵌入式系统的运行效率。此外,本书还通过多个自动搜索优化参数并生成C代码的例子介绍了通用的嵌入式环境下机器学习算法自动优化和部署工具开发的基本知识,通过应用示例和大量代码说明了AI算法在通用嵌入式系统中的实现方法,力求让读者在理解算法的基础上,通过实践掌握高效的AI嵌入式系统开发的知识与技能。
AI简介
这是一本深度探讨嵌入式系统中机器学习算法优化原理、设计方法及其实现技术的著作。本书以嵌入式系统的概念与特点为起点,深入阐述了嵌入式软件编程模式和优化方法,包括基于SIMD指令集的优化、内存访问模式优化、参数量化等。在深入介绍机器学习算法原理的基础上,本书进一步探讨了机器学习训练与推理过程,包括机器学习算法的分类、目标,以及推理模型共性结构和运算图中各个算子的计算优化途径。
书中详细解析了常见数值表示方式,包括单精度浮点数、双精度浮点数、半精度浮点数、bfloat16型浮点数以及定点数,并深入介绍了近似卷积算法和卷积算法的软件实现优化,包括快速卷积算法、近似的卷积算法、Winograd矩阵相乘算法等。同时,本书也介绍了在ARM平台上的机器学习编程,包括CMSIS软件框架基本架构、CMSIS-DSP与CMSIS-NN介绍,以及ARM NN软件框架和编程指南。
此外,本书还详细介绍了神经网络基本运算理解,包括神经网络中各种运算层及其软件实现,如卷积层、BN层、池化层、全连接层、激活层等。同时,本书也深入探讨了网络架构优化和网络参数优化,包括网络参数稀疏化、网络运算层裁剪以及网络参数量化等