深度学习中创新点比较小,但有效果,可以发(水)论文吗?

深度学习中创新点比较小,但有效果,可以发(水)论文吗?

来源:https://www.zhihu.com/question/528654768

作者:王晋东不在家

首先,当然可以发。不过即使你不提点,也可以发。

然后,重点是如何发?给出一些讨论以供参考:

  • 刨根问底法:此种方法最为直接,即知其然也要知其所以然。如果你提的小改进使得结果变好了,那结果变好的原因是什么?什么条件下结果能变好、什么条件下不能?提出的改进是否对领域内同类方法是通用的?这一系列问题均可以进行进一步的实验和论证。你看,这样你的文章不就丰富了嘛。这也是对领域很重要的贡献。
  • 移情别恋法:不在主流任务/会议期刊/数据集上做,而是换一个任务/数据集/应用,因此投到相应的会议或期刊上。这么一来,相当于你是做应用、而不是做算法的,只要写的好,就很有可能被接受。当然,前提是该领域确实存在此问题。无中生有是不可取的,反而会弄巧成拙。写作时一定要结合应用背景来写,突出对领域的贡献。
  • 声东击西法:虽然实际上你就做了一点点提升和小创新,但你千万不能这么老实地说呀。而是说,你对这个A + B的两个模块背后所代表的两大思想进行了深入的分析,然后各种画图、做实验、提供结果,说明他们各自的局限,然后你再提自己的改进。这样的好处是你的视角就不是简单地发一篇paper,而是站在整个领域方法论的角度来说你的担忧。这种东西大家往往比较喜欢看、而且往往看题目和摘要就觉得非常厉害了。这类文章如果分析的好,其价值便不再是所提出的某个改进点,而是对领域全面而深刻的分析。
  • 移花接木法:不说你提点,甚至你不提点都是可以的。怎么做呢?很简单,你就针对你做的改进点,再发散一下,设计更大量的实验来对所有方法进行验证。所以这篇paper通篇没有提出任何方法,全是实验。然后你来一通分析(分析结果也大多是大家知道的东西)。但这不重要啊,重要的是你做了实验验证了这些结论。典型代表:Google家的各种财大气粗做几千个实验得出大家都知道的结论的paper,比如最近ICLR'22这篇:Exploring the Limits of Large Scale Pre-training

以上介绍了几种常用的办法。更多的办法,以后再更新。

最后说一句,不管上述哪种方法、甚至即使你有特别大的创新时,写作永远都是重要的。


作者:HeptaAI

当然可以,但是你自己要明白,自己的工作的意义是什么。就算性能下降了,如果你能找出性能下降的理由,并且提出前人忽略的地方,也是非常好的文章。发文章首先要思考自己的工作对于学界的贡献,现在大部分文章都在刷点,能够静下心来想想为什么自己的点数上去的反而不多。比如一个benchmark,你套一个图论上去,性能就上去了。但是为什么呢?是因为图论引入的拓扑关系可以提升网络的structure性吗?是因为图论增加了知识间的关联度吗?反之,如果点数反而下降了,是因为图论和任务不兼容吗?是因为图论带来了冗余的知识吗?如果是,那又是什么冗余知识呢?可以通过消融实验来佐证你的观点吗?如果不行,可以用前人做过的实验说明图论可能会带来冗余知识吗?这些都需要静下心来认真思考,才能提升自己的思维质量。

研究工作在很大程度上是对整体思维的提升,而非对某种技术的掌握。研究人员与程序员最大的区别就在于没有详细的任务界定,很多东西根本不是良定义的,很多东西根本没法建模,很多东西无法用劳动力去衡量。程序员团队做出的产品,是有肉眼可见的实际价值的,而且有比较完善的任务体系,实现的是一个业务功能;研究团队一般由一两名科学家带头,做出的主要产品是在学界业界都有参考价值的研究报告,而代码和性能只是次要产品。不难发现,研究代码一般都比较散乱,很多程序员为此不齿,其实如果自己去写,写出来的代码根本好不到哪里去;最主要原因是研究的方向和任务都不是确定的,修改代码是非常正常的事情,改着改着又一定会出问题,例如想要加入某一些观测,这个时候代码又要改。研究在很大程度上在意的是你是如何得到这个东西的,而不是你得到的这个东西有多好。如果这个东西通过一些小聪明比原来好了一点点,你却不知道是怎么做出来的,那么你的贡献是微小的。

所谓的水论文,就是指这一类。胡乱改一通,调了一下参数,甚至干脆换了一个种子,好了,性能提升了2个点,开始写文章。文章丝毫不提相关工作,只介绍自己的架构,做起来好像跟自己模仿的工作没有任何关系,以此掩盖是非,弄虚作假,骗过审稿人的眼睛,发上顶会。相比之下,那些发到一般的期刊和会议的一些文章,虽然并没有提升多少性能,但是提出了看问题的另一个角度,通过这个角度重新分析某一个模型的性能为什么好,反而给社区带来了很大的启发,诞生了诸如Mask RCNN这样的工作。

