CANN/amct蒸馏API文档

发布时间:2026/6/29 1:32:12

CANN/amct蒸馏API文档 distill【免费下载链接】amctAMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。项目地址: https://gitcode.com/cann/amct产品支持情况产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√功能说明蒸馏接口将输入的待蒸馏的图结构按照给定的蒸馏量化配置文件进行蒸馏处理返回修改后的torch.nn.Module蒸馏模型。函数原型distill_model distill(model, compress_model, config_file, train_loader, epochs1, lr1e-3, sample_instanceNone, lossNone, optimizerNone)参数说明参数名输入/输出说明model输入含义待进行蒸馏量化的原始浮点模型已加载权重。数据类型torch.nn.Modulecompress_model输入含义修改后的可用于蒸馏的torch.nn.Module模型。数据类型torch.nn.Module使用约束该接口输入的模型必须是量化后的压缩模型。config_file输入含义用户生成的蒸馏量化配置文件用于指定模型network中量化层的配置情况和蒸馏结构。数据类型string使用约束该接口输入的config.json必须和create_distill_config接口输入的config.json一致。train_loader输入含义训练数据集。数据类型torch.utils.data.DataLoader使用约束必须与模型输入大小匹配。epochs输入含义最大迭代次数。默认值1数据类型intlr输入含义学习率。默认值1e-3数据类型floatsample_instance输入含义用户提供的获取模型输入数据方法的实例化对象。默认值None数据类型DistillSampleBase使用约束必须继承自DistillSampleBase类并且实现get_model_input_data方法。可参考AMCT安装目录/amct_pytorch/distill/distill_sample.py文件。loss输入含义用于计算损失的实例化对象。默认值None数据类型torch.nn.Modules.loss._Lossoptimizer输入含义优化器的实例化对象。默认值None数据类型torch.optim.Optimizer返回值说明修改后的torch.nn.Module蒸馏模型。调用示例import amct_pytorch as amct # 建立待进行蒸馏量化的网络图结构 model build_model() model.load_state_dict(torch.load(state_dict_path)) compress_model compress(model) input_data tuple([torch.randn(input_shape)]) train_loader torch.utils.data.DataLoader(input_data) loss torch.nn.MSELoss() optimizer torch.optim.AdamW(compress_model.parameters(), lr0.1) # 蒸馏 distill_model amct.distill( model, compress_model config_json_file, train_loader, epochs1, lr1e-3, sample_instanceNone, lossloss, optimizeroptimizer)【免费下载链接】amctAMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。项目地址: https://gitcode.com/cann/amct创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