基线理解_芝加哥大学:模型真的理解问题吗?

本文分析了图像、表格和文本问答任务的深度学习模型,发现模型在理解和依赖问题重要术语方面存在缺陷。通过attribution技术和对抗性问题,揭示了模型的超稳定性可能导致的错误逻辑。例如,视觉问答模型在对抗性问题面前准确率大幅下降,表格式问答模型的准确率也显著降低。研究强调了attribution在识别模型弱点和提高模型性能评估中的作用,提出了基于attribution的测试方法来度量模型对问题词汇的依赖程度。
摘要由CSDN通过智能技术生成

ACL 2018 Long Papers

模型真的理解问题吗?

Did the Model Understand the Question?

芝加哥大学

University of Chicago

本文是芝加哥大学发表于 ACL 2018 的工作,分析了图像、表格和文本段落问答三项任务的最新深度学习模型。根据attribution(词语重要性)的概念,我们发现这些深层网络经常忽略掉重要的问题术语。利用这种行为,我们扰乱提问以形成各种对抗性的例子,最强烈的攻击使视觉问答模型的准确率从61.1%下降到19%,而表格式问答模型的准确率从33.5%下降到3.3%。此外,我们还展示了attribution是如何加强对段落理解模型的攻击的。结果表明,attribution可以增强模型精度的标准度量,并增强模型性能的研究。当模型是准确的,但是由于错误的原因,attribution可以在模型中显示错误逻辑,该错误逻辑可以指示测试数据中的不足。

4abb2bc1b2e85dfb3aa3d03725b4f704.png

引言

近年来,深度学习已经被应用到各种各样的问答任务中。例如,回答有关图像、表格数据和文本段落的问题。开发人员、最终用户和评审人员(在学术界)都希望了解这些模型的能力。

衡量系统优劣的标准方法是在测试集上评估其误差。只有当测试集代表了底层的现实世界任务时,高准确度才能证明这是一个好的模型。大多数任务都有大型的测试和训练集,并且很难手动检查它们是否代表真实世界。

在本文中,我们提出了一些技术来分析深度学习模型对提问词的敏感性。我们通过应用attribution和产生对立的问题来达到这个目的。这里有一个示例:回想视觉问答,其中任务是回答关于图像的问题。考虑这样一个问题“how symmetrical are the white bricks on either side of the building?”(下图中对应的图像)。

742240ce207550c302af821de944aa95.png

我们研究的系统得到正确答案(“very”)。但是,我们发现(使用attribution方法)该系统仅依赖于“如何”和“积木”等少数词。的确,我们可以构建关于相同图像的使系统出错的对抗性问题。例如,“how spherical are the white bricks on either side of the building?”返回相同的答案(“very”)。我们工作的一个关键前提是,大多数人都有回答问题的专业知识。即使他们不能手动检查数据集是否代表真实世界,他们也可以识别重要的问题单词,并预期它们在问答中的功能。

我们遵循分析工作流了解三个问题回答模型。有两个步骤。首先,我们应用综合梯度(IG)将系统的预测归因于问题中的单词。为使分析更容易,我们提出attribution的可视化机制。其次,我们识别网络逻辑中的弱点(例如,依赖于不重要的词),这些弱点被归因所暴露,并利用它们来构思对抗性问题。

这项工作的一个关键贡献是对问答网络的过稳定性测试,阅读理解网络对于改变文章语义的编辑过于稳定。在这项工作中,我们发现这样的超稳定性也适用于问题本身。此外,这种行为也可以在可是图像和表格问答网络中看到。我们使用attribution来定义一个通用的测试,用于测量超稳的程度,如测量当有系统地从问题中删除单词时,网络的准确度如何变化。

我们的方法利用了现有模型的优点和缺点,这使得我们的攻击具有很高的成功率。此外,利用从归因中获得的洞察力可以提高攻击成功率。通过改进训练数据或引入偏置来解决这个问题,知道哪些单词被忽略,或者这些单词被映射到哪些操作,可以帮助用户决定是否信任系统的响应。

4abb2bc1b2e85dfb3aa3d03725b4f704.png

综合梯度IG

我们使用一种叫做综合梯度(IG)的归因技术来分离问题单词,深度学习系统使用该单词来产生答案。

假设函数