因此,只要你不故弄玄虚,秉着严谨的态度写论文,通过调查先前的研究,思考自己的创新点到底在哪里,为什么会提升性能,你用了哪些方法来证明你的性能提升是因为这个原因,之前工作为什么没有思考到这个创新点,你又是怎么想到的,这些全部用朴素的文字表达出来,用有深度的思考呈现给编辑看,这根本不是水论文,这种文章的含金量甚至比单纯的提点更高。


作者:知行

深度学习属于人工智能的连接学派。如果你仔细看看或许觉得神经网络和集成电路比较相似。这里面暗含了一个基本思想:模块化。所以深度学习通俗一点就是“积木游戏”。所以深度学习创新可以类比积木游戏创新就主要来源于三个方面:(1)创造新的积木类型。(2)创造新的堆积木的方式,堆出不同形状。(3)堆积方法用于不同的游戏场景。

深度学习中创新点比较小,但有效果,可以发(水)论文吗?_第1张图片

以下从这三个方面展开来讲:

(1)创造新的积木类型

激活函数举例:relu、leakly relu、parameter relu... sigmoid、tanh。按网络基础构成算子举例:全连接fc,卷积conv,循环算子lstm,gru。

尝试着从数学库里面找一个理论,将它算子化,也许这就是一篇不错的论文。以前专家总是手工来寻找这样的算子,现在google的大神们借助算力使用automl,autodl来自动寻找算子,如果你也有功能强大的算力你也可以尝试着用算力自动寻找新的“积木算子”,如果这个算子恰好又是神奇的提高了神经网络的性能,那么人工智能深度学习领域又将多一个大神一样的人,而这个人恰好就是你。

深度学习中创新点比较小,但有效果,可以发(水)论文吗?_第2张图片

(2)创造新的堆积木方式

resnet很大程度受益于highway network的启发,将X直连到下一层这个概念在论文发出来之后其实看看觉得蛮直观的,但为什么其他人都想不到呢?这个问题我也在问自己,O(∩\_∩)O哈哈\~。再举个例子:Conv层如何堆,是同型Conv堆积还是不同kernel size的conv进行堆积,也许这就是alexnet,googlenet等不同卷积网络的区别。

目前google也借助遗传算法等自动找到新的堆积木的方式,发了很多高水平的论文,如果我告诉大拿科学家他们这仅仅是堆积木的方法不同“无他但手熟尔“,他们会不会生气打我。

深度学习中创新点比较小,但有效果,可以发(水)论文吗?_第3张图片

(3)堆出的积木形状用于不同的场景

Attention注意力机制最先出现在NLP领域,后来进入了语音识别和合成领域还有CV计算机视觉领域。仅仅是相同的积木用在了不同的场景罢了,最先发现新的应用场景的人成了他所在领域的大神,如果我说大神仅仅是搬运工相信大神也会打我的。

以上三种方式不一定概括全面,但我认为能做到上述任意一条的都是一个不错的想法。当然"积木游戏"要玩的好,一定需要“多玩”,所谓多玩意味着多看论文看看人家怎么玩,玩的好的人怎么玩,学着按别人的套路玩,最后自己找到一种新玩法,反复训练自己的新玩法达到纯熟,干翻一堆老玩家,你就是终极玩家了。

综上所述:

深度学习不简单,但也不必想的过于复杂。灵活的应用上述提到的三条,随意创新、大胆实践做实验,相信很快你就能发出很多高水平的论文了。

两句话总结:

1.实践是检验真理的唯一标准

2.无他但手熟尔


作者:李沐老师

如何判断(你自己的)研究工作的价值 - 李沐的视频 - 知乎 https://www.zhihu.com/zvideo/1475716940051869696

【技术交流】

已建立深度学习公众号——FightingCV,关注于最新论文解读、基础知识巩固、学术科研交流,欢迎大家关注!!!

推荐加入FightingCV交流群,每日会发送论文解析、算法和代码的干货分享,进行学术交流,加群请添加小助手wx:FightngCV666,备注:地区-学校(公司)-名称

面向小白的顶会论文核心代码库:https://github.com/xmu-xiaoma666/External-Attention-pytorch

面向科研小白的YOLO目标检测库:https://github.com/iscyy/yoloair

深度学习中创新点比较小,但有效果,可以发(水)论文吗?_第4张图片

【赠书活动】

为感谢各位老粉和新粉的支持,FightingCV公众号将在9月10日包邮送出4本《深度学习与目标检测:工具、原理与算法》来帮助大家学习,赠书对象为当日阅读榜和分享榜前两名。想要参与赠书活动的朋友,请添加小助手微信FightngCV666(备注“城市-方向-ID”),方便联系获得邮寄地址。

深度学习中创新点比较小,但有效果,可以发(水)论文吗?_第5张图片

本文由mdnice多平台发布

你可能感兴趣的:(人工智能)