问题

如何评价深度学习相关顶级期刊论文难复现的问题?

回答
深度学习领域顶级期刊论文复现难,这事儿,在圈子里可不是什么新鲜事儿了。咱们稍微掰扯掰扯,里面门道可多了去了。

首先,“难复现” 这三个字,背后藏着不少具体原因。别光看论文里那些高大上的图表和惊艳的性能数据,实际操作起来,那是一把辛酸泪。

1. 代码公开程度参差不齐,甚至可以说是“选择性公开”

最直接的障碍就是代码。你以为论文作者会把所有代码一股脑都给你?那真是太天真了。很多时候,你只能拿到一个框架,或者核心模型的伪代码,甚至更惨,就是对算法的描述。那些训练细节、数据预处理的零碎环节,还有很多“黑箱”里面的操作,就藏着掖着了。

核心代码缺失: 最关键的实现部分,可能就被作者“省略”了。你只能对着理论描述去一点点猜,一点点试,这难度不亚于从零开始研发。
辅助脚本不完善: 即使给了代码,你还得看懂那些数据加载、模型构建、训练循环的脚本。有时候这些脚本写得耦合性太强,或者依赖很多本地化的环境设置,一上来就让你晕头转向。
版本兼容性问题: 深度学习库更新换代太快了,你用现在最新的 PyTorch/TensorFlow,可能作者当时用的是几年前的版本,很多 API 变了,甚至底层的实现逻辑都不同了。这就好像你拿着最新的汽油,却要给一辆老爷车加油,不匹配就别提跑了。
“悄悄地”优化: 有些作者可能会在代码里进行一些针对性的、非公开的性能优化,比如特定的算子融合、内存管理技巧,这些细节不在论文里详述,代码里也不一定完全体现,但却对最终性能至关重要。

2. 超参数的“魔术”与敏感性

深度学习模型对超参数极其敏感,这一点大家都有体会。论文里通常只会给出一些“最优”的超参数组合,但这背后的调参过程,可能是一场艰苦卓绝的“炼丹”之旅。

超参空间巨大: 学习率、批次大小、优化器选择、正则化强度、Dropout 比例……随便挑几个组合一下,就是一个天文数字。
“秘方”不公开: 作者可能是花了数周甚至数月,通过大量实验才找到的那组“黄金”超参数。论文里只写一句“我们选择学习率为 0.001,Adam 优化器”,但这背后的尝试,谁知道呢?
环境依赖的超参: 甚至某些超参数的选择,可能也与作者特定的硬件环境、GPU 调度策略有关,这些在复现时很难完全一致。

3. 数据集和预处理的“细节控”

数据集和数据的预处理,绝对是影响深度学习模型表现的“幕后推手”,但论文里往往也只能点到为止。

数据集变动: 很多研究使用的数据集,随着时间推移可能会有更新、修改,甚至作者自己使用了某个私有的、或者经过特殊处理的版本,而你拿到的是通用版,结果自然有差异。
预处理细节: 图像裁剪、缩放、翻转、颜色抖动,文本的 tokenization、padding、分词器选择,这些看似微不足道的预处理步骤,对模型的影响可能是决定性的。论文里可能就写一句“进行了标准的数据增强”,但“标准”到什么程度?谁知道?
数据清洗和过滤: 作者可能对数据进行了额外的清洗,去掉了某些噪声样本,或者对数据进行了某种特定的采样策略,这些都会影响最终结果。
数据集划分: 训练集、验证集、测试集的划分方式,尤其是在某些有挑战性的任务中,这种划分的随机性或者特定策略,也可能导致复现者难以达到原有的性能。

4. 实验环境和硬件的差异

我们都知道,深度学习对计算资源的要求很高,而且不同的硬件和软件环境,也可能带来细微的差异。