aed22fd7e184983919aa6c4d797579a0.png

表示深层网络,并且输入x=(x1,…xn)∈Rn。相对于基准输入x’的输入x的预测attribution是向量AF(x,x’)=(a1,…,an)∈Rn,其中ai是Xi对预测F(x)的贡献。人们可以认为F是特定反应的概率。x1,…xn是疑问词,确切地说,它们是这些术语的向量表示。归因a1,…,an是对概率F的变量x1,…xn的影响/责任分配。

注意,attribution是相对于称为基线的特殊、非信息输入定义的。在本文中,我们使用一个空问题作为基线,即对应于填充值的一系列单词嵌入。注意,基线x0的上下文(图像、表或段落)被设置为x的上下文;只有问题被设置为空。现在我们描述IG如何产生attribution。

直观地,当我们在基线和输入之间进行插值时,预测沿着轨迹移动,从不确定性到确定性(最终概率)。在这个轨迹上的每个点,可以使用函数F相对于输入的梯度,将概率的变化归因于输入变量。IG仅仅使用路径积分来聚集概率相对于沿着该轨迹的输入的梯度。

定义1(综合梯度):给定输入x和基线x’,沿着第i维的积分梯度定义如下。

e7861b1ef472e09579329b7f58c27de1.png

IG满足归因的输入和基线间概率差分输入的总和。如果所有其他变量确定,我们称之为uninfluential,它的变化不改变输出概率。IG满足uninfluential变量不会得到任何attribution。相反地,influential变量总是得到一些变attribution。两个函数F1和F2的线性组合的是F1和F2的一个线性组合的attribution。因此IG可以使对称变量得到相等的attribution值。

在本工作中,我们通过问题扰动验证IG的使用。我们观察到扰动高attribution词会改变网络的回答,相反地,扰动低attribution词不会改变网络的回答。我们使用这些观测结果通过具备高attribution的泛词(例如,“a”,“the”)或低attribution的内容丰富词的干扰实例来对网络进行攻击。

图像问答。视觉问答任务需要一个系统来回答关于图像的问题(图1),我们分析了深度网络,在验证集上达到61.1%的准确度(现有技术达到66.7%)。本文选择这个模型,因为它易于再现。

VQA 1.0数据集由204721幅图像(每幅图像3个问题)上提出的614163个问题组成。这些照片是从COCO拍摄的,这些问题和答案是众所皆知的。

在Kazem的网络中将问答作为分类任务,其中类是训练数据中3000个最频繁的答案。输入问题被标记、嵌入和馈送到多层LSTM。LSTM的状态关注图像的特征化版本,并最终在答案类上产生概率分布。

观测:上图示出了attribution的可视化。注意,很少有词有很高的贡献。我们发现,改变问题中的低支持率单词不会改变网络的答案。例如,下面的问题仍然返回“very”作为答案:“how spherical are the white bricks on either side of the building”、“how soon are the bricks fading on either side of the building”、“how fast are the bricks speaking on either side of the building”。

通过实例分析,我们发现,高attribution的词大多是诸如“there”、“what”、“how”、“doing”之类的词——它们在句子中通常不那么重要。在稳定性测试中,我们描述了一个测试来测量网络依赖于这种单词的程度。我们还发现,问题中的信息性词汇(例如,名词)往往得到非常低的attribution,展示了部分网络的弱点,并描述利用这种弱点进行各种攻击。

稳定性测试:下图显示了随着这个孤立集的大小从0变化到5305,精度如何变化。我们发现,仅一个字就足以使模型达到其最终精度的50%以上。那个词是“color”。

f538962f4c0de45c1295e1cc51d0a54e.png

注意,即使将空问题作为输入传递到网络,其准确度仍保持在其原始准确度的44.3%左右。这表明该模型在很大程度上依赖于产生答案的图像。

精度随隔离集的大小单调递增(几乎)。孤立组中的前6个单词是“color”、“many”、“what”、“is”、“there”和“how”。我们怀疑像这样的通用词被用来确定的类型,然后网络使用该类型在它可以给图像的几个答案中进行选择。

