开局一段扯,数据全靠编?真被一篇“神论文”气到了
点击上方“AI遇见机器学习”,选择“星标”公众号
重磅干货,第一时间送达
文 | 苏剑林(追一科技)
编 | 智商掉了一地
看来以后我们看论文的时候,不仅要关心论文成绩的可复现性,还要留意它们的求和、均值、方差等有没有算错,否则真的是“无奇不有”!!
这篇文章谈一下笔者被前几天出来的一篇“神论文”气到了的经历。
这篇“神论文”是 《How not to Lie with a Benchmark: Rearranging NLP Leaderboards》 ,论文的大致内容是说目前很多排行榜算平均都用算术平均,而它认为几何平均与调和平均更加合理。最关键是它还对GLUE、SuperGLUE等榜单上的模型用几何平均和调和平均重新算了一下排名,结果发现那些超过人类的模型在新的平均方案下都没超过人类了。
看上去是不是觉得挺有意思的?我也觉得挺有意思的,所以打算写一篇文章介绍一下它。结果文章快写完了,然后在对数据的时候,发现里边表格的数据全是乱来的!!!真实的结果完全不支撑它的结论!!!所以,这篇文章就从“表扬大会”变成了“批评大会”...
论文标题:
How not to Lie with a Benchmark: Rearranging NLP Leaderboards
论文链接:
https://arxiv.org/abs/2112.01342
胡说八道
首先我们来请出“神论文”的第一个表格,它是关于GLUE榜单上的部分成绩:
咱别的不说,这篇“神论文”表格里边的“,”(半角逗号)和“.”(小数点)不分,也是够让人恶心的了(下面SuperGLUE的表格更甚)。不过要只是这种小问题,那忍忍也就算了,最不可忍的是:它里边的AH(算术平均)、GM(几何平均)、HM(调和平均)的计算规则简直是“随心所欲”!
我试了很久,终于试出了该表格的计算规则:
所有的AH都是用前10个任务的成绩算出来的(虽然上表只显示了前8个任务的成绩);
Human那一行的GM、HM用的是前10个任务的成绩来算的;
其他行的模型的GM、HM是用全部11个任务的成绩来算的。
由于第11个任务的成绩比其他任务要低,所以这样算出来的模型的GM、HM就比Human的更低,作者就直接得出了在GM、HM之下,人类成绩还是第一名的结论。事实上,如果大家都用同一批任务算,那么AM、GM、HM排名基本无差别。况且,数学思维稍微正常的人都可以看出上述结果的不妥之处:不少任务上模型成绩都远超Human,少数任务上模型不如Human,但也只是低一点点,所以只要是一种正常的平均算法,都不可能得出Human远超模型的结论吧?偏偏作者也就信了...
同样的错误还出现在SuperGLUE上:
它的计算规则为:
所有的AH都是用前8个任务的成绩算出来的;
所有GM、HM是用全部10个任务的成绩来算的。
事实上,如果AM也用10个任务的成绩来算,那么按照AM排名人类也是第一名。也就是说,只要大家的计算标准一样,那么AM、GM、HM排名并无太大差别。
真心无奈
顺便说,这篇论文还中了NeurIPS 2021的Workshop,虽然Workshop通常都是远不如正式论文,但也不至于乱七八糟到这个程度吧。再看一眼这篇论文的标题,我觉得是不是改为“How not to Lie with this paper”更适合?
看来以后我们看论文的时候,不仅要关心论文成绩的可复现性,还要留意它们的求和、均值、方差等有没有算错~真的是什么奇葩可能性都会存在~
欢迎关注我们,看通俗干货!
开局一段扯,数据全靠编?真被一篇“神论文”气到了相关推荐
- Python爬虫人工智能大数据全栈视频史上最全合辑教程分享!
Python爬虫人工智能大数据全栈视频史上最全合辑教程分享! 毫无疑问Python是这两年最火的编程语言,不仅容易上手,且在多个行业都可应用.尤其今年人工智能及大数据的发展,Python将会展现更多的 ...
- 大数据全栈式开发语言 – Python
前段时间,ThoughtWorks在深圳举办一次社区活动上,有一个演讲主题叫做"Fullstack JavaScript",是关于用JavaScript进行前端.服务器端,甚至数据 ...
- 叫你别随便重启Redis!!!怎么样,数据全丢了吧~~~
目录 事情是这样的... Redis持久化数据的两种模式 一.RDB模式 二.AOF模式 三.RDB和AOF之间的关系 四.问题回顾分析 那么该如何开启AOF增量备份模式呢? 解决方法: 1.登录到r ...
- ev3编程变量模块_英文视频教学翻译-机器人ev3编程学习的第二十讲:举例讲解数据变量模块编...
机器人ev3编程学习的第二十讲:举例讲解数据变量模块编- Rob Widger (为了容易理解,在原文的翻译时做了修改 by EV3-TOM) 这一节我给大家讲解使用变量模块的编程,这些我喜欢的例子也 ...
- 电瓶车续航测试软件,谁续航最牛:24款电动汽车实测数据全曝光
原标题:谁续航最牛:24款电动汽车实测数据全曝光 出品 | 搜狐汽车·E电园 摄影 | E电园·评测团队 作者 | 蔡欣宇 编辑 | 彭钊 [ ·1· 有哪些车参与了本届12小时续航测试?] 此次的续 ...
- 数据全生命周期中的安全管理
一般来讲,数据全生命周期是基于数据在组织业务中的流转情况定义的,分为以下6个阶 段. ● 数据采集:在企业内部系统中新生成数据和从外部收集数据的阶段. ● 数据存储:数据以任何数字格式进行物理存储或云 ...
- 中国信息安全测评中心:从数据全生命周期看数据泄露防护问题
摘要:随着大数据分布式计算和分布式存储等新技术的广泛应用,数据分析挖掘.共享交易等新应用场景的出现,导致数据在创造价值.提高政府治理能力的同时,面临数据安全和个人隐私泄露等问题.近年来,数据泄露事件频 ...
- Linux 0.11-读硬盘数据全流程-46
Linux 0.11-读硬盘数据全流程-46 读硬盘数据全流程 如果让你来设计这个函数 鸟瞰操作系统的读操作函数 对 buf 区域的内存做校验 verify_area 执行读操作 file_read ...
- socket通信——通过Udp传输方式,将一段文字数据发送出去
需求:通过Udp传输方式,将一段文字数据发送出去 定义一个Udp发送端 思路: 1.建立updsocket服务 2.提供数据,并将数据封装到数据包中. 3.通过socket服务的发送功能,将数据包发出 ...
最新文章
- 微信小程序下拉刷新和上拉加载
- 独家 | 一文读懂数据质量和验证检查(附代码)
- ASP.NET 2.0的编译模型
- visual studio 的git插件推荐
- python 冒泡排序_Python中的冒泡排序
- UBuntu国内镜像地址下载
- 在 eclipse 中 设置 jvm 的 运行时目录
- Nest入门教程 - 模块
- Java后台通过jxl生成Excel表格
- webstorm的个性化设置settings
- 解决webstorm out of memory内存不足问题
- Python处理excel表格中的数据
- 高等数学---第八章多元函数微分学---多元函数的极值与最值
- WPS自动生成目录。
- NAR:MicrobiomeAnalyst微生物组分析师——统计、可视化和元分析微生物组数据的网页工具
- MBTI16型人格测试思维导图 | 找到自己的类型
- 华为到底玩的哪些汽车技术?
- PyTorch安装教程(带图文)
- 手机控制云服务器文件,手机控制云服务器的app
- 微信{errcode:48001,errmsg:api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]}