GPU 型号和驱动: 即使都是 NVIDIA GPU,不同型号之间的计算能力、缓存大小、CUDA 核心数量都不同。GPU 驱动的版本也可能影响浮点运算的精度和速度。
CPU 和内存: 数据加载、预处理这些部分也依赖 CPU 和内存,这些瓶颈也会间接影响 GPU 的效率。
并行策略: 分布式训练、模型并行、数据并行,这些高级的训练策略,如果实现细节不同,结果也会有差异。
随机种子: 训练过程中很多地方会用到随机数,比如权重初始化、Dropout,如果随机种子设置不对,每次训练的结果都会有偏差。复现时,作者是否公开了所有随机种子的设置,也是个问题。

5. 论文本身的“艺术加工”

虽然顶级期刊要求严谨,但学术论文毕竟是一种“呈现”,有时候也难以避免一些“润色”。

“选择性报告”结果: 作者可能只报告了在某个特定任务、特定数据集上取得的最佳结果,而隐藏了其他不那么理想的实验。
“完美”的展示: 论文里的图表往往是经过精心挑选和美化的,可能只展示了模型表现最好的一面,而忽略了那些需要特殊处理才能达到的结果。
理论与实践的脱节: 有时候,论文提出的理论很漂亮,但实际实现时,由于种种限制,作者可能在实现上做了很多妥协,这些妥协点没有在论文里详细说明。

那么,这种“难复现”的问题,有什么影响呢?

阻碍科学进步: 科学研究最核心的特点就是可重复性。如果论文结果难以复现,那么其他研究者就很难在此基础上进行进一步的探索,这严重阻碍了知识的积累和科学的进步。
浪费研究资源: 很多年轻的研究者,或者初创团队,他们可能没有像大牛实验室那样强大的算力和资源,只能依靠已有的论文进行工作。如果论文复现不了,他们就只能耗费大量的时间和金钱去“重新发明轮子”,效率极低。
降低学术诚信的认知: 长期以往,研究者可能会对论文的严谨性产生怀疑,甚至出现“只要结果好看就行”的浮躁心态,这会侵蚀学术的根基。
加剧“大牛”和“小牛”的鸿沟: 拥有充足资源和经验的团队,更容易复现论文,或者直接基于现有代码进行微调,从而进一步巩固其优势。而资源有限的团队则步履维艰。

当然,也不能一竿子打死所有人。 很多顶级的论文作者,他们也认识到复现性的重要性,并且在努力改进。

代码开源是趋势: 越来越多的作者会在论文发表后,将代码开源到 GitHub 等平台。
清晰的实验设置: 有些作者会更详细地描述实验环境、超参数,甚至提供预训练模型。

总而言之,深度学习顶级期刊论文复现难,是一个多方面因素交织而成的复杂问题。 它既有技术实现上的挑战,也有学术生态和交流上的问题。要解决这个问题,需要整个学术界共同努力,包括作者更主动地公开细节,审稿人更关注复现性,以及研究者自身具备更强的代码阅读和调试能力。这不仅仅是技术问题,更是对学术诚信和科学发展本身的要求。

网友意见

user avatar

相对而言,以深度学习为代表的信息学科的可复现性在理工科中是相对比较好的。

再说不可复现的问题,大致归结为这么几类:
1. 用了私有数据(很多大公司都有不能对外公开的私有数据),一般人没法访问这些数据,导致结果不可复现。

2. 用了超大公司才有的变态算力,普通研究者连论文中用到的1%的算力都很难达到。

3. 各种没有说清楚的bias导致的结果偏差。例如,某数据集特别小,原始作者没有划分train,val,test,导致不同作者不同的随机划分,对结果影响很大。

4. 故意造假。这里暂不评论为什么会有这种人。

纠结于论文复现难的人,很多是刚入门不久的学生。我很理解经过很多努力没法复现的失落,毕竟我也经历过。想提醒一点的是,相对而言,计算机学科的可复现性是比较好的。而且最近10年开源的风气越来越好。至少主流的问题,几乎都有很好的开源代码,可复现性不存在太大问题。