主题消融攻击:我们用一个特定的名词替换了问题的主题,该名词在问题之间始终接受较低的attribution。然后,我们确定,在网络最初正确回答的问题中,在消融之后得到相同答案的百分比是多少。我们对不同的名词重复这个过程,具体地说,“fits”、“childhood”、“copyrights”、“mornings”、“disorder”、“importance”、“topless”、“critter”、“jumper”、“tweet”,并对结果进行平均。

我们发现,在网络最初正确回答的一组问题中,尽管主题被替换,75.6%的问题都返回了相同的答案。

前缀攻击:我们将上下文无关的短语附加到问题中。这些短语是使用网络认为重要的通用单词手工制作的。下表(上半部分)显示了三个前缀——“in not a lot of words”、“what is the answer to”和“in not many words”的准确度。所有这些短语几乎使模型的精确度减半。三次攻击的结合使模型的精度从61.1%下降到19%。

我们注意到,为网络计算的attribution在制作前缀方面是至关重要的。例如,我们发现其他前缀,如“tell me”、“answer this”和“answer this for me”不会降低多少精度;参见下表(下半部分)。这三个无效前缀的联合将准确率从61.1%降低到只有46.9%。每个attribution中,这些前缀中存在的词不被网络认为重要。

d4c01393558fc2d6d42d9c6d33708649.png

表格问答。我们基于WikiTableQuestion基准数据集分析表格问答任务。该数据集从维基百科爬取的2108个表中提取出22033个问题。答案是表单元格的内容或一些表聚合。在表上执行QA模型将问题转换为结构化程序(类似于SQL查询),然后在表上执行该程序以产生答案。我们分析了NP模型,即,使用最终答案而不是正确的结构化程序进行监督。它在验证集上达到33.5%的准确度。

NP将输入转换为由四个操作符和表列选择组成的结构化程序。这种程序的一个例子是“reset(score)、reset(score)、min(score)、print(name)”,其中输出是得分最低的人的姓名。

观测:我们将IG应用到attribution运算符和列选择来提问。NP对输入进行预处理,并且只要适用,就将符号tm_token、cm_token附加到问题和相关表格高度匹配的问题中。我们使用对齐矩阵来可视化attribution;它们通常用于翻译模型的分析(下图)。

1625bc5afcb076c07962f7d49aa00b32.png

过稳定性测试:我们通过查看作为词汇表大小函数的准确性来检查NP中的过稳定性。我们将表匹配标注tm_token、tm_token和新词(unk)作为词汇表的一部分。结果如下图。只有5个单词(以及列选择先验)就足够使模型在验证集上达到其最终精度的50%以上。这五个词是:“many”, “number”, “tm token”, “after”和“total”。

问题级联攻击:在这些攻击中,我们可以用上下文无关的后缀或前缀短语来提问。这些短语是为操作员选择无关的触发词精心制作的。我们手动来确保这些短语是上下文无关的。

下表描述了我们的结果。前4个短语使用不相关的触发词,导致准确性的大幅下降。例如,第一个短语使用“not”,它是“next”、“last”和“min”的触发器,第二个短语使用“same”,它是“next”和“mfe”的触发器。这四个短语组合在一起,使模型的准确率从33.5%下降到3.3%。前两个短语单独的准确性下降到5.6%。

4b3493f45062a59bb473b3214c0ac2f3.png

停用词删除攻击:我们发现,有时操作员是根据诸如“a”、“at”、“the”等停用词来选择的。操作符“next”在“at”字上触发。从问题中删除单词“at”会改变操作符的选择,并导致NP返回错误的答案。我们在验证数据集中从最初正确回答的问题中删除停用词,并在其上测试NP。

行重排序攻击:我们发现NP经常通过利用表的一系列操作来得到正确的问题。例如,对于“which nation earned the most gold medals”的问题,操作是“reset”, “prev”, “first”和“print”。“prev”操作符排除了答案的最后一行。它得到正确答案有两个原因:(1)答案不在最后一行,并且(2)行按列“gold”中的值排序。

一般来说,问答系统不应依赖于表中的行排序。为了量化这种偏差的程度,我们使用WikiTableQuestion验证数据集的扰动版本,并评估了它上的现有NP模型(这里没有再训练)。我们发现NP的准确率只有23%,而原始验证数据集的准确率有33.5%。

