深度学习纯小白如何从零开始写第一篇论文?看完这篇豁然开朗!

📢前言

上个月小贾消失了一段时间,原因就是。。。

写论文去啦!!!

先拿我导的认可镇个楼:

本篇文章将分享我个人从迷茫地找方向苦苦做了48次实验才高效涨点写论文到头秃等等一系列真实经历,希望大家避免踩坑。

(其实论文交稿有大半个月了,本来准备论文中了之后再总结,但是外审时间比我想象中长,我怕自己忘记一些细节,所以先记录着~)

本文纯手敲上万字,全是干货,建议先点【收藏】再慢慢阅读噢~

PS:

(1)本篇适用于深度学习/计算机视觉/目标检测领域。

(2)本篇只是我个人经验分享,适合纯小白看。手握多篇paper或者sci大牛就不要浪费时间了,当然,非常欢迎有经验的大佬指正不足或者评论区分享经验,我们将不胜感激❤️

(3)本篇文章截图的一些论文都是我在学习过程中读到非常优秀的佳作,仅供学习分享使用,如有侵权请联系我立删。

来吧,上车!

目录

📢前言

🚀一、如何找论文方向?

☀️1.1 跟导师方向

☀️1.2 自己选择方向

☀️1.3 阅读相关论文

👑(1)顶会

👑(2)顶刊

👑(3)中文核心

🚀二、如何做实验? 

🌻2.1 实验平台

🌻2.2 数据集处理

🌻2.3 Backbone(特征提取)的替换

🌻2.4 Neck(特征融合)的更换

🌻2.5 添加注意力机制

🎄(1)增加注意力机制不增反降问题

🎄(2)注意力机制的选取问题

🎄(3)注意力机制的位置问题

🌲1.首先加在Backbone部分

🌲2.SPPF(池化层)前后问题 

🌲3.如果要加在Neck部分 

🎄(4)注意力机制数量问题 

🌻2.6 改进IoU

🌻2.7 改进NMS和激活函数

🌻2.8 优化参数

🚀三、如何写论文? 

⭐3.1 Abstract—摘要

⭐3.2 Introduction—引言

⭐3.3 Related Work—相关工作

⭐3.4 Method—方法

⭐3.5 Experiments—实验

✨(1)实验设置(Experimental Setting/Experimental  Setup/Implementation details)

✨(2)对比实验(Comprason with previous method/ Comprason with other method/ Comprason with prior work)

✨(3)消融实验(Ablation Study)

✨(4)可视化分析

✨实验美化工具

⭐3.6 Conclusion—结论

写在后面

🚀一、如何找论文方向?

找到一个有价值的研究方向,这篇论文就已经成功了一半。

☀️1.1 跟导师方向

首先要和导师沟通,了解导师目前有什么项目或者未来几年的研究方向是什么?充分考虑导师同一方向的好处在于你之后的研究可以得到一定的有价值指导,如果方向不一样,导师最后也只能给你论文格式上的指导或者其他的技巧了。

所以建议大家先面对面和导师沟通一波,再确定自己的论文方向。


☀️1.2 自己选择方向

如果导师让你自己选方向(放养型)或者导师的方向你不感兴趣,那么就要自己找方向了。

那么如何自己找呢?

就拿我自己的CV领域中的目标检测举个栗子。

按照现在流行的写法,首先要提出一个具体场景,然后针对该场景解决实际问题。

场景又多又杂,我刚开始也是无从下手,故拜托师兄:

嗯嗯。。。

想想。。。

然后就没有后续了。 。。

后来我自己去看各种论文,慢慢找到了idea!

我们先看看下面几篇:

雾霾天气下行人车辆检测)
城市道路场景下货车检测
田间复杂环境下黄花菜识别)
红外场景下车辆检测)

对于场景的选择:

  •  不要太烂大街,可以选择偏冷门的,但一定要具有实际意义。

对于检测对象的选择(数据集):

  • 建议使用公共数据集(一是认可度高,二是方便进行的对比实验,三是容易获取) 。

PS: 

有一个小思路,那就是根据自己学院特色来写。比如xx农业大学的就可以做花果蔬菜的检测,xx交通大学的可以做车辆、交通指示牌的检测,xx海洋大学可以做海底生物检测,xx医科大学可以做医学图像的识别(更多的是分割)等等。

总结一下就是:

自己感兴趣+有实际意义+资源容易获取+没那么烂大街


☀️1.3 阅读相关论文

确定了大致方向之后,我们就要重点看对应领域的论文。看得多了,你就能发现大家都在研究什么,用了哪些涨点的tricks,有哪些需要继续研究的地方,再根据你的数据集制定研究方案。

分享一些论文查找的链接:

👑(1)顶会

