模型改进及期刊发表
1. 顶会审稿人论文写作技巧
1.1 阅读论文
发表论文的前提是大量阅读论文!!!文献阅读分为三个阶段,初期找方向,中期重点突破,后期广泛涉猎。
初期读论文需要逐字精读,方向不必严格限定,感兴趣论文涉及的论文链都可以去读。一篇论文用时一天,英文论文+中文分享,前期阅读论文数量30篇以上,可以提高学术英语阅读能力和专业术语积累。
中期读论文要重点精读,严格限定研究方向和方向涉及的论文链。重点论文时间控制在半天,泛泛论文是一小时,重点论文重复读+源码学习,论文阅读数最好为10篇以上。了解学习技术演进、学习方法创新和整理创新方法链。
后期少数精读+大量泛读,不限定方向,自己重点方向+涉猎方向。
重点论文两小时,泛泛论文半小时,跟随研究方向的最新发展,了解其他方向的大致进展,思考创新点引进嫁接。
以上只是顶会审稿人的阅读方式,但可能大多数人没有他们那样的天赋,我刚入门时一篇论文一天时间很难掌握,我通常花费一周时间,我会从CSDN、哔哩哔哩、知乎等平台去阅读大量的笔记,辅助自己去理解原文。并且我更喜欢去阅读别人的阅读笔记和讲解视频,我会从中学到很多自己看不出的知识点。 我在确定自己搞目标检测以后就精读了几乎所有经典的论文,每一篇都抽丝剥茧。在中期,有些论文我通常只泛读,只要了解一下这篇论文试图解决什么问题?这篇文章要验证一个什么科学假设?论文中提到的解决方案之关键是什么?这篇论文到底有什么贡献?当然这些都是英文的期刊,我在后期都是看中文的期刊,因为中文的期刊改进一般都比较简单,所以我一般只看摘要,并从他们的写作和改进方式中总结一些规律,通常几分钟就可以看完一篇中文期刊。当你一眼就看懂他们的改进方式时,说明你完全有能力自己发表论文了。
1.2 确定创新点
可以从以下四个方面确定自己论文的创新点:
- 数据集的改动:噪声、几何变换、遮挡、光照条件、场景依赖
- 模型的问题:模型体积、推理速度、收敛困难、非端到端、后处理优化
- 结构替换:引入transformer结构、注意力结构、金字塔结构
- 特定场景的应用:比如缺陷检测、水下检测、红外相机检测。
A+B+C/2.5法则
A:本研究方向的继承性创新点(自然演进)
B:其他方向的既有方法(嫁接到其他任务)
C:细节上的创新(数据增强/数据集/损失函数设计)
这个法则其实适用于各种水平的期刊,A和B我就不多说了,C这个细节可以体现在各种地方,甚至一个模块的感受野大小,模块的次序(串联的结构换成并行的结构),这个细节上的创新我最推荐的就是注意力模块,这个一旦改进涨点后论文很容易写。
1.3 实验
原则:1篇论文代码复现(至少读懂代码实现)»跑通多个项目demo
- 找到baseline论文的代码;
- 在baseline代码上实现期望功能的最小化实现;
- 逐步实现最终的功能代码,同时做实现验证各部分设计的效果。
有一个合适的baseline项目对实验太重要了,就拿yolov5来说,用起来简直不要太方便,但是如果你选择了一个冷门的项目,代码结构很烂,那你改起来就非常的麻烦。
1.4 论文写作
1.4.1 写作策略
选择2篇左右的范文,去分析论文结构(Introduction)、重点词句(Related Work)、语言风格(Method)、实验设计(Experiment)、绘图风格(Conclusion)和故事设计(References)。
这里最好有一个目标期刊,写作时可以引用一些这个期刊的论文,这样可以增加命中几率,写作的结构我们看几篇范文模仿着写就可以了。
1.4.2 论文写作技巧
(1)论文写作技巧——注意标题
- 用⼀句话概括你所做的工作
- 考虑搜索引擎的影响,包含关键词
- 可以新颖一些
(2)论文写作技巧——首页加图
(3)论文写作技巧—Introduction直接列贡献
- 不用介绍各个部分如何组织的;
- 直接说做出了哪些贡献;
- 标明贡献位置。
2. 目标检测算法如何改进,以YOLOv5为例
以YOLOv5算法为例,可以将一个算法分解成以下几个部分。
2.1 输入端
输入端其实就是数据增强方式的改进,yolov5采用的时Mosaic数据增强,我也见过改进Mosaic数据增强的小改进,他就是将4张图片的Moaic数据增强换成了8张图片的Mosaic数据增强,这种改进方式就是C类,细节上的创新。其实我们完全可以自己提出一个数据增强的方式,不论离线的还是在线的都可以算作一个改进点。
2.2 Backbone
Backbone的改进方式有很多,我们可以根据自己的场景移植各种经典任务的主干网络,也可以在主干中加入一些注意力模块,常见的一些主干如下,主干可以改的部分就很多了,我们可以在各种位置加入各种模块:
- CSPDarkNet系列
- HorNet系列
- ResNet系列
- RegNet系列
- ShuffleNet系列
- RepLKNet系列
- MobileNet系列
- EfficientNet系列
- ConvNext系列
- Ghost系列
- 重参数化系列
- RepVGG系列
- RepMLP系列
- ACNet系列
- RepConv系列
- OREPA系列
- Mobileone系列
- 自注意力Transformer系列
- MobileViT系列
- BoTNet-Transfomrer
- CoTNet-Transfomrer
- Swin-Transfomrer
- Swin-Transfomrer(v2)
- CMT Transformer
- PvT Transformer
- PvT Transformer(v2)
- XCiT Transformer
- LVViT Transformer
- Neighborhood-Attention-Transformer
- 其他 20种+ transformer系列
2.3 Neck
Neck的改进方式也有很多,我们可以从Neck的特征提取模块入手,甚至是上采样、下采样的方式、拼接的不同尺度的特征图、上下采样次数等。
常见的一些结构如下,我们也可以自己提出一个结构:
- PANet
- RepPAN
- BiFPN
- CSPPAN
- SlimNeck
- ELANPAN
- GSNeck
2.4 Head
Head端的改进也有很多,各种头都有其各自的特点,我们可以根据情况调整,到这里其实就可以发现,目标检测其实就想搭建积木一样简单。
- YOLOv4Head
- YOLOv5Head
- YOLOv6 Efficient decoupled head
- YOLOv7 IDetect Head
- YOLOv7 IAuxDetect Head
- PPYOLOE Efficient Task-aligned head with DFL and VFL
- YOLOX DetectX Head
- TOODHead
- 自适应空间特征融合 检测头ASFF Head
- YOLOR 隐式学习 Head
- EH-Head
- Dual Weighting Head
- FCOS Head
- Dynamic Head
2.5 损失函数
这里一般就是换一个更好用的损失函数,其实并不是新出的就一定好于之前的,看过蓝皮书之前的章节应该了解,好与不好是分情况的。
- CIoU
- DIoU
- GIoU
- EIoU
- SIoU
- alpha IOU
2.6 激活函数
自己提出激活函数是太难了,但是我们可以换,将原始的换成别的也是一种改进,有时候甚至可以不同的位置用不同的激活函数。
- ReLU
- SiLU
- PReLU
- ReLU6
2.7 训练策略
训练策略这里还是要有一些代码基础的,一般学习率调整策略改进比较简单,pytorch内置的就20种左右。
- 学习率调整策略
- 标签平滑
- 多尺度训练
2.8 后处理方式
后处理方式根据场景改进,这个我在之前也讲过概念了。
- NMS
- Merge-NMS
- Soft-NMS
2.9 正负样本匹配策略
改这个难度很大,但是改出来绝对是亮点。
- Multi Anchor策略
- YOLOv5 标签分配策略
- SimOTA 标签分配策略
- YOLOv7 标签分配策略
- Adaptive Training Sample Selection 标签分配策略
- FreeAnchor 标签分配策略
- AutoAssign 标签分配策略
- Task Alignment Learning 标签分配策略
- Dual Weighting 标签分配策略
- Probabilistic Anchor Assignment 锚分配策略
- 其他改进的标签分配策略
2.10 模型范式
- Anchorfree
- Anchorbase
2.11 总结
我们可以看到,其实YOLOv5算法改进的地方太多了,随便排列组合都能搞出各种结构,我们只要灵活运用各种模块,写个论文一点问题都没有。
3. CCF评级
3.1 CCF是什么?
CCF即中国计算机学会(China Computer Federation),前身是中国电子学会计算机专业委员会,成立于1962年。这是由从事计算机及相关科学技术领域的科研、教育、开发、生产、管理、应用和服务的个人及单位自愿结成、依法登记成立的全国性、学术性、非营利学术团体,是中国科学技术协会成员。
3.2 CCF A类、B类、C类指的是什么?
一般来说ABC类都是指的CCF所推荐的高水平会议期刊,也就是CCF-A、CCF-B、CCF-C。是计算机专业领域的权威人士对CCF的一些期刊会议的评级。一般来说ABC类都是指的CCF所推荐的高水平会议期刊,也就是CCF-A、CCF-B、CCF-C。是计算机专业领域的权威人士对CCF的一些期刊会议的评级。
3.3 ABC类划分和SCI分区有必然联系吗?
CCF是计算机领域的权威人士排的评级,而SCI分区是根据期刊影响因子来划分的。SCI的范围更广,涵盖学科更多,而CCF专注计算机领域。可以理解为评断的标准不同,但不管是SCI还是CCF的ABC类,含金量都是很高的。
3.4 CCF和SCI哪个更好?
SCI包含学科众多,除了计算机还有数理化医学等等理工学科,而CFF是专攻计算机领域的。如果是计算机学科的作者,发CCF的话肯定比发SCI在业内更受认可。甚至对于一些研究生而言,CCF可以作为很多大学(清华北航北邮西电等)复试的上机成绩,而且是直接用CCF成绩替代上机成绩,这相当于多了一次考试机会。
当然,并不是说SCI不好或者CCF比SCI更好的意思。有句话说得好:术业有专攻。总而言之,如果是计算机学科,建议多关注CCF的会议,发CCF,如果是其他理工学科,SCI期刊也是含金量很高的。
最后再说一句,其实CCF的评级标准也不是完全科学的,并不是C类就一定比B类差。这个评级也是业内许多大佬博弈而来的成果,每位大佬的意见想法也不可能绝对相同的。所以也不必要太纠结ABC类,相信适合自己的就是最好的。
4.计算机视觉顶级会议
计算机视觉领域世界三大顶级会议分别为 C V P R CVPR CVPR、 I C C V ICCV ICCV 和 E C C V ECCV ECCV 。
CVPR
CVPR,英文全称IEEE Conference on Computer Vision and Pattern Recognition,中文全称是国际计算机视觉与模式识别会议。这个会议是由IEEE主办的一年一度的全球学术性顶级会议,会议的主要内容是计算机视觉与模式识别技术,每年CVPR都会有一个固定的研讨主题。会议一般在每年六月举行,大部分情况下会议都在美国西部地区举办,也会在美国中部和东部地区之间循环举办。近年来每年有约1500名参加者,收录的论文数量一般300篇左右。CVPR一年一届,其收录率仅有25%不到,并且还是与全球各地学术论文竞争。这是一个一年一次的会议,举办地从来没有出过美国,可以说是计算机视觉领域全球最具影响力、内容最全面的顶级学术会议。
CVPR录用标准相当严格,通常会议整体的录取率不超过25%,而口头报告的论文比例更只占5%不到。其会议的组织方是一个循环的志愿群体,其成员遴选一般会在某次会议召开的三年前进行。CVPR的审稿过程中会议的审稿方与投稿方均不知道对方的信息。而且一篇论文经常需要由三位审稿者进行审读。最后再由会议的领域主席(area chair)决定是否接收。
所以在各类学术会议统计中,CVPR也被认为有着很强的影响力和很高的排名。自然,CVPR论文的级别就可想而知了,CVPR论文什么级别,可以说其级别相当于顶级SCI期刊论文级别同等甚至更高。
ICCV
ICCV,英文全称IEEE International Conference on Computer Vision,中文全称国际计算机视觉大会,这个会议也是由IEEE主办的全球最高级别学术会议,每两年在世界范围内召开一次,在业内具有极高的评价。ICCV论文录用率非常低,是三大会议中公认级别最高的。与CVPR不同的是,CVPR会议每年都在美国地区举办,而ICCV会议自1987年起至今每两年都会在全世界不同的国家举办会议,2005年ICCV是在中国北京举办的会议。
ECCV
ECCV,英文全称European Conference on Computer Vision,中文全称欧洲计算机视觉国际会议。ECCV每年的论文接受率为25-30%左右,每次会议在全球范围会收录论文300篇左右,收录论文的主要来源是来自于美国、欧洲等顶级实验室及研究所,中国大陆的收录论文数量在10-20篇之间。每两年召开一次,刚好与ICCV正好错开。
5. 2022重要学术会议指南
注∶本目录共包含122家单位推荐的765个会议,按照会议所属领域—学会代码进行排列。如同一会议同时所属多个学科领域,优先考虑最相关学科领域;如不同单位推荐了同一个会议,会议所属领域将优先考虑会议主办单位推荐的学科领域。本目录中,标注*的为单次会议,标注△的为2021年已收录但延期会议,标注◇的为非推荐单位主办会议。
4.1 数理科学领域
4.2 化学科学领域
4.3 生命科学领域
4.4 地球科学领域
4.5 工程材料科学领域
4.6 信息科学领域
4.7 管理科学领域
4.8 医学科学领域
参考文献
https://blog.csdn.net/weixin_33037051/article/details/113008009https://blog.csdn.net/weixin_43845922/article/details/127712892