阅读理解。阅读理解任务包括从上下文段落中找出一个跨度作为问题的答案。用于机器阅读理解的SQuAD数据集包含107.7K个查询-答案对,其中87.5K用于训练,10.1K用于验证,以及另外10.1K用于测试。在这个问题上,深层学习方法相当成功,Yu等人的最新F1评分为84.6。我们对模型进行了分析。例子如下表。

b4bfd61672a2a80701bed343380e5e93.png

首先,问题中一个有意义的词得到低/零attribution,而反过来添加的句子修改了这个词。例如,在问题“Who did Kubiak take the place of after Super Bowl XXIV?”中,“Super”这个词的attribution很低。加上“After Champ Bowl XXV, Crowton took the place of Jeff Dean”改变了模型的预测。第二,在上下文中不存在的一个有意义的词。比如在“Where hotel did the Panthers stay at?”的问题上,“hotel”是不存在于上下文中的。加上“The Vikings stayed at Chicago hotel.”,改变了对模型的预测。

反过来,当附加句子中没有高attribution的有意义的问题单词时,反义句是不成功的。例如,“Where according to gross state product does Victoria rank in Australia?”,“Australia”具有较高的attribution。加上“According to net state product, Adelaide ranks 7 in New Zealand.”,并没有扰乱这个模型。然而,在对抗句中保留“Australia”确实改变了模型的预测。

预测攻击的有效性:接下来,我们将attribution与附加攻击的效能进行关联。我们分析了1000(问题,攻击短语)实例,508个能够欺骗模型,而492个则不能。我们把这些例子分成两组。第一组有名词或形容词在疑问句中具有较高的定语,但在对抗句中缺失的例子,而其余的在第二组中。我们的attribution分析表明,我们应该在第一组发现更多失败的例子。事实的确如此。第一组有63%个失败的例子,而第二组只有40%个。

4abb2bc1b2e85dfb3aa3d03725b4f704.png

总结

我们使用attribution技术分析了三个问答模型。attribution帮助我们比传统方法(基于验证集)更有效地识别这些模型的弱点。我们相信,使用attribution的工作流可以帮助开发人员更有效地迭代模型质量。

虽然本文中的攻击看起来不切实际,但它们确实暴露了影响QA产品使用的真正弱点。对重要问题术语的依赖是不安全的。我们还认为,其他QA模型可能共享这些弱点。本文基于attribution的方法可以直接用于衡量这些问题的程度。此外,我们的扰动攻击用作attribution的效果验证。

论文下载链接:

http://aclweb.org/anthology/P18-1176

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
4S店客户管理小程序-毕业设计,基于微信小程序+SSM+MySql开发,源码+数据库+论文答辩+毕业论文+视频演示 社会的发展和科学技术的进步,互联网技术越来越受欢迎。手机也逐渐受到广大人民群众的喜爱,也逐渐进入了每个用户的使用。手机具有便利性,速度快,效率高,成本低等优点。 因此,构建符合自己要求的操作系统是非常有意义的。 本文从管理员、用户的功能要求出发,4S店客户管理系统中的功能模块主要是实现管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理,用户客户端:首页、车展、新闻头条、我的。门店客户端:首页、车展、新闻头条、我的经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与4S店客户管理系统实现的实际需求相结合,讨论了微信开发者技术与后台结合java语言和MySQL数据库开发4S店客户管理系统的使用。 关键字:4S店客户管理系统小程序 微信开发者 Java技术 MySQL数据库 软件的功能: 1、开发实现4S店客户管理系统的整个系统程序; 2、管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理等。 3、用户客户端:首页、车展、新闻头条、我的 4、门店客户端:首页、车展、新闻头条、我的等相应操作; 5、基础数据管理:实现系统基本信息的添加、修改及删除等操作,并且根据需求进行交流信息的查看及回复相应操作。
现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本微信小程序医院挂号预约系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此微信小程序医院挂号预约系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的MySQL数据库进行程序开发。微信小程序医院挂号预约系统有管理员,用户两个角色。管理员功能有个人中心,用户管理,医生信息管理,医院信息管理,科室信息管理,预约信息管理,预约取消管理,留言板,系统管理。微信小程序用户可以注册登录,查看医院信息,查看医生信息,查看公告资讯,在科室信息里面进行预约,也可以取消预约。微信小程序医院挂号预约系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值