序号简称全称简介网址
1 ICCV  IEEE International Conference on Computer Vision国际计算机视觉大会,由IEEE主办。是计算机视觉三大会议最高级别Accueil - International Conference on Computer Vision - October 2-6, 2023 - Paris - France - ICCV2023 (thecvf.com)
2

ECCV

European Conference on Computer Vision欧洲计算机视觉国际会议。是计算机视觉三大会议之一,每两年召开一次,与ICCV正好错开。首页 |ECCV 2022 (ecva.net)
3

CVPR

IEEE Conference on Computer Vision and Pattern RecognitionIEEE国际计算机视觉与模式识别会议。该会议一般在6月举行,举办地是美国,是一个一年一次的会议。The Computer Vision Foundation – A non-profit organization that fosters and supports research in all aspects of computer vision (thecvf.com)

👑(2)顶刊

序号简称全称出版社网址
1TPAMIPattern Analysis and Machine Intelligence, IEEE Transactions on    IEEE IEEEIEEE Transactions on Pattern Analysis and Machine Intelligence / IEEE Xplore
2TIPImage Processing, IEEE Transactions onIEEEIEEE Transactions on Image Processing / IEEE Xplore
3IJCVInternational Journal of Computer VisionSpringerInternational Journal of Computer Vision / Home
4TMMMultimedia, IEEE Transactions onIEEEIEEE Transactions on Multimedia / IEEE Xplore
5PRPattern RecognitionrElseviePattern Recognition - Journal - Elsevier
6TCSVTTransactions on Circuits and Systems for Video TechnologyIEEEIEEE Transactions on Circuits and Systems for Video Technology

👑(3)中文核心

序号名称网址
1计算机学报http://cjc.ict.ac.cn/
2软件学报http://www.jos.org.cn/jos/home
3自动化学报http://www.aas.net.cn/
4计算机研究与发展https://crad.ict.ac.cn/CN/1000-1239/home.shtml
5计算机辅助设计与图形学报https://www.jcad.cn/jcadcms/show.action?code=publish_402880124b351f94014b3546c556000e&siteid=100000
6中国图像图形学报http://www.cjig.cn/jig/ch/index.aspx

更多可以看:2022年最新计算机视觉领域论文查找链接总结—最近五年,直链论文,建议收藏

读论文的时候要注意,不是非要每篇论文都要将内容都阅读完,这样太浪费时间了。重点看一看目录、摘要还有实验部分就可以快速了解到这篇论文主要干了什么?还有什么可以研究的方向?这样你一天能看非常多的论文,看得多了,自然就会知道自己喜欢什么方向,该怎么去做下一步研究,别着急~❤️

PS:

除了顶会顶刊,我们还可以重点看看硕博的毕业论文,一般在结论之后都有展望,这些展望有时候就是现成的创新点和研究方向。

🚀二、如何做实验? 

不知道大家一开始有没有一种这样的感觉:

CSDN上有很多大佬:迪菲赫尔曼、芒果汁没有芒果、魔鬼面具、一休哥※、加勒比海带66等等(感谢我的网络导师们!❤️),提供了很多改进方法,那么我随便挑几个不错的组合一下不就行了?so easy!(* ̄▽ ̄*)ブ

一开始我也是这么想的,挑几个最新的,非常自信地将思路跟我导师阐述。 ̄︶ ̄

我导师直接一句话:“你实验了吗?出结果了再汇报。” ̄. ̄

我又马不停蹄回去做实验。ㄟ( ▔, ▔ )ㄏ

搭建完模型,没报错,OK!能跑通,nice!接下来就是见证奇迹的时刻啦!<( ̄︶ ̄)↗

(当时还很兴奋地跟同门炫耀)

