文档
注册

--compression_optimize_conf

功能说明

压缩优化功能配置文件路径以及文件名,通过该参数使能配置文件中指定的压缩优化特性,从而提升网络性能。

参数取值

参数值:配置文件路径以及文件名。

参数值格式:路径和文件名:支持大小写字母(a-z,A-Z)、数字(0-9)、下划线(_)、中划线(-)、句点(.)、中文字符。

参数值约束:

当前仅支持配置如下两种压缩方式,用户根据实际情况决定配置哪种压缩方式:

enable_first_layer_quantization:true
calibration: 
{
    input_data_dir: ./data.bin,d2.bin
    input_shape: in:16,16;in1:16,16
    config_file: simple_config.cfg
    infer_soc: xxxxxx
    infer_device_id: 0 
    log: info
}

其中:

  • enable_first_layer_quantization:用于控制AIPP首层卷积是否进行优化(AIPP会与量化后模型首层卷积CONV2D前的Quant算子进行融合),配置文件中冒号前面表示压缩优化特性名称,冒号后面表示是否使能该特性,true表示使能,false表示不使能,默认不使能。

    使能enable_first_layer_quantization特性时,只有网络结构中存在AIPP+CONV2D结构,并且在atc命令中将--enable_small_channel参数设置为1时,才有可能获得性能收益。由于量化后的模型存在一定程度上的精度损失,用户根据实际情况决定是否使能该特性。

  • calibration:训练后量化。
    各参数说明如下,
    • input_data_dir:必选配置,模型输入校准数据的bin文件路径。若模型有多个输入,则多个输入的bin数据文件以英文逗号分隔。
    • input_shape:必选配置,模型输入校准数据的shape信息,例如:input_name1:n1,c1,h1,w1;input_name2:n2,c2,h2,w2,节点中间使用英文分号分隔。
    • config_file:可选配置,训练后量化简易配置文件,该文件配置示例以及参数解释请参见简易配置文件
    • infer_soc:必选配置,进行训练后量化校准推理时,所使用的芯片名称,请参见--soc_version参数处的取值说明。
    • infer_device_id:可选配置,进行训练后量化校准推理时所使用昇腾AI处理器设备的ID,默认为0。
    • log:可选配置,设置训练后量化时的日志等级,该参数只控制训练后量化过程中显示的日志级别,默认显示info级别:
      • debug:输出debug/info/warning/error/event级别的日志信息。
      • info:输出info/warning/error/event级别的日志信息。
      • warning:输出warning/error/event级别的日志信息。
      • error:输出error/event级别的日志信息。
      此外,训练后量化过程中的日志打屏以及日志落盘信息由AMCT_LOG_DUMP环境变量进行控制:
      • export AMCT_LOG_DUMP=1:表示日志打印到屏幕。
      • export AMCT_LOG_DUMP=2:保存量化因子record文件,并将日志落盘到当前路径的amct_log_时间戳/amct_acl.log文件中
      • export AMCT_LOG_DUMP=3:保存量化因子record文件和graph文件,并将日志落盘到当前路径的amct_log_时间戳/amct_acl.log文件中

参数默认值:无。

推荐配置及收益

示例

假设压缩优化功能配置文件名称为compression_optimize.cfg,文件内容配置示例如下:

enable_first_layer_quantization:true
calibration: 
{
    input_data_dir: ./data.bin;d2.bin
    input_shape: in:16,16;in1:16,16
    config_file: simple_config.cfg
    infer_soc: xxxxxxxx
    infer_device_id: 0 
    infer_ip: x.x.x.x 
    infer_port: 1000
    log: info
}

将该文件上传到ATC工具所在服务器,例如上传到$HOME/module,使用示例如下:

--compression_optimize_conf=$HOME/module/compression_optimize.cfg

支持的芯片型号

昇腾310 AI处理器

昇腾310P AI处理器

昇腾910 AI处理器

依赖约束

  • 使用该参数中的enable_first_layer_quantization特性时,请确保使用的模型是由昇腾模型压缩工具(AMCT)进行量化操作后输出的部署模型。
  • 使用配置文件中的calibration训练后量化功能时,只支持带NPU设备的安装场景,详细介绍请参见手册搭建对应产品环境。
  • 使用配置文件中的calibration进行训练后量化功能时,ATC工具会调用昇腾模型压缩工具量化接口执行相关操作,原理图如下:
    图1 训练后量化原理简图
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词