AI TIME欢迎每一位AI爱好者的加入!
前段时间,ACL 2020最佳论文奖的公布引起了轰动!这篇论文题为《Beyond Accuracy: Behavioral Testing of NLP Models with CheckList》,作者分别来自微软研究院、华盛顿大学、以及加州大学欧文分校。受到软件工程中行为测试的启发,研究者们提出了一种全新的 NLP 模型测试方法——CheckList,帮助人们更为清晰、系统地了解各种模型的优缺点。
本期AI Time PHD直播间,我们有幸邀请到该论文的二作,华盛顿大学博士吴彤霜同学,为大家分享这项研究工作!
吴彤霜,本科毕业于香港科技大学,目前在华盛顿大学读博士四年级,导师为Jeffrey Heer和Dan Weld。主要研究方向是通过结合人机交互的技术,来探索和改进自然语言处理模型的训练和评估步骤,最终帮助用户更有效、系统地与他们的模型进行交互。
背景:如何评估模型的好坏?
假设我们需要评估一个NLP分类模型、或者问答系统模型,大家想到的第一个指标很可能是:准确度!的确,accuracy或者F1这种标准度量十分常见。现在很多模型在GLUE、SuperGLUE这些知名的benchmark数据集上表现优异,准确率甚至超过人类水平。
然而,这种一键评估的方式,能暴露所有问题吗?
深入质询你的模型
如图,询问一个Visual Question Answering模型:图里的胡子是什么做的?模型回答:香蕉。如果单纯测accuracy,那么这里的表现满分。
但是,进一步深层次质询你的模型,你会发现图中什么都是“香蕉”做的!甚至当你已经不再问一个完整的问题了,模型仍然很固执地在回答“香蕉”!原因是,模型只看到你在问一个what问题,就狡猾地自动在图里找到一个显眼的物件返还给你。
模型这种类似走捷径或作弊的行为,也导致了很多其他的离谱现象。比如稍微扰动一下你的问题(多加一个问号),模型就不会数数了。
另一方面,对于不同问题,模型很可能给出相互矛盾的答案。这背后可能存在数据采样偏差或者建模的缺陷等等问题。
图:当你用不同的问法来问同一问题时,模型就会“犯傻”
提出模型测试的宏观方法
针对“我的模型能不能用”这个问题,该团队受到软件工程中最小单元测试和行为测试的启发,