然后。。。很快被打脸——不增反降!!!┗|`O′|┛ 嗷~~w(Д)w

我就想,一定是加的不够多,不够新。 ̄へ ̄

于是我就使劲加,玩命加,加加加!(▼へ▼メ) 

结果就是越来越低。。。┗( T﹏T )┛

后来突然想到一个问题:

一个浑身戴着金银首饰、浓妆艳抹、穿得雍容华贵的女生,远远不如白T+牛仔裤,扎着马尾素面朝天的少女更得人心。

(图片源自《甄嬛传》,如有侵权立删)

不停地加改进方法反而会适得其反。

我开始一边实验一边摸索规律,总共进行了48次实验,才终于得到我想要的涨点效果!\^o^/

接下来分享我实验中踩坑经历~


🌻2.1 实验平台

如果实验室没有足够强的设备,建议大家还是租服务器训练。

不要用自己的笔记本去硬扛,耗时间而且效果不好,出现意外又一切重来(别问我咋知道的)。

👍租服务器的方法看我这篇就好→手把手教你使用AutoDL云服务器训练yolov5模型-CSDN博客

这里不再过多阐述~


🌻2.2 数据集处理

现在很多论文都用到这点,也是我导师提出让我加的创新点。

因为我们做的是特殊的场景,一些公共数据集并不是所有图片都符合,另外还有一部分图像质量不高,所以要做一定的筛选。筛选一波过后数据集的数量可能就不是很够量了,那么就可以通过数据增强来扩充样本。

👍数据增强方法可以看我的这篇→ YOLO数据集实现数据增强的方法(裁剪、平移 、旋转、改变亮度、加噪声等)

另外,还可以选取多个数据集,将模型在每个数据集上都跑一遍,这样也可以成为一组对比实验,更有说服力。


🌻2.3 Backbone(特征提取)的替换

主干网络是模型的核心,影响着模型的速度和精度。

目前主干网络可以分为三类:

  • 传统CNN:VGG-16、ResNet-50、DenseNet等等
  • 轻量级CNN:MobileNet、EfficientNet、ShuffleNet、GhostNet等等
  • ViT系列:Swin Transformer、Repvit、MobileViT等等

传统的CNN网络精度高但参数量巨大,计算慢,如果场景对精度要求非常高且不用管速度可以使用;

轻量级CNN参数量小,速度提升非常多,但是精度下降也很多;

ViT系列参数量也很大,建议大家如果选择ViT系列作为主干网络选择轻量级的,如MobileViT。

具体怎么选取,要根据自己实际场景和数据集的需要。 

总的来说,对于现在的趋势,主干网络的选取规则:

使主干网络在提取特征时能够获取更多的有用信息,尽量保持精度的前提下,避免过度地使用轻量化骨干网络而导致精度的损失。

👍本人主干网络替换系列:

YOLOv5改进系列(5)——替换主干网络之 MobileNetV3

YOLOv5改进系列(6)——替换主干网络之 ShuffleNetV2

YOLOv5改进系列(9)——替换主干网络之EfficientNetv2

​​​​​​YOLOv5改进系列(10)——替换主干网络之GhostNet

YOLOv5改进系列(19)——替换主干网络之Swin TransformerV1(参数量更小的ViT模型)

YOLOv5改进系列(21)——替换主干网络之RepViT(清华 ICCV 2023|最新开源移动端ViT)

YOLOv5改进系列(22)——替换主干网络之MobileViTv1(一种轻量级的、通用的移动设备 ViT)

YOLOv5改进系列(23)——替换主干网络之MobileViTv2(移动视觉 Transformer 的高效可分离自注意力机制)

YOLOv5改进系列(24)——替换主干网络之MobileViTv3(移动端轻量化网络的进一步升级)


🌻2.4 Neck(特征融合)的更换

在YOLO中,Neck端主要负责融合不同层级的特征图,并提供更高层次的语义信息

在YOLOv5s原模型中使用经典的FPN+PAN(自上而下和自下而上相结合)的特征金字塔网络,然而,这种网络会削弱了非相邻提取层的融合效果,导致特征信息的丢失或退化。

因此在实验时我们常常会更换Neck端。常用的有:

  • BiFPN:加权双向特征金字塔。加强特征图的底层信息,使不同尺度的特征图进行信息融合,从而加强特征信息。
  • AFPN:渐进特征金字塔。以渐进的方式将低层特征与高层特征的语义信息和详细信息直接相互融合,避免了多级传输中的信息丢失或退化,提高特征尺度的不变性。适用于提高小目标的漏检率
  • CARAFE:轻量级通用上采样算子。具有感受野大、内容感知、轻量级、计算速度快的特点。适用于移动设备检测任务
  • EVC:中心化特征金字塔。关注不同层之间的特征交互,还考虑了同一层内的特征调节。适用于密集预测任务
  • 增加小目标层:参考多尺度特征图的特征信息,同时兼顾了较强的语义特征和位置特征。适用于小目标较多的数据集

本人Neck端更换系列:

YOLOv5改进系列(12)——更换Neck之BiFPN

YOLOv5改进系列(15)——增加小目标检测层

YOLOv5改进系列(18)——更换Neck之AFPN(全新渐进特征金字塔|超越PAFPN|实测涨点)


🌻2.5 添加注意力机制

注意力机制是块宝,现在绝大部分论文里改进模型都添加注意力机制。

不了解注意力机制的可以先看看这篇→【Transformer系列(2)】注意力机制、自注意力机制、多头注意力机制、通道注意力机制、空间注意力机制超详细讲解_注意力机制和自注意力机制的区别

BUT,

“增加注意力机制一定涨点吗?”

“那么多注意力机制我该选哪个?”

“注意力机制要添加到哪个位置? ”

“注意力机制是加的越多越好吗?”

这些是我文章评论区最常见的问题,今天谈谈我个人理解(不对请指正)

🎄(1)增加注意力机制不增反降问题

YOLO算法旨在通过全局特征来预测边界框和分类结果,而不是依赖于局部特征。再一个,YOLO算法本身已经足够强可以应对目标检测任务。

注意力机制是让模型更加关注一张图像中某个区域更细节特征,所以对于YOLO算法来说,可能还不如不加。但是对于一些其他任务,例如图像分割或者更细粒度的分类问题,注意力机制可能会表现出更好的效果。

另外,引入注意力机制也会增加模型参数量,可能会导致训练和推理过程变得更加慢。

除此之外,加入注意力机制不增反降还有可能是以下原因:

(1)数据集过小(300张以内的就不要加了)

(2)添加位置不对

(3)数据集和选用的注意力机制相克(比如小目标不适用加CBAM)

(4)过拟合和欠拟合


🎄(2)注意力机制的选取问题

这个问题就像我每次吃自助一样,五花八门的美味盛宴,光是看也看不出那个最好吃,得尝一尝才知道。有可能今天想吃个甜口,觉得小蛋糕最好吃,但明天可能就想吃炸串红烧肉了,后天可能觉得海鲜才是自助之王。。。一抬头,到吃午饭点了(★ ω ★)。

 (咱先继续唠,怕我回来灵感没了,废寝忘食ing。。。)

所以总结就是,注意力机制没有谁好谁坏,只是看哪个更适合你自己的数据集,你需要亲自尝试。

常见注意力机制:

  • SE:通道维度增加注意力机制,关键操作是squeeze和excitation。
  • CBAM:通道注意力机制(channel)和 空间注意力机制(spatial)组成。
  • CA:通过精确的位置信息对通道关系和长期依赖性进行编码,具体操作分为Coordinate信息嵌入和Coordinate Attention生成 2个步骤。
  • ECA:通道注意力机制的一种实现形式,是基于SE的扩展。
  • SimAM:一种无参数注意力模块,只使用了一个全局池化层和几个全连接层。
  • SOCA:可训练二阶注意力模块,通过使用二阶特征统计来自适应地重新调整信道方向特征,以获得更具鉴别性的表示。
  • EMA:高效多尺度注意力模块,通过新的跨空间学习方法融合两个并行子网络的输出特征图,设计了一个多尺度并行子网络来建立短和长依赖关系。

🎄​​​​​​​(3)注意力机制的位置问题
🌲1.首先加在Backbone部分

也就是要加在特征提取那里。因为Neck端的作用是对特征进行融合,Head是基于特征进行预测。在这两个阶段特征已经提取完毕,如果我们这个图像本身提取的特征就不太好,那么在这后面两个阶段再努力也始终有一定的局限。基础不牢,地动山摇。

所以,注意力机制通常加在Backbone部分,这样才能提取到更好的特征,提升上限。

🌲2.SPPF(池化层)前后问题 

像我最初的几篇,SE、CBAM、ECA等,是加在SPPF上一层的。

首先是作者实验(用ResNet)源码就是放在这个位置上的。

再一个就拿CBAM举例,它包括空间和通道注意力,这两个主要都是利用全局平均池化将feature map的特征抽象到一系列点注意力权重,然后建立这些权重的联系并附加到原空间或通道特征上。如果加在后面,就会引起过拟合了。

其实这些通道注意力,都不适合加在靠近输入端或者靠近head层的地方,这样反而会降点,最近研究ViT,发现self-attention也差不多。

空间注意力放在网络前面,通道注意力放在后面。

🌲3.如果要加在Neck部分 

Neck可以根据数据集的特征加在大中小三层,具体看你的更需要注意力机制关注哪个层特征。

emmm,你们看晕了没?

其实我觉得吧,这些理论知识是我个人理解+大佬经验分享整合的,大家了解个大概就行,它不是百分百正确的定理,有可能同一个模块别人加这个位置好使,你加就降点。所以啊,还是需要大家自己做实验滴~(这就是为啥我实验了48次orz)


🎄(4)注意力机制数量问题 

通过上面安小鸟的例子,大家应该也明白,这玩意儿再好,也不是越多越好。

先不说随意加反而影响全局效果,别忘了,注意力机制也是有参数的,引进过多会导致模型复杂、计算量大。

另外,我还真有一个朋友这么试了,审核人的意见是:存在技术方案以复杂结构实现简单功能、采用常规或简单特征进行组合或堆叠等明显不符合技术改进常理的行为”。


注意力机制这块真的特有意思,等我以后研究研究有啥新发现了再来补充。\('ω')/ 

👍本人添加注意力机制系列:

YOLOv5改进系列(1)——添加SE注意力机制

YOLOv5改进系列(2)——添加CBAM注意力机制

YOLOv5改进系列(3)——添加CA注意力机制

YOLOv5改进系列(4)——添加ECA注意力机制

YOLOv5改进系列(7)——添加SimAM注意力机制

YOLOv5改进系列(16)——添加EMA注意力机制(ICASSP2023|实测涨点)


🌻2.6 改进IoU

大家先看看IoU介绍,我先去吃个饭~

👍IoU详解→损失函数:IoU、GIoU、DIoU、CIoU、EIoU、alpha IoU、SIoU、WIoU超详细精讲及Pytorch实现

其实每个的特点文章介绍的很清楚了,我也没有做过多实验,总结一下,还是亲自试一试

👍本人改进IoU系列: 

YOLOv5改进系列(11)——添加损失函数之EIoU、AlphaIoU、SIoU、WIoU

YOLOv5改进系列(17)——更换IoU之MPDIoU(ELSEVIER 2023|超越WIoU、EIoU等|实测涨点)


🌻2.7 改进NMS和激活函数

因为我的实验没涉及这两块,所以这里先留个坑,以后有经验了再来填。

想尝试的同学可以看我之前教程:

👍本人改进激活函数教程:

YOLOv5改进系列(13)——更换激活函数之SiLU,ReLU,ELU,Hardswish,Mish,Softplus,AconC系列等

👍本人改进NMS教程:

YOLOv5改进系列(14)——更换NMS(非极大抑制)之 DIoU-NMS、CIoU-NMS、EIoU-NMS、GIoU-NMS 、SIoU-NMS、Soft-NMS


🌻2.8 优化参数

作为一个炼丹师,我本来想尝试一下调参,无奈高估了自己。

这本来就是玄学中的玄学,干嘛为难我这个小白?!o(TヘTo)

哈哈,开玩笑,其实到这时我的实验已经成了,于是调参这块没有过多研究,和大家分享一些大佬们的文章吧,希望有帮助呀~

YOLOv8超参数调优教程! 使用Ray Tune进行高效的超参数调优!_迪菲赫尔曼的博客-CSDN博客

深度学习调参技巧总结_RyanC3的博客-CSDN博客


总结一下,没有trick可以绝对涨点,实验必须根据自己的数据集亲自做,不增反降是常态,每一次尝试总结加进一步摸索,慢慢地就有经验了,祝大家都能高效涨点!❤️

🚀三、如何写论文? 

很多时候实验好不容易做出来了,但是论文却迟迟无法下笔,说的是不是你?

反正不是我(傲娇脸.jpg)

也许是我一直做论文带读博主的原因,刚开始写论文的时候,要写哪几部分?每部分怎么写?整个框架清晰地出现在我脑海里。网上大部分论文带读只讲网络结构,省略摘要、引言等等,后来想想我立志要做全网最详细的博主,所以每次全篇逐段讲解。轮到我自己写的时候,就自然而然有思路了。

在学习的道路上,每一份付出都有回报,也许现在看不到任何成果,但在你今后的人生里,它会像一个礼物一样突然出现,也许这就是努力的意义吧!❤️

鸡汤结束,我们言归正传~


⭐3.1 Abstract—摘要

论文摘要就是整篇文章和浓缩预览,它被排放在论文的首要位置,也是审稿人首先看的地方。

公式:研究的目的和重要性+研究的方法+得到的研究结果+结论

⚡️At:

  1. 摘要是一整段
  2. 不要在摘要里出现感情色彩的评价
  3. 一般在200-300字左右,具体看期刊

3.2 Introduction—引言

引言的作用就是系统性地向读者介绍该篇论文的研究背景、创新点、采用理论及方法等,核心是吸引读者阅读,通常是对于全文内容的高度概括!

公式:背景和需求+介绍之前研究方法+ 前人研究(并指出不足)+本文的贡献

① 背景和需求:先写为什么要研究这个领域,介绍人们对大的领域、行业、学科等背景问题有何期待,说明实现这些期待对背景问题的重要性。通常采用的是一般现在时、现在完成时现在进行时

② 介绍之前研究方法:其次介绍这个领域的常见研究方法,并且一步步缩小这个领域的范围一直到自己的那个层次。具体文献综述部分通常采用一般过去时,其他高度概括部分或常识介绍部分通常采用一般现在时或现在完成时

③ 前人研究(并指出不足):第三就是写之前大佬在该领域怎么研究的也就是研究现状,并且说明存在什么问题没有解决(自己解决了)。通常采用的是一般过去时或现在完成时

④ 本文的贡献:最后引出自己的东西,说明自己解决了什么问题作出了什么贡献,论文余下部分是如何安排的。通常采用的是一般现在时。

可以想象一个镜头,由远慢慢拉近到你眼前的感觉。 

 ⚡️At:

  1. 避免背景介绍遗漏,提到的关键信息都要有说明,详略得当
  2. 避免段与段之间逻辑混乱
  3. 引用文献要是最新的

⭐3.3 Related Work—相关工作

相关工作时详细地写和自己最相关的研究,但不是一味地说之前的工作做了什么,主要说清楚我们提出的算法和之前算法有何不同,为接下来讲故事做铺垫。

就那最新带读的MobileViT v3 举栗子:

它就是先将ViT,再介绍CNN,最后介绍近来两者混合的一些研究。

 ⚡️At:

  1. 不要罗列论文,而是从一个整体上介绍其思想,可以展开这些论文思路上的差异。
  2. 可以依据相关性,递进式分类地介绍相关工作,或者总分形式。对于每类工作都要点出其主要共性问题,以及本文所提出的对应解决方案。
  3. 前期的调研要充分,并且做的过程中也要关注最新的文章,做到一半发现idea撞车了就比较麻烦了。
  4. 如果是技术类的相关工作,一定要体现为了把该技术应用到本领域所做出的改进,而不能是仅仅将该技术迁移到本领域,具体看你咋讲故事了。

3.4 Method—方法

(不同方向的Method写法不同,这里仅对深度学习的论文写作介绍)

Method这一部分是记录你的研究基础和研究方法,就是非常详细的介绍你的创新点。一般采用总—分形式:先画出你搭建的模型,然后总体介绍,接下来再逐一介绍创新点。

总:单独一段介绍你的搭建模型,用到了哪些方法,概括地介绍就行。然后画出模型的总体网络结构图(我导是建议再加上方法流程图)。

分:接下来就是分小节逐一、详细地介绍每个方法(创新点)。首先介绍前置的知识、算法结构、流程(可以用伪代码表示)、公式、网络结构图、为什么这么设计等等,没有绝对的格式,最终的目的是为了说清楚算法的设计思路,让别人能够看懂。

⚡️At:

  1. 方法介绍大家可以先去读原论文(了解前置知识),然后扒源代码(了解网络结构和算法流程),最后自己就很清楚了。
  2. 不知道该怎么总结可以看看同样使用这个方法的论文(搜关键字就能找到,只看这一块就行),学学大佬是如何介绍的。
  3. 写法上可以去网上找现成的英文模板,表达更为高级。

⭐3.5 Experiments—实验

(不同方向的Experiments写法不同,这里仅对深度学习的论文写作介绍)

实验这一块用我导的话来说就是:“其实你啥都做好了,只要把它们描述出来就行。”

在实验写作之前,先确保我们基本上把论文的实验数据全都整理出来了,这样我们就可以根据现有的实验结果,直接来描述实验结果就行~

实验基本三个部分:实验设置(Experimental Setting/Experimental  Setup/Implementation details对比实验(Comprason with previous method/ Comprason with other method/ Comprason with prior work消融实验(Ablation Study

(1)实验设置(Experimental Setting/Experimental  Setup/Implementation details
  1. 实验配置
  2. 实验参数
  3. 实验数据集

(2)对比实验(Comprason with previous method/ Comprason with other method/ Comprason with prior work

按任务分:

  • 图像分类(Image Classification
  • 目标检测(Object Detection
  • 实例分割(Semantic Segmentation

需要做哪些对比?(Comparison with...

1.不同模型的对比

以YOLOv8举栗子:

首先和同YOLO系列对比:YOLOv5/v6/v7(v4以下就没必要了),然后和其他深度学习模型RCNN系列、SSD、RT-DETR等等(YOLOv8 的代码库目前是可以训练 YOLOv5/v6/v8和 RT-DETR 的,直接换个 yaml 就训练了),以及两三个前人的实验。

放几篇优秀论文大家可以感受一下:

(对比不同算法)
(引用前人文献)
(对比多个尺寸)

2.方法对比

这部分要和前面Method方法做一个呼应,目的就是证明你选择的方法是有效的。

举个栗子,你选择了CA注意力机制,就可以和CBAM、SE、SOCA等等做个对比。

还是看几篇优秀论文:

⚡️At: 

  1. 个人感觉这部分就是夸,各种吹你的方法如何好、如何创新等等
  2. 如果你的论文的结果是state-of-the-art,那么你就可以把标题取为 Comprason with state-of-the-art

(3)消融实验(Ablation Study

这部分是对你改进的各个模块进行具体的分析,目的是验证每个模块的有效性。

在深度学习中,特别是复杂的深度神经网络的背景下,通常采用“消融实验”来描述去除网络的某些部分的过程,以便更好地理解网络的行为。

举个栗子:

为了提升网络的性能,在网络架构上加了模块AB两个方法,是这篇文章的创新点。
比如说这篇文章有3个亮点,消融实验就负责告诉你,

  • 实验1:我只加A结果如何;
  • 实验2:只加B结果如何;
  • 实验3:AB都加了又如何。

看3个实验的效果,然后结果可能是,实验1和实验2的结果都不如实验3,那么说明AB都是有用的。

然而,也有可能你会发现实验1的结果和实验3一样,甚至更好。这就说明你搭建的模型是有问题的,模块B其实并没有起到作用,提升只来自于模块A

话不多说,直接看论文吧:


(4)可视化分析

为了更直观的说明提升效果,我们可以直接放上可视化对比图


✨实验美化工具

在实验中,我们还可以通过一些工具展示实验效果,这样论文也显得更高级。

👍比如注意力机制对比可以加上热力图→[论文必备]梯度加权的类激活热力图(Grad-CAM)可视化以及踩坑经历分享

👍比如损失函数可以通过Origin来画→ 

[论文必备]最强科研绘图分析工具Origin(1)——安装教程

[论文必备]最强科研绘图分析工具Origin(2)——简单使用教程


⭐3.6 Conclusion—结论

结论这块就比较好写了,它是对整个研究结果的概括总结,对全部小结果的定性。结论需要突出研究的“亮点”以及“指明方向”。

具体有以下几点:

  1. 研究结果说明了什么问题及所揭示的原理和规律(理论价值)。
  2. 在实际应用上的意义和作用(实用价值)。
  3. 本研究的遗留问题及建议和展望。(这点应是必不可少的)

好啦,基本上到这里一篇论文就大致搞定啦,让我们完结,撒花!✿✿ヽ(°▽°)ノ✿ 


请添加图片描述请添加图片描述请添加图片描述写在后面:

(1)再次说明,本文仅为小白分享经验,适合纯小白看,也欢迎大佬指出不足以及评论区分享经验,阿里嘎多!❤️

(2)本文会持续更新审稿过程中的经验,也欢迎大家分享呀!❤️

最后,祝大家多发paper!天天开心!❤️

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/98964.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

R语言通过接口获取网上数据平台的免费数据

大家好&#xff0c;我是带我去滑雪&#xff01; 作为一名统计学专业的学生&#xff0c;时常和数据打交道&#xff0c;我深知数据的重要性。数据是实证研究的重要基础&#xff0c;每当在完成一篇科研论文中的实证研究部分时&#xff0c;我都能深刻体会实证研究最复杂、最耗时的工…

【广州华锐互动】VR线上播控管理系统让虚拟现实教学效果更加显著

随着科技的不断发展&#xff0c;虚拟现实(VR)技术已经逐渐走进我们的生活&#xff0c;尤其在教育领域&#xff0c;VR技术的应用为学生提供了全新的学习体验。 广州华锐互动作为一家成立16年的老牌VR公司&#xff0c;开发了不少VR教学课件&#xff0c;包括物理、化学、农林、土木…

【Linux】 grep命令使用

grep (global regular expression) 命令用于查找文件里符合条件的字符串或正则表达式。 grep命令 -Linux手册页 语法 grep [选项] pattern [files] ls命令常用选项及作用 执行令 grep --help 执行命令结果 参数 -i&#xff1a;忽略大小写进行匹配。-v&#xff1a;反…

分类预测 | MATLAB实现KOA-CNN-BiLSTM开普勒算法优化卷积双向长短期记忆神经网络数据分类预测

分类预测 | MATLAB实现KOA-CNN-BiLSTM开普勒算法优化卷积双向长短期记忆神经网络数据分类预测 目录 分类预测 | MATLAB实现KOA-CNN-BiLSTM开普勒算法优化卷积双向长短期记忆神经网络数据分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.MATLAB实现KOA-CNN-BiLST…

剑指offer——JZ68 二叉搜索树的最近公共祖先 解题思路与具体代码【C++】

一、题目描述与要求 二叉搜索树的最近公共祖先_牛客题霸_牛客网 (nowcoder.com) 题目描述 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 1.对于该题的最近的公共祖先定义:对于有根树T的两个节点p、q&#xff0c;最近公共祖先LCA(T,p,q)表示一个节点x&#…

你知道AI智能知识库最大的用处在哪里吗?

在当今信息爆炸的时代&#xff0c;获取准确、及时的知识变得至关重要&#xff0c;而AI智能知识库的出现正好可以很好地解决这些问题。AI智能知识库的最大用处是在于帮助人们快速、高效地获取所需的知识和信息。它不仅可以减少人们在查找和筛选信息上的时间和精力投入&#xff0…

Arm64体系架构-MPIDR_EL1寄存器

背景 在Arm64多核处理器中, 各核间的关系可能不同. 比如1个16 core的cpu, 每4个core划分为1个cluster,共享L2 cache. 当我们需要从core 0将任务调度出来时,如果优先选择core 1~3, 那么性能明显时优于其他core的. 那么操作系统怎么知道core之间这样的拓扑信息呢? Arm提供了MPID…

Selenium+Phantomjs动态获取CSDN下载资源信息和评论

源代码 # codingutf-8 from selenium import webdriver from selenium.webdriver.common.keys import Keys import selenium.webdriver.support.ui as ui from selenium.webdriver.common.action_chains import ActionChains import time import re…

FPGA设计时序约束三、设置时钟组set_clock_groups

目录 一、背景 二、时钟间关系 2.1 时钟关系分类 2.2 时钟关系查看 三、异步时钟组 3.1 优先级 3.2 使用格式 3.3 asynchronous和exclusive 3.4 结果示例 四、参考资料 一、背景 Vivado中时序分析工具默认会分析设计中所有时钟相关的时序路径&#xff0c;除非时序约束…

Games104现代游戏引擎笔记 基础ai

游戏AI navigation(导航系统) 地图的表达形式&#xff0c; 寻路&#xff0c;路径优化 Map representation&#xff1a; 1.可行走区域&#xff08;物理碰撞&#xff0c;跳跃距离&#xff0c;攀爬高度&#xff09; 2.表达形式&#xff1a;waypoint networks(路点网络图)&#…

交互式ICP

以下程序演示如何编写交互式ICP查看器。该程序将加载点云并对其进行刚性变换。之后&#xff0c;使用ICP算法将变换后的点云与原来的点云对齐。每次用户按下“空格”&#xff0c;进行ICP迭代&#xff0c;刷新可视化界面。 代码实现 资源准备 monkey.ply #include <string&…

I/O多路复用【Linux/网络】(C++实现select、poll和epoll服务器)

阅读前导&#xff1a; “I/O 多路复用”处于知识树中网络和操作系统的最后&#xff0c;因此本文默认读者有计算机网络和操作系统的基础。 1. 引入&#xff1a;C10K 问题 c10k 问题是指如何让一个服务器同时处理超过 10000 个客户端的连接&#xff0c;这是一个网络编程中的经…

STM32+USB3300复位枚举异常的问题

关键字&#xff1a;STM32F4&#xff0c;STM32H7&#xff0c;USB3300&#xff0c;USBHS&#xff0c;Reset复位 F4和H7用的都是DWC2的USBIP&#xff0c;我的板子上3300单片机工作的很好&#xff0c;插入枚举一切正常&#xff0c;但是设备收到上位机的复位命令后&#xff0c;单片…

Redis之主从复制,哨兵模式,集群

Redis之主从复制&#xff0c;哨兵模式&#xff0c;集群 1、主从复制1.1主从复制概述1.2Redis主从复制作用1.3Redis主从复制流程1.4部署Redis 主从复制 2、哨兵模式2.1哨兵模式原理2.2哨兵模式的作用2.3哨兵模式的结构2.4故障转移机制2.5搭建Redis 哨兵模式 3、Redis集群模式3.1…

Deep learning of free boundary and Stefan problems论文阅读复现

Deep learning of free boundary and Stefan problems论文阅读复现 摘要1. 一维一相Stefan问题1.1 Direct Stefan problem1.2 Inverse Type I1.3 Inverse Type II 2. 一维二相Stefan问题2.1 Direct Stefan problem2.2 Inverse Type I2.3 Inverse Type II 3. 二维一相Stefan问题…

数据结构 | (四) Queue

队列 &#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作的特殊线性表&#xff0c;队列具有先进先出 FIFO(First In First Out) 入队列&#xff1a;进行插入操作的一端称为 队尾&#xff08; Tail/Rear &#xff09; 出队列&#xff1a;进行删除操…

iOS App上架全流程及相关处理

iOS app上架总体流程&#xff1a; 一、IOS上架整个流程 1、申请开发者账号 2、创建APP ID及申请证书 3、itunes connect 创建APP 4、打包 上传APP 5、提交APP&#xff0c;上线成功 1、申请开发者账号 苹果开发者账号主要分为三种&#xff1a;个人账号、公司账号、企业账…

深度学习基础知识 register_buffer 与 register_parameter用法分析

深度学习基础知识 register_buffer 与 register_parameter用法分析 1、问题引入2、register_parameter()2.1 作用2.2 用法 3、register_buffer()3.1 作用3.2 用法 1、问题引入 思考问题&#xff1a;定义的weight与bias是否会被保存到网络的参数中&#xff0c;可否在优化器的作用…

《深入理解计算机系统》(2):虚拟内存

虚拟内存是一种对主存的抽象概念。 &#xff08;1&#xff09;将主存看作一个存储在磁盘上的地址空间的高速缓存&#xff0c;在主存中只保存活动区域&#xff0c;并根据需要在磁盘和主存之间来回传送数据&#xff0c;通过这种方式高效地使用内存 &#xff08;2&#xff09;为每…