-
通过VPN连接校内网,通过跳板机登录服务器(*.60)并尝试搭建环境
-
由于服务器校外连接延迟较高,配置与本地差距不大,以及配置代理时没有root权限等问题,决定改用本地电脑学习
- 安装Ubuntu LTS 22.0403
-
配置代理,安装VSCode,安装git,安装pip
-
安装compressAI(pip会安装所有相关依赖,包括pytorch)
-
下载数据集(Kodak),将图片分至train和test(20~24)文件夹。
-
(H栋校园网连红花岭比A栋流畅许多)
-
使用mbt2018训练:
python3 examples/train.py -m mbt2018 -d ~/compressAI/Kodak --batch-size 16 -lr 1e-4 --save --cuda- 默认的epoch数为100。batch-size指一个训练批次中的样本数量,一个批次更新一次模型参数,抽样多个批次直至遍历训练集后完成一个epoch。
-
更新模型:
python3 -m compressai.utils.update_model --architecture mbt2018 checkpoint_best_loss.pth.tar -
测试:
python3 -m compressai.utils.eval_model checkpoint ~/compressAI/Kodak/test -a mbt2018 -p checkpoint_best_loss*.pth.tar结果:
Using trained model checkpoint_best_loss-7c8032a4-ans { "name": "mbt2018-mse", "description": "Inference (ans)", "results": { "psnr": [ 18.01904296875 ], "ms-ssim": [ 0.5968405246734619 ], "bpp": [ 0.3708170572916667 ], "encoding_time": [ 2.313329792022705 ], "decoding_time": [ 4.11532244682312 ] } } -
将batch-size改为19(数据集大小)后,模型的性能出现了明显的下降
Using trained model checkpoint_best_loss-6f928e71-ans { "name": "mbt2018-mse", "description": "Inference (ans)", "results": { "psnr": [ 15.485929489135742 ], "ms-ssim": [ 0.5198103129863739 ], "bpp": [ 1.2278483072916666 ], "encoding_time": [ 2.2816078662872314 ], "decoding_time": [ 4.085854768753052 ] } } -
参数解释(编码概念介绍):
- 学习custom model小节,试图理解train.py
- 整理内容