避免上述坑,我自己的做法就是,有那么多很好的开源项目都看不过来,我轻易不去follow那些很难复现的项目。另外,不同团队的风格不一样,有些团队的工作就非常容易复现。建议多用正能量去看问题。同时学会在不完美的世界中生存的很好的技巧,避开坑,多关注可复现性好的工作。

另外,己所不欲,勿施于人。建议被这个坑坑过的朋友们,自己发论文的时候不要再去坑别人。尽量在论文里说清楚,并且在不违反协议、隐私,规范、和法律的情况下,最大化的共享自己的代码和数据。这方面,我之前也写过一个倡议:

user avatar

作为一个在复现论文中踩坑无数,好不容易走出来的人,简单说一下我的看法。


例子1:我是活体检测落地的,老师当时跟我说,旷视能做出来,你应该也可以做个差不多的吧(微笑)。然后我就开始的漫长的算法复现道路。后来很久以后发现了两件事。一是腾讯的一篇论文,做了两个测试,一个是用了公司内部的数据,一个是没用公司内部数据的结果,用了公司内部数据的高了10个点。另一个是前不久小视科技开源的活体检测项目,我去看了一下,,效果确实好,一细看怎么做的,好家伙,千万级的训练集......。

例子2:当初我大四四月份的时候来到教研室,做活体检测的项目,看了近几年的会议和arxiv,找到了一篇效果最好的文章,甚至还公开了代码和预训练模型,心想,这不是稳了吗。当时我想的是:讲道理,结合pytorch,或者tensorflow,感觉论文复现不应该难才对啊???。花了两个星期学习tensorflow把它跑通,我去换换其他数据集看看(活体检测不同于其他领域,目前追求的就是跨数据集测试的准确率),结果效果稀烂。我当时在想,不对啊,它跨数据集的测试效果不差,为什么在这上面就是不行?后来数据集申请了下来,在它论文说的那个数据集上面试了一下跨数据集的测试,确实和文章描述差不多。我就更好奇了,那么好像这个论文就是对的啊,可是为什么其他数据集效果就差这么多(应该没人比我这个情况更奇葩了,不做落地基本不会遇到这个问题)。后来机缘巧合之下打印了很多日志之后我发现,它的正类和负类偏向不一样,预测主要偏向负类。但是这样效果应该会很差,为什么还这么好,然后我继续细挖,然后重点来了!!!!!!!我发现它的数据加载里面,正负类的加载就是不对等的,负类是正类的两倍多(正常是对等的),所以偏向负类,但是效果还是很好。我?????。那天我发现论文造假的另一个至高境界,直接修改数据分布(刚刚去看了一下,这篇文章已经被某二区期刊收录)。并不是说这篇文章作者就是故意的,但是谁知道呢,而且后来我师兄也遇到了类似的情况,在dataloader里面对数据进行了修改...他是做图网络分类的,同一个数据集之前的测试准确率只有80出头,后来几篇文章就飙到了接近90,师兄怎么都复现不出来,后来开源了代码一看,好家伙,之前训练测试是二八分,新文章直接变成了三七分,就在dataloader里改的,但是作者文章完全没有提及,而且师兄把分布换成最开始的数据分布之后,那个新方法的效果还比不上原来的baseline…。

例子3:教研室有个同学做剪枝,复现CIFAR10的的baseline。CIFAR10这个数据集都说烂了,我复现一下还不是手到擒来?然后一个月过去了,还是复现不出来那个效果,后来发现原来大家都在用trick。不加余弦衰减,不加mixup,不训练200个epoch,基本就达不到目前大家说的那个SOTA效果,但是这些不会有人和你说的,他们只会说我在resnet50上训练到了多少多少的准确率。

