Discrimination-aware Channel Pruning(DCP)
liujing
基于通道判别力感知,实现高效准确的2D模型通道剪枝。
| 模型 | Top-1(%) | Top-5(%) | #FLOPs(M) | #Params(M) |
|---|---|---|---|---|
| ResNet-50 | 95.28 | 99.67 | 1787.75 | 10.93 |
| ResNet-152 | 95.78 | 99.79 | 4390.87 | 22.32 |
Top-1,Top-5,#Params,#FLOPs
鹏城公交车司机异常行为数据集
下载resnet50和resnet152模型文件并存放到dcp/pretrain_models/路径下
代码运行的环境与依赖。如下所示:
| 类别 | 名称 | 版本 |
|---|---|---|
| os | ubuntu | 16.04 |
| python | 2.7 | |
| 深度学习框架 | pytorch | 0.4.0 |
| 深度学习框架 | tensorflow | 1.12.0 |
| pyhocon | 0.3.57 | |
| prettytable | 2.0.0 |
代码的输入与输出如下所示:
| 名称 | 说明 |
|---|---|
| 输入 | 剪枝后模型的保存路径 |
| 输入 | 数据集的路径 |
| 输入 | 预训练模型参数的路径 |
| 输入 | 实验ID |
| 输入 | 剪枝率 |
| 输出 | 剪枝并微调后的模型 |
在terminal下运行以下命令。
# export PYTHONPATH=/path/to/DCP/:$PYTHONPATH
# in my case
export PYTHONPATH=/userhome/DCP/:$PYTHONPATH
python DiscriminationAwareChannelPruning.py -c config.yaml -n 0