深度网络量化器
将深度神经网络量化为8位比例整数数据类型
描述
使用深度网络量化器通过将卷积层的权重、偏差和激活量化为8位缩放整数数据类型,减少深度神经网络的内存需求。使用这个应用程序,你可以:
可视化深度神经网络中卷积层的动态范围。
选择要量化的单个网络层。
评估量化网络的性能。
使用GPU Coder™生成GPU代码来部署量化网络。
使用深度学习HDL工具箱™生成HDL代码,将量化网络部署到FPGA。
生成c++代码,将量化网络部署到ARM Cortex-A微控制器上MATLAB®编码器™.
生成一个可模拟的量化网络,您可以在MATLAB中探索,而无需生成代码或部署到硬件。
这个应用程序需要深度学习工具箱模型量化库.要了解量化深度神经网络所需的产品,请参s manbetx 845见量化流程.
打开深度网络量化器应用程序
MATLAB命令提示符:输入
deepNetworkQuantizer
.MATLAB工具条:在应用程序选项卡,在机器学习和深度学习,点击应用程序图标。
参数
执行环境
—执行环境
GPU
(默认)|FPGA
|CPU
|MATLAB
当你选择新增>量化网络,该应用程序允许您选择量化网络的执行环境。网络如何量化取决于执行环境的选择。
当你选择MATLAB
执行环境,应用程序执行神经网络的目标不可知量化。这个选项不要求您有目标硬件,以便在MATLAB中探索量化网络。
硬件设置
—硬件设置
仿真环境|目标
根据您的执行环境指定硬件设置。
GPU执行环境
从以下模拟环境中选择:
模拟环境 行动 GPU
在主机GPU上进行模拟
在主机图形处理器上部署量化网络。通过将性能与单精度版本的网络进行比较来验证量化网络。
MATLAB
MATLAB仿真
在MATLAB中对量化网络进行仿真。通过将性能与单精度版本的网络进行比较来验证量化网络。
FPGA执行环境
从以下模拟环境中选择:
模拟环境 行动 MATLAB
MATLAB仿真
在MATLAB中对量化网络进行仿真。通过将性能与单精度版本的网络进行比较来验证量化网络。 英特尔Arria 10 SoC
arria10soc_int8
将量化网络部署到Intel上®Arria®10 SoC板使用
arria10soc_int8
比特流。通过将性能与单精度版本的网络进行比较来验证量化网络。Xilinx ZCU102
zcu102_int8
将量化网络部署到Xilinx®Zynq®UltraScale+™MPSoC ZCU102 10 SoC板采用
zcu102_int8
比特流。通过将性能与单精度版本的网络进行比较来验证量化网络。Xilinx ZC706
zc706_int8
将量化网络部署到Xilinx Zynq-7000 ZC706单板上
zc706_int8
比特流。通过将性能与单精度版本的网络进行比较来验证量化网络。当你选择英特尔Arria 10 SoC,Xilinx ZCU102,或Xilinx ZC706选项,另外选择用于部署和验证量化网络的接口。
目标的选择 行动 JTAG 程序所选的目标FPGA板下模拟环境使用JTAG电缆。有关更多信息,请参见JTAG连接(深度学习HDL工具箱). 以太网 中所选目标FPGA板的编程模拟环境通过以太网接口。中指定目标板的IP地址IP地址字段。 CPU执行环境
的硬件设置按钮已禁用。但是,您必须使用
raspi
函数来建立到Raspberry Pi™板的连接量化和验证的一步。
量化的选择
-量化和验证选项
度量函数|指数格式
默认情况下,深度网络量化器App根据被量化的网络类型确定用于验证的度量函数。
网络类型 | 度量函数 |
---|---|
分类 | (精度—网络的准确性 |
对象检测 | 平均精度-所有检测结果的平均精度。看到 |
回归 | 均方误差-网络的均方误差 |
语义分割 | WeightedIOU-每个类别的平均欠条,按该类别的像素数加权。看到 |
还可以指定自定义度量函数用于验证。
您可以选择用于网络量化的指数选择方案:
极大极小-(默认)根据校准统计信息中的范围信息评估指数,避免溢出。
柱状图-基于分布的缩放,评估指数以最佳拟合校准数据。
出口
—量化网络导出选项
出口量化网络
|出口数字转换器
|生成代码
出口量化网络—网络校准完成后,量化并将量化后的网络添加到基础工作空间。这个选项导出一个可模拟的量化网络,
quantizedNet
,您可以在MATLAB中探索,而无需部署到硬件。此选项相当于使用数字转换
在命令行。导出的量化网络不支持代码生成,万博1manbetx
quantizedNet
.出口数字转换器-添加
dlquantizer
对象添加到基本工作区。你可以保存dlquantizer
对象,并使用它来进一步探索深度网络量化器应用程序或命令行,或使用它为目标硬件生成代码。生成代码-打开GPU Coder应用,从量化和验证的神经网络生成GPU代码。生成GPU代码需要GPU Coder许可证。