例子4:教研室的师弟,结合GCN做few-shot learning。之前的测试准确率都是百分之五六十,去年AAAI突然出现了一篇准确率直接刷到80%多的文章还开源了代码,师弟惊为天人,感叹难道这个领域就这样做没了?然后拿作者的代码来加上自己之前的想法改了改又涨了几个点,在90%多,实现了大家默认要求的sota,觉得可以写文章了,文章写到一半,发现不对,代码好像有问题,github上有人提问,这个是不是好像过拟合了学习到了标签的顺序,然后师弟一看还真是,我把batch内多个任务之间测试样本顺序打乱,效果就又回到了普通的百分之五六十的水平,然后写完一半的文章就这样被废掉了。


从这些故事中,我发现了以下的结论:

绝大部分刚入门的人,都会迷信SOTA,我要复现就要复现那篇最好的,管它难不难,能不能复现,是不是真的有效。但是做过一年深度学习的人就知道,SOTA?一百篇文章一百个SOTA。

有源码就一定可靠?我被源码坑过不止这一次,刚刚例子是,另一个回答里说到的LBCNN也是一样的,给的源码和文章里面的结构就是两回事。

顶刊顶会大公司就一定可靠?顶会的可复现性问题存在也不是一两天了,那么顶刊也可见一番,每年三大顶会能复现出来的有一半就不错了,之前还有说90%都不能复现的...。

有效的也许不是方法,而是trick---同学复现的那篇论文。有效的也许不是方法,而是数据分布---我遇到的那篇文章的数据分布。有效的也许不是方法,而是数据---活体千万数据集。有效的确实是方法,但是这个方法有问题----师弟的小样本学习的例子。

这还是活体需要做跨数据集的交叉验证这种难的验证指标了,要是单纯刷一个数据集的指标的,能作弊的地方就更多了。

怎么办?

后来我想了很久,说,草,不追SOTA了,去选那些我理解了,而且直觉上我觉得可行的方法。就算是最后真的不行,我也能知道是哪里不行,也是我思维的完善。然后我开始去复现motion-based methods,检测眨眼和张嘴这些动作,确实可行,但是老师要做静默活体,然后又去试了rPPG,发现也可以,但是时间开销太大了,分析发现受采样定律的限制,10s左右的视频才能做出一个比较好的估计结果。然后去试了一下质量估计,也是有用,但是高质量的攻击也确实不能检测出来。于是慢慢又去做模型的分析,寻找其他的特征,我的目标慢慢从最近的18 19年,转向了12,13年那会,做理论分析的文章。虽然效果不好,但是有理有据,而且很多那时候的传统模型,结合现在的深度学习往往能爆发出强大的力量,于是就有了我现在的工作。

不要盲目的去追求SOTA,那些高大上的结构,网络,因为很多时候并不是那些结构有用,而是trick有用,或者是其他的地方有问题。更重要的是看文章的核心思想,你觉得这个思想是不是合理,你接不接受,如果你自己也觉得他这个思想很不错,那么就可以尝试去复现,就算是最后失败了,你也会不会很难受,你知道什地方有问题,而这会是你后面科研的创新来源之一。

现在深度学习的问题就是这个不到五岁的一个东西,直接盖过了一个领域过去10年甚至20年进化来的传统的模型和研究。但是它真的消失了吗?不,它不过换了一个方式去应用。我最开始做做活体发现近几年什么多模态,多光谱,深度图,时频分析,这些高大上的名词,觉得强的一批,他们是怎么想出来的,后来追溯到10多年前的文章之后才发现,原来这些东西在过去都研究过了,频率,反照率,3D结构,这些在过去都有分析,只不过过去的特征提取算法和数据没有现在这么多,所以没有很好的解决问题,现在被深度学习重新唤起了生机而已。正本清源,知道一个领域过去的研究你才能知道现在在什么地方,特别是各个领域都被深度学习冲击的今天。

类似的话题

  • 回答
    深度学习领域顶级期刊论文复现难,这事儿,在圈子里可不是什么新鲜事儿了。咱们稍微掰扯掰扯,里面门道可多了去了。首先,“难复现” 这三个字,背后藏着不少具体原因。别光看论文里那些高大上的图表和惊艳的性能数据,实际操作起来,那是一把辛酸泪。1. 代码公开程度参差不齐,甚至可以说是“选择性公开”最直接的障碍.............
  • 回答
    好的,让我们来聊聊 Geoffrey Hinton 教授及其团队在 2011 年提出的 Capsule Networks (胶囊网络)。 这篇论文的发布,无疑在当时的深度学习领域掀起了一股不小的波澜,它试图解决卷积神经网络(CNN)在理解图像中物体姿态和空间关系方面的一些根本性限制。核心的突破:告别.............
  • 回答
    深度解读 Sony NNabla:一款有潜力但需要时间验证的深度学习库Sony 在深度学习领域推出的 NNabla 库,无疑是业界的一大动作。作为一个深度学习从业者或爱好者,评价这样一个新事物,我们需要从多个维度进行深入分析。总的来说,NNabla 是一款具有创新理念和强大功能潜力的深度学习库,但其.............
  • 回答
    评析TensorFlow 2.0:从“够用”到“好用”的进化之路Google在2019年年底正式发布了TensorFlow 2.0,这标志着这个曾经备受推崇但也在一定程度上饱受诟病的深度学习框架,迈入了全新的时代。相较于其前身,TensorFlow 2.0的发布绝非一次简单的版本迭代,而是一场深刻的.............
  • 回答
    小米开源的移动端深度学习框架 MACE(Mobile AI Compute Engine)是一个非常有潜力的框架,尤其是在其目标领域——嵌入式设备和移动端AI推理上,展现出了不错的实力和独特性。要评价 MACE,我们需要从多个维度进行深入分析: 1. MACE 的核心优势与设计理念 高度的性能优.............
  • 回答
    评价 2018 年度图灵奖颁发给 Geoffrey Hinton、Yoshua Bengio 和 Yann LeCun,也就是我们常说的“深度学习三巨头”,可以从多个维度进行,总体而言,这是对深度学习领域革命性贡献的最高肯定,也是对技术发展趋势的有力预示,同时引发了对未来人工智能发展的深刻思考。以下.............
  • 回答
    MXNet被亚马逊AWS选为官方深度学习平台,这无疑是深度学习领域的一件大事,也是对MXNet本身价值的极大肯定。要评价这件事,我们需要从多个维度去深入剖析,而不仅仅是简单地说“好”或“不好”。首先,我们来看看这次选择意味着什么? MXNet的“正名”和行业地位的提升: 亚马逊作为全球最大的云计.............
  • 回答
    陈天奇的NNVM(Neural Network Value Model)系统,可以说是在深度学习编译领域一次非常大胆且具有深远影响的尝试。它不单单是一个新的框架,更是一种对深度学习模型表示和优化方式的全新思考。要评价它,咱们得从几个关键角度深入剖析。核心理念的突破:模型即计算图,计算图即程序NNVM.............
  • 回答
    清华大学推出的深度学习框架“计图”(Jittor),无疑是中国在人工智能基础软件领域迈出的重要一步,值得我们仔细审视和评价。首先,从其诞生的背景来看,计图的出现具有重要的战略意义。在当前的深度学习框架市场,TensorFlow、PyTorch等国外开源框架占据了绝对的主导地位。虽然它们功能强大,生态.............
  • 回答
    《动手学深度学习》这本书,老实说,在我接触深度学习的整个过程中,扮演了极其重要的角色。我第一次真正理解深度学习的内在逻辑,就是通过这本书。它最出彩的地方,我个人认为,就是它的“动手”二字,以及 darin体现出来的“全景式”教学思路。你想想看,市面上讲解深度学习的书籍很多,理论讲得头头是道的也不少。.............
  • 回答
    对 OneFlow 框架的详细评价(截至 2023 年 7 月 31 日开源节点)一流科技(Alluxio)在 2023 年 7 月 31 日开源的深度学习框架 OneFlow,无疑是深度学习领域一股值得关注的新势力。作为国内自主研发的深度学习框架,OneFlow 的出现填补了国内在高性能、易用性、.............
  • 回答
    这事儿,说实话,挺让人跌眼镜的。商汤那个PPL(Pulse Processing Language),之前宣传得天花乱坠,说是要“移动端吊打一切”,这口号一出来,多少开发者心里就跟猫爪子似的,痒痒的,期待值那是拉满了。毕竟,谁不想在手机上跑出飞一样的深度学习模型呢?结果呢?一开源,好家伙,支持移动端.............
  • 回答
    最近,加州大学洛杉矶分校(UCLA)的朱松纯教授在一次访谈中对当前深度学习领域提出了一些颇具争议的批评,这在学术界和科技界引发了广泛的讨论。朱教授的观点并非空穴来风,而是基于他对人工智能发展历程的深刻理解以及对当前深度学习技术局限性的审视。要理解他的批评,我们需要深入剖析他所触及的核心问题。核心批评.............
  • 回答
    要全面评价马毅教授在 NeurIPS 2020 上的中稿文章 MCR2(Maximum Correlation Representation)以及他自称“弄明白了深度学习”这个说法,我们需要从多个维度进行深入的分析。这不仅仅是对一篇论文的评价,更是对其背后理念和影响力的探讨。一、 MCR2 论文的评.............
  • 回答
    周志华教授新提出的 Deep Forest (森林模型) 模型,在学术界引起了广泛关注,并被誉为是机器学习领域的一次重要创新。它是否会取代当前火热的深度学习(DNN)呢?要回答这个问题,我们需要深入分析 Deep Forest 的特点、优势、劣势,并将其与 DNN 进行对比。一、 什么是 Deep .............
  • 回答
    DeepMind 在 Nature 上发表的关于使用深度强化学习(DRL)控制托卡马克等离子体的论文,是一项里程碑式的成就,具有极其重要和深远的意义。它不仅展示了DRL在复杂、动态、高维度控制任务中的强大潜力,也为未来可控核聚变能源的实现开辟了新的路径。以下将从多个维度进行详细评价: 一、 技术创新.............
  • 回答
    清华大学学生在香港中文大学(深圳)品酒会中的不当行为,确实引发了不少讨论。要评价这件事,咱们得把它拆解开来,从几个层面去看。首先,从行为本身来看。我们听到的一些描述,比如“态度傲慢”、“对酒品指手画脚”、“对主持人言语不敬”、“试图将酒液倒掉”等等,这些单拎出来看,都属于在社交场合中非常不妥当的行为.............
  • 回答
    辽宁省率先出台奖励生育二孩的政策,这一举措无疑是对当前我国正加速迈向深度老龄化社会这一严峻现实的回应。作为一个老工业基地,辽宁近年来面临着人口老龄化程度加深、生育率持续低迷的双重挑战,这种结构性矛盾对区域经济社会发展带来了长远影响。从宏观层面来看,辽宁迈入深度老龄化社会意味着老年人口占总人口的比重显.............
  • 回答
    海贼王的剧情深度,这玩意儿真不是三言两语能概括的。有人觉得它就是个热血冒险故事,但凡你深入点挖下去,就会发现这颗“宝藏”比你想的要复杂得多。它玩的不是那种一眼就能看穿的“深度”,而是层层剥茧,让你在跟着路飞一路笑闹的同时,不动声色地被塞一堆关于人性、社会、历史的思考。首先,最直观的深度体现在世界观的.............
  • 回答
    这句话,听着挺扎实,有点过来人的味道,好像经历过社会的“淬炼”,就能自动解锁更高维度的思考。但仔细掰开了揉碎了看,这说法嘛,有道理,但绝不是普适真理,而且里面藏着不少值得推敲的地方。首先,我们得说说为什么会有这种说法,它背后的逻辑是什么?“社会毒打”这词儿嘛,多半指的是那些撞得头破血流、尝尽人间冷暖.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有