相关代码见文末
1.项目配置
项目目录文件如下:
参数配置:
-
训练,并且加入l1正则化 -sr --s 0.0001 执行剪枝操作 --model model_best.pth.tar(剪枝权重文件) --save pruned.pth.tar(保存剪枝结果) --percent 0.7(剪枝比例) 再次进行微调操作 --refine pruned.pth.tar --epochs 40
2.训练流程
在训练中,首先构建VGG网络,加载数据进行训练,需要注意的是,为了使BN的权重离散化,需要对BN的权重使用L1正则化进行更新。
训练流程:
def train(epoch):
model.train()
for batch_idx, (data, target) in enumerate(train_loader):
if args.cuda:
data, target = data.cuda(), target.cuda()
data, target = Variable(data),