news 2026/5/9 18:14:43

CANN/AMCT量化感知训练配置创建

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/AMCT量化感知训练配置创建

create_quant_retrain_config

【免费下载链接】amctAMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。项目地址: https://gitcode.com/cann/amct

产品支持情况

产品

是否支持

Ascend 950PR/Ascend 950DT

Atlas A3 训练系列产品 / Atlas A3 推理系列产品

Atlas A2 训练系列产品 / Atlas A2 推理系列产品

功能说明

量化感知训练接口,根据图的结构找到所有可量化的层,自动生成量化配置文件,并将可量化层的量化配置信息写入配置文件。

函数原型

create_quant_retrain_config(config_file, model, input_data, config_defination=None)

参数说明

参数名

输入/输出

说明

config_file

输入

含义:待生成的量化感知训练配置文件存放路径及名称。如果存放路径下已经存在该文件,则调用该接口时会覆盖已有文件。

数据类型:string

model

输入

含义:待进行量化感知训练的模型,已加载权重。

数据类型:torch.nn.Module

input_data

输入

含义:模型的输入数据。一个torch.tensor会被等价为tuple(torch.tensor)。

数据类型:tuple

config_defination

输入

含义:简易配置文件。

基于retrain_config_pytorch.proto文件生成的简易配置文件quant.cfg,*.proto文件所在路径为:AMCT安装目录/amct_pytorch/proto/。*.proto文件参数解释以及生成的quant.cfg简易量化配置文件样例请参见量化感知训练简易配置文件。

默认值:None。

数据类型:string

量化支持的层及约束

支持的层类型

约束

备注

torch.nn.Linear

-

复用层(共用weight和bias参数)不支持量化。

torch.nn.Conv2d

  • padding_mode为zeros
  • 由于硬件约束,原始模型中输入通道数Cin<=16时不建议进行量化感知训练,否则可能会导致量化后的部署模型推理时精度下降
  • 只支持input data的shape为(N, Cin, Hin, Win)

torch.nn.ConvTranspose2d

  • padding_mode为zeros
  • 由于硬件约束,原始模型中输入通道数Cin<=16时不建议进行量化感知训练,否则可能会导致量化后的部署模型推理时精度下降
  • 只支持input data的shape为(N, Cin, Hin, Win)

返回值说明

调用示例

import amct_pytorch as amct # 建立待量化的网络图结构 model = build_model() model.load_state_dict(torch.load(state_dict_path)) input_data = tuple([torch.randn(input_shape)]) # 生成量化配置文件 amct.create_quant_retrain_config(config_file="./configs/config.json", model=model, input_data=input_data)

落盘文件说明:生成JSON格式的量化感知训练配置文件,样例如下(重新执行量化感知训练时,该接口输出的配置文件将会被覆盖),参数解释请参见量化感知训练配置参数。

{ "version":1, "batch_num":1, "conv1":{ "retrain_enable":true, "retrain_data_config":{ "algo":"ulq_quantize", "dst_type":"INT8" }, "retrain_weight_config":{ "algo":"arq_retrain", "channel_wise":true, "dst_type":"INT8" } }, "layer1.0.conv1":{ "retrain_enable":true, "retrain_data_config":{ "algo":"ulq_quantize", "dst_type":"INT8" }, "retrain_weight_config":{ "algo":"arq_retrain", "channel_wise":true, "dst_type":"INT8" } }, "fc":{ "retrain_enable":true, "retrain_data_config":{ "algo":"ulq_quantize", "dst_type":"INT8" }, "retrain_weight_config":{ "algo":"arq_retrain", "channel_wise":false, "dst_type":"INT8" } } }

【免费下载链接】amctAMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。项目地址: https://gitcode.com/cann/amct

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 18:13:50

快速为你的爬虫脚本或自动化工具添加智能摘要能力

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 快速为你的爬虫脚本或自动化工具添加智能摘要能力 在数据驱动的项目中&#xff0c;爬虫脚本或自动化工具常常会抓取或生成海量的文…

作者头像 李华
网站建设 2026/5/9 18:12:40

别人写的代码看不懂,到底是谁的水平有问题

你突然看到某段代码用了工厂模式&#xff0c;第一反应可能是&#xff1a;有必要吗&#xff1f;直接new一个对象不行吗&#xff1f;干嘛「故意」增加阅读难度&#xff1f;其实不是这样的&#xff0c;当你接触过的高手多了后&#xff0c;你会自然而然的认为&#xff1a;高手的代码…

作者头像 李华
网站建设 2026/5/9 18:12:39

CANN算子测试赛Add报告

【免费下载链接】cann-competitions 本仓库用于 CANN 开源社区各类竞赛、开源课题、社区任务等课题发布、开发者作品提交和展示。 项目地址: https://gitcode.com/cann/cann-competitions 元信息&#xff08;请如实填写&#xff0c;此区块将由组委会脚本自动解析&#xf…

作者头像 李华
网站建设 2026/5/9 18:12:38

观察Taotoken按Token计费模式如何实现精准成本控制

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 观察Taotoken按Token计费模式如何实现精准成本控制 在构建和运营基于大模型的应用时&#xff0c;成本控制是开发者与团队管理者必须…

作者头像 李华
网站建设 2026/5/9 18:11:32

AGI与LLM如何重塑石油天然气行业:从数据治理到智能决策

1. 项目概述&#xff1a;当古老能源遇上前沿智能干了十几年技术&#xff0c;从传统工业自动化到后来的数据分析&#xff0c;再到这两年一头扎进大模型领域&#xff0c;我见过不少技术浪潮。但当我看到“AGI与LLM重塑石油天然气行业”这个命题时&#xff0c;第一反应是&#xff…

作者头像 李华