嵌入式深度神经网络量化训练系统

介绍:实现面向嵌入式平台的深度量化神经网络训练过程的优化,并在嵌入式平台进行了推理过程的部署与测试。

系统架构图

开发平台与语言:
以VSCODE作为开发平台,采用B/S架构,涉及Python、HTML5、JavaScript、CSS以及数据库操作语句。

嵌入式硬件友好型深度神经网络量化训练技术软件系统:

该系统分为硬件和软件两个部分。

1)硬件

硬件上,采用瑞芯微RK3588开发板进行深度神经网络嵌入式硬件部署与量化推理加速验证。

2)软件
该系统按照系统的功能需求区分的。本系统针对神经网络量化共设置了6个算法,

<1>参数设置

参数设置中主要包括权重量化、激活值量化、梯度量化、损失量化等。

<2>基于最优概率密度的随机取整深度网络量化方法

该方法针对神经网络量化后精度损失较大的问题提出。方法中存储所有训练参数,并将中间值累积为8位整数,而渐变使用的位不超过5位。

<3>逐层块缩放指数方案

为了在训练过程中提供必要的动态范围,使用了逐层块缩放指数方案。通过与舍入过程和整数熵损失计算的深度结合,减小计算量。

<4>前向传播

过程中,对于W(weight)权重、A(activation)激活值,按照上述算法将32位数据量化到8位上(即指数缩放),再前向传播过程中,量化使用随机舍入取整,可有效降低量化时的精度损失。

前向传播量化流程

测试平台展示

主界面截图

系统界面截图

主界面