盘点我跳过的科研天坑,进坑就是半年白干( 二 )


有的工作不能够达到某些基本科研要求 , 或许是作者的无心之失 。 但也不否认有一些工作是在有意识地粗制滥造 , 将存在问题的工作加以包装 , 以次充好 。 模型上堆叠各式各样模块 , 把各种当下热点技术都沾了点边 。 然后煞费苦心调出实验结果 。 最后再胡诌个似是而非的motivation , 补齐相关工作 。 面对这类工作 , 也许有经验的审稿人很容易就能发现问题 。 但若是遇到个经验不足的审稿人 , 很可能就打出了高分 。 毕竟这样的论文经过一番包装 , 确实金玉其外 。 再加上这样的工作制造成本低廉 , 大可以多做几份 , 搞“海投战术”——只要分母够大 , 总有能中的 。 这种行为的流行将戕害到整个AI行业 。 随着海投的水文越来越多 , 审稿需求就越来越大 。 审稿人的平均水准也相应越来越低 , 于是漏网之鱼的录用水文也越来越多 。 从此进入恶性循环 。
盘点我跳过的科研天坑,进坑就是半年白干】2如何避免科研误区?
科研误区可能是无心之失 , 或刻意而为 。 后者牵扯到太多利益纠葛 , 不多加讨论 。 但对于还对科研带有热情 , 有心做出有价值的工作的同行 , 我们在此想分享一份机器学习避坑指南 , 互相提醒 , 互相勉励 。
盘点我跳过的科研天坑,进坑就是半年白干
文章图片
Warning:下文一半是搬运 , 一半是个人理解 。 感兴趣的朋友还请移步原文 。
论文题目:
HowtoAvoidMachineLearningPitfalls:AGuideforAcademicResearchers
论文链接:
http://arxiv.org/abs/2108.02497
原作者热烈欢迎大家一起补充完善这份指南 。
3建模前需要做的准备
1.花点时间了解你的数据
当你的数据来源可靠时 , 你训练的模型才可能可信 。 在使用来自网络的数据时 , 稍微看一眼 , 数据是哪里来的?有没有对应的文章或文档说明?如果有说明 , 多看几眼数据的采集方法 , 检查一下作者有没有提及数据的局限性(可能没有 , 所以还要自己多想想) 。 不要因为一个数据集被很多文章采用了 , 就假设它是可信的 。 即使是标杆级别的数据集 , 数据也可能没经过仔细筛选(请参见《Google掀桌了 , GLUE基准的时代终于过去了?》) 。 而不靠谱的数据 , 只会导致garbagein , garbageout 。 所以 , 在开始跑实验之前 , 先好好地探索一下你的数据吧!在工作开始的时候就对数据有一个整体把控 , 总比最后再不得不向审稿人解释你的模型表现是受到了垃圾数据影响要好 。
2.不要过度地分析数据
当你对数据集有一定了解之后 , 可能会发现一些肉眼可见的规律 。 但是 , 千万不要基于初步的数据分析作出任何没经过检验的假设!提出假设本身没有错 , 重点是避免“没经过检验”的假设 , 一方面是因为数据集都会带有偏差 , 你无法确定你发现的规律是不是基于特定的偏差的;另一方面 , 在没有区分训练和测试数据前就基于数据开始大胆猜测(带入先验知识) , 这其实也是测试数据泄漏到训练过程的一种形式 。 总之 , 轻率地提出假设对于模型的可靠性百害无一利 , 如果你发现之前很多论文都用了相同的假设 , 也请谨慎确定这个假设适用于你的数据 。 假如你发现这个领域长期公认的假设其实是不合理的——嗨呀 , 送上门的文章快写吧 。
3.确保你拥有足够的数据
这其实不止是对数据的要求 , 也要求你要对自己的模型有一定的了解:到底需要多少数据 , 才能保证你的模型的泛化性?此外 , 数据的“量”是否充足 , 和数据的“质”有一定的关联 。 如果数据中噪声太大 , 那即使量够大 , 也不一定能获得很好的模型训练效果 。 而如果数据类与类不均衡 , 模型的泛化性也会受到影响 。 如果数据因各式各样的原因不够充足 , 你可以考虑交叉验证、数据增强、均衡训练等操作 , 如果数据无论怎样操作都不足以支撑你的模型 , 那就趁早换个复杂度低一点的模型吧 。