一篇论文里面的方法,应该理解到什么程度?别人论文无法复现,就是造假么
复现别人的实验结果,就像拿着菜谱做菜一样。
很多同学都尝试过复现别人论文里面的方法和实验结果。然而,大多数情况下,别人的实验结果是你根本无法重复得到的。这种情况下,很多同学就非常困惑了,不知道下一步该怎么办了。
我不知道,大家有没有想过一个问题:现如今大部分论文都无法复现,这甚至已经成为了一个公认的事实了,那么为什么审稿人会让这些论文通过评审呢?
当面对别人的论文里面的实验结果无法复现的时候,有些同学会在内心痛骂一下论文的作者。有一些同学则开始担心起自己的科研。在经历这种情况很多次以后,同学们甚至可能怀疑科研到底是在做什么?为什么老师让我复现,我就是复现不了?我该怎么给老师交代?
有些同学觉得是自己的实验没做好,因为自己对于实验的工具不熟悉。他们甚至开始尝试学习各种实验的工具。比如我们计算机专业有一个方向是做云计算的。这个方向里面还有一个分支就是虚拟机。这个分支上面的实验,都非常难做。我认识的一个同学,花了三四年就为了做一个实验。当然了,他之所以花了这么久,是因为他不知道什么是科研,什么是工程。
他误认为,自己实验做的不好,是因为自己的代码写的太少了。还有一些同学,以为自己看不懂别人的论文,是因为自己对于某些实验工具的掌握不够。于是花了很多钱去报名参加各种培训班,学习各种实验工具,软件,模型之类的。然而,这些对于复现别人的论文老说,真的没什么太大的关系。
为什么别人的论文复现不了?
咱们先看看为什么别人的论文复现不了。首先我们得承认一个悲惨的事实:你的科研方向决定了,你这个方向上面的很多论文,可能真的是无法复现。
比如说,某些实验与当时的气温,周围的环境等有关系。这种情况下,即使你看懂了论文里面的方法,由于你无法重现作者做实验的时候的环境,你可能也无法得到相同的结果。
这时候,有一些负责任的作者,为了让大家还原他的实验结果,他会把自己的源代码和相关的实验数据公开发布出去。这种情况下,还原作者论文里面的实验结果,应该是不困难的,我们只需要运行一下作者公开的代码就可以了。
然而,这也有一定的风险。那就是作者的结论可能是在他提供的数据上有效果。一旦你更换了一些新的数据,你就效果就很差了。比如说,我现在拿到了天猫购物的用户数据,然后我设计了一个深度学习的模型,精准地找到了里面最有购买力的一万个用户。并以此发了一篇论文。
当我们需要把论文代码和数据公开的时候,我可能只会把实验需要的用户数据,给大家发布出去一部分,但是并不会把全部的数据都发不出去。这是因为有时候,我们需要保护用户的一些隐私,并不可以把全部的数据公开发布。也有一些时候,是因为作者们想自己拿着这些数据多发一些论文,所以公开的数据并不是很完整。
当你运行了作者提供的代码以后,你发现结果虽然是对的,但是你稍微换一组别的网站的用户数据,效果可能就变的非常差了。
这种情况下,大家需要看的是,论文的核心贡献是什么? 是发现了用户的一些特征,然后利用这些特征达到了精准的挖掘用户的购买力么?还是建立了一个通用的方法,任何数据上都能找得到一些特殊的样本?
如果是前者,那么作者就没有造假。毕竟在已经发表的数据上是有效果的。
但是如果作者宣称自己提出了一种在任何数据上都能找到特殊样本的方法,那么作者的行为也很难被认定为造假。顶多算做是大家经常听到的overclaim。也就是吹牛吹得有点大。
这些其实对于我们学习别人的论文来说,都没什么太大的意义。我告诉大家这些情况是为了让大家明白:还原不出来别人的方法,其实是很正常的,不要为此而生气和惊慌。作者可能处于种种目的,导致了论文里面实验部分的结果真的就是无法还原。这没关系的。
我们应该思考的是,现如今大部分论文都无法复现,这已经成为了一个公认的事实了,那么为什么论文在审稿期间就能过骗过审稿人呢?审稿人为什么就不重视实验是否可以复现?
我们应该从论文中学到什么知识?实验结果真的重要么?
一篇论文能被复现,固然是一件大好事。但是,审稿人之所以不太在乎论文能否复现,是因为论文里面的实验结果并不是最关键的。
审稿人更加关心的是论文给大家提供的新的信息。也就是,论文给这个研究方向提供了哪些新的insight?这里说的insight是什么呢?
一个insight是一篇论文的基础。有了这个insight,这篇论文的方法才是可行的。比如说,在AirCloud那篇论文里面的insight就是:PM2.5在空间上的分布是连续的。有了这个insight,我们就可以设计出不同的模型来预测各个位置的PM2.5了。
在设计火箭的那个例子里面,我们之所以能让火箭在空中接力式地把货物发到太空,是因为我们认为,火箭是可以在空中完成接力的。
这句话看着像废话似的。但是最关键的就在这。为什么火箭能在空中做接力呢?这就用到了一个insight:因为火箭可以在空中精准地控制自己的姿态。有了这个insight,我们精准地控制两个火箭在空中对接的时候,才不至于火箭撞到一起爆炸。这就是insight!
那么回到论文里面,一篇论文里面的实验结果真的不重要。我在审稿的时候,默认其实验结果是不可靠的。一篇论文里面提出的方法虽然重要,但是论文中最重要的是insight。
如果刚才火箭这个例子里面,我们没有掌握精准控制火箭姿态的这个技术,也就是我们的insight,那么我们无论怎么设计我们的方案,火箭在空中就很有可能会撞到一起。这样的话,火箭根本无法发射到太空就爆炸了。
作为审稿人,还有读者,我们其实不是需要100%还原实验结果,而是应该100%还原insight。如果一个论文的insight是可以验证成立的,那么这个论文就是站得住脚的。至于实验结果里面的正确率90%还是90%,还是20%。我并不真的相信。
在刚才提到的AirCloud那个论文里面,如果我们经过实验发现,其实空气中的PM2.5是毫无规律的,也就是我们之前的insighrt不成立的话。那么我们就根本无法预测PM2.5了。那么论文里面,用的什么模型,什么算法也就没有任何意义了。
所以,我们真正需要验证和掌握的是论文里面的insight。至于这个被验证成立了,我们对于论文的理解也就达到了一个更加深入的层次。我们也就明白了为什么作者要把论文里面的方法设计成这个样子。正是作者利用了他们发现的insight,才能设计出相应的方法。
只要insight是成立的,那么我们甚至可以不用去论文里面的方法的具体步骤是什么,我们可以自己根据作者的insight,设计出一套新的方法。而这个可能就会诞生出一篇新的论文。当然了,实际上肯定比这个要困难。怎么从一些已有的insight产生出新的idea,我下次会详细的讲。
最后,我要说一下,到底什么是论文造假?或者说,到底什么样的造假,才是对学术界的伤害最大?
真正的论文造假是什么样的?
一些比较单纯的同学们,可能以为论文造假就像最近被抓出来的那几个典型的造假案例一样,把一些实验结果的图片直接ps一下,或者把以前的结果重新放在新的论文里面使用。其实这些都是弱智才会做的事情。
真正的造假,是篡改insight。
我刚才说过,一些实验结果由于环境的因素,我们可能无法复现。虽然复现insight的难度比复现整个实验要简单很多,但是有些insight可能也无法复现。这时候,一些坏人,就利用了这一点,来编造假的insight,从而设计出一大堆论文。
很多人分不清这种情况和水论文有什么区别。水论文,往往是指建立在已有的,已经验证了的insight上面,然后在实验环节或者方法中的某一个地方,做了一些小小的改动。这样的论文虽然创新程度不高,但是起码是真实的。
有些人拿一些假的insight,来欺骗审稿人和读者。我在一些顶级论文上面,也能看到这种造假的论文。甚至清华大学的一些实验室也带头造假。我认为这是不可以接受的。
这些人,利用了自己独有的实验条件,然后编造出一些大家无法验证的insight。他们的行为是真的在误导整个学术圈。而这些人才是真正需要抓出来的。抓几个只知道ps实验结果的小垃圾,真的是没啥意义。
可惜了,这些制造假的insight的人,是很难抓住的。如果不是对一个方向有着深入的理解,是很难发现的。这时候,就体现出一个导师的重要性了。
一个合格的导师,会告诉自己的学生,哪些实验室的论文不要去读。因为他们之前造过假,他们的insight是不可信的。一旦阅读这些论文,很容易被带到一个错误的方向里面,最后就会导致你浪费了几个月甚至几年,也取得不了成果。而这一切的根源,就是那些人渣在insight上面骗了大家。
所以,大家在读论文的时候,一定要仔细思考和理解论文里面的insight。不要纠结于论文实验结果高了还是低了。更不要因为实验做的不好,就浪费时间和金钱去学一些所谓的实验工具。你要明白,你缺的可能不是实验的经验,而是你的逻辑,你对于insight的思考,你对于论文的理解。
—————————————————-END———————————————————–
我们建立了一个微信公众号:“分享科研经验的科学家”。我们会同步分享科研经验到这个公众号。在微信里,我们的文章可以更加自由地排版。文章也会更加适合阅读和传播。我们相信,经过大家的不懈努力,一定会帮助到越来越多的同学们。请大家关注我们的公众号,并且把这个传播给因为科研而痛苦的同学们。除了扫描二维码,大家还可以通过在微信上搜索“分享科研经验的科学家”来添加我们的公众号 :