代码:https://github.com/megvii-research/RepLKNet
论文:https://arxiv.org/abs/2203.06717
这篇论文,我感觉就是RepVGG的续作
环境搭建:
1、Installation of MegEngine
pip3 install megengine -f https://megengine.org.cn/whl/mge.html --user
2、Installation of BaseCls
pip3 install basecls --user
结果如下(没有报错):
我主要是想测试下速度,但是直接报错:
ImportError: cannot import name ‘Tensor’ from ‘megengine’
3、分析问题
pip3 install megengine -f https://megengine.org.cn/whl/mge.html --user
我查看了在上述报错命令下的文件,可以看到__init__.py中是存在内容的。
pip3 install basecls --user
但是执行完这句后,上述路径下的__init__.py内容消失了,很奇怪。虽然说basecls是基于megengine的,但是却把__init__.py内容删除了?
这里我先尝试先复制在未安装basecls之前的__init__.py,然后安装完后basecls,再将内容粘贴进去,但是还是报错;再一次,我尝试先安装basecls,再安装megengine,这个也不行,毫无疑问,basecls基于megengine,这样肯定报错。
4、解决问题
安装完megengine后,进入basecls的git:
https://github.com/megvii-research/basecls
我们通过源代码安装,而不通过包安装。
处理imagenet数据集
valprep.sh处理下即可,查看了内容,里面是两种命令:mkdir和mv
模型测试
测试
./main_imagenet_test.py -f configs/replknet31_base_224_pt1k.py -w [weights] batch_size 64 data.val_path /path/to/imagenet/val
测试过程如下:
速度:120ms/张
算法总结
-
用深度可分离卷积(大),底层已优化;
-
带shortcut,对大kernel有帮助;
-
重参化;(repvgg)
-
下游任务吊;
-
小的feature map也可以用大卷积;