1、调参
主要调节学习率、不同的loss的权重,可以手动调节,或者采用HPO
2、训练epoch加长
一般训的时间越长,结果更好。尽量加到模型的上界为止。
3、loss
尝试其他的loss、可能会有涨点
4、pretrain
一般更好的pretrain模型的表征能力好,可以训练更好的结果。如使用imagenet、coco等公开数据集pretrain
5、蒸馏
通过大模型蒸馏小模型等方式,提升小模型的能力
6、调整模型结构
可以在原始基础上修改,分析模型的算力分布,调整算力,尝试不同结构
7、backbone
更好的backbone也许可以更好
8、nas
对某任务搜索模型结构
9、数据
增加同类的数据、清洗脏数据
10、分析badcase
通过badcase定位问题,找错错误最多的case
11、optimizer
sgd、sgd_agc、adam等方法尝试
12、部署友好技巧(不改变模型容量)
ACNet中的ACBlock
参考:https://zhuanlan.zhihu.com/p/131282789
其他的如蒸馏、半监督等、loss