BERT的成功是否依赖于虚假相关的统计线索?-精品文档资料整理.docx
《BERT的成功是否依赖于虚假相关的统计线索?-精品文档资料整理.docx》由会员分享,可在线阅读,更多相关《BERT的成功是否依赖于虚假相关的统计线索?-精品文档资料整理.docx(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、BERT的成功是否依赖于虚假相关的统计线索? 作者 | 李理 来源|个人博客 导读 本文介绍论文Probing Neural Network Comprehension of Natural Language Arguments 讨论BERT在ACRT任务下的成绩是否依赖虚假的统计线索 同时共享一些个人对目前机器学习尤其是自然语言理解的看法。 目录 论文解读 AbstractIntroduction任务描绘以及BaselineBERT统计线索Probing实验对抗测试数据补充一点相关讨论 观点1(贴主orenmatar)观点2(neato5000)观点3(lysecret)观点4(贴主oren
2、matar)观点5(dalgacik)观点6(gamerx88)观点7(fiddlewin)观点8(lugiavn)作者观点 论文解读 Abstract BERT在Argument Reasoning Comprehension Task(ARCT)任务上的准确率是77% 这比没受过训练的人只底3个百分点 这是让人惊讶的好成绩。但是我们(论文作者)发现这么好的成绩的原因是BERT模型学习到了一些虚假相关的统计线索。我们分析了这些统计线索 发现很多其它的模型也是利用了这些线索。所以我们提出了一种方法来通过已有数据构造等价的对抗(adversarial)数据 在对抗数据下 BERT模型的效果根本等
3、价于随机的分类器(瞎猜)。 Introduction 论辩挖掘(argumentation mining)任务是找到自然语言论辩的构造(argumentative structure)。根据标注的结果分析 即使是人类来讲也是一个很难的问题。 这个问题的一种解决方法是关注warrant支持推理的世界知识。考虑一个简单的论证(argument) (1) 因为如今在下雨 (2) 所以需要打伞。而可以支持(1)到(2)推理的warrant是 (3) 淋湿了不好。 Argument Reasoning Comprehension Task, ACRT是一个关注推理并且期望模型发现隐含的warrant的任
4、务。给定一个论证 它包括一个Claim(论点)以及一个Reason 同时提供一个Warrant以及一个Alternative。其中Warrant是支持从Reason到Claim推理的世界知识 而Alternative是一个干扰项 它无法支持从Reason到Claim的推理。用数理逻辑符号来表示就是 注意 ACRT数据集提供的Alternative一定能推出相反的结论。假如我们找一个随机的Alternative 它不能推导出C 但是也不一定能推导出。而这个数据集保证两个候选句子中一个是Warrant(一定能推导出C) 而另一个Alternative一定能推导出。这个特性在后面的构造adversa
5、rial数据集会非常有用。 下面是ACRT数据集的一个例子 ClaimGoogle is not a harmful monopolyReasonPeople can choose not to use GoogleWarrantOther search engines dont redirect to GoogleAlternativeAll other search engines redirect to Google 论点是 Google不是一个寡头垄断。原因是 人们可以不使用Google。Warrant是 其它的搜索引擎不会重定向到Google。而Alternative是 其它的搜索引
6、擎会重定向到Google。 因为其它搜索引擎不会重定向到Google 而且人们可以不使用Google 因此Google就不是一个垄断者。 因此这是一个二分类的问题 但是要做出正确的选择除了理解问题之外还需要很多的外部世界知识。在BERT之前 大局部模型的准确率都是达不到60%的准确率 而使用BERT可以到达77%的准确率 如下表所示图 ACRT任务上Baseline以及BERT的效果 这比没有训练过的人只低3个点 这是非常让人震惊的成绩。因为训练数据里都没有提供这些世界知识 假如BERT真的表现这么好 那么唯一的解释就是它通过无监视的Pretraining从海量的文本里学到了这些世界知识。 为
7、了研究BERT的决策 我们选择了那些屡次训练BERT都比拟容易正确预测的例子来分析。根据SemEval-2018 Task 12: The Argument Reasoning Comprehension Task Habernal等人在SemEval的任务上的做了类似的分析 以及他们的分析类似(参考后面作者的观点) 我们发现BERT利用了warrant里的某些词的线索 尤其是not。通过寻根究底(probing)的设计实验来隔离这些效果(不让数据包含这种词的线索) 我们发现BERT效果好的原因就是它们利用了这些线索。 我们可以改良ACRT数据集 因为这个数据集上很好的特性 因此我们可以把结论
8、反过来(加一个否认) 然后Warrant以及Alternative就会互换 这样就可以保证模型无法根据词的分布来猜想哪个是Warrant哪个是Alternative。而通过这种方法得到的对抗(adversarial)数据集 BERT的准确率只有53% 比随机瞎猜没有强多少 因此这个改良的数据集是一个更好的测试模型的数据集。 任务描绘以及Baseline 下列图是解决这个问题的通用的模型构造 它会独立的考虑每一个Warrant。 图 实验的模型构造 因此给定 模型最终会输出一个score 表示Warrant-j是正确的Warrant的可能性(logit) 然后使用softmax把两个logits
9、变成概率。注意这个模型是独立考虑每一个Warrant的 每个Warrant的打分是以及另外一个无关的 假如是相关的 那么模型的输入要同时包含 用数学公式描绘其计算经过为 模型?可以有很多种 这里的Baseline包括Bag of Vector(BoV)、双向LSTM(BiLSTM)、SemEval的冠军GIST以及人类。结果如上图所示。对于所有的实验 我们都使用了网格搜索(grid search)的方法来选择超参数 同时我们使用了dropout以及Adam优化算法。当在验证集上的准确率下降的话我们会把learning rate变为原来的1/10 最后的模型参数是在验证集上准确率最高的那组参数。
10、BoV以及BiLSTM的输入是300维的GloVe向量(从640B个Token的数据集上训练得到)。用于复现实验的代码、详细的超参数都放在作者的GitHub上。 BERT 我们的BERT模型如下列图所示。 图 处理argument-warrant对的BERT模型 我们把Claim以及Reason拼接起来作为BERT的第一个句子(它们之间没有特殊的分隔符 因此只能靠句号之类的线索 这么做的原因是BERT最多输入两个句子 我们需要留一个句子给Warrant) 而Warrant是第二个句子 它们之间用特殊的SEP来分割 而最前面是特殊的CLS。CLS本身无语义 因此可以认为它编码了所有输入的语义 然
11、后在它之上接入一个线性的全连接层得到一个logit两个Warrant都输入后得到最后用softmax变成概率。不熟悉BERT的读者可以参考BERT课程、BERT模型详解以及BERT代码浏览。 整个模型(包括BERT以及CLS上的线性层都会介入Fine-tuning) learning rate是最大的Epoch数是20 选择在验证集上效果最好的那组参数。我们使用的是Hugging Face的PyTorch实现。 Devlin等人在BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding里指出
12、 对于很小的数据集 BERT经常会无法收敛 进而得到很差的效果。ARCT是一个很小的数据集 它只有1,210个训练数据。在20次训练中有5次出现了这种情况 我们把它去掉后平均的准确率是71.60.04。这已经到达了之前最好的GIST的效果 而最好的一次是77%。我们只分析最好的77%的模型。 统计线索 虚假相关的统计线索主要来源于Warrant的不均匀的语言(词)分布 进而出现不同标签的不均匀词分布。固然还有更复杂的线索 这里我们只考虑unigram以及bigram。我们会分析假如模型利用这些线索会带来多大的好处 和这种现象在这个数据集上有多么普遍。 形式化的 假设 是第i个训练数据的第j(j
13、 0或1)个warrant的所有的Token的集合。我们定义一个线索(比方一个unigram或bigram)的applicability 为n个训练数据中只在一个标签里出现的次数。用数学语言描绘就是 用自然语言处理再来描绘一下就是 假如某个线索(unigarm/词或bigram)只在某个warrant里出现了 就加一。假如某个线索在两个warrant里都出现或都不出现 那么模型无法利用这个线索。最极端的 比方某个词只出如今warrant0里 那么模型可能就会学到错误的特征一旦看到这个词出现就倾向于把它分到warrant0。注意 这个特征不见得就是错误的特征 比方情感分类任务里某个词或某个词组(
14、bigram)出现了确实就容易是正面或负面的情感。 但是对于ACRT这样的任务来讲 我们一般认为(其实可能可以以argue)这样的特征是不稳定的 只有其背后的世界知识才是推理的真正原因 所以某些词(尤其是not这样的否认词)的出现与否与这个世界知识是无关的(我们可以用否认或肯定来表示同样的语义 我很忧伤以及我不快乐是一个语义 是肯定还是否认的表示方法与最终的结论无关)。 此外我们定义productivity 分母是 分子是里的并且模型分类以及线索是同时出现的数量。比方not在n个训练数据里单独出现了5次 有3次只出如今warrant0 有2次只出如今warrant1。假如not只出如今warr
15、ant0的3次里有2次模型预测正确(预测为0) not只出如今warrant1的2次里有1次预测正确(预测为1) 那么分子就是2 1 3 分母就是5 那么量是模型可能利用线索的上限 比方上面的例子 not单独出现了5次 模型预测正确了3次 那么not这个特征对于分类正确最大的奉献就是0.6。 最后我们定义简单来讲 productivity就是利用这个线索对于分类的好处 而coverage表示这个线索可以覆盖的数据范围。对于m(这里为2)分类的问题 假如那么讲明这个线索对于分类是有帮助的。productivity以及coverage最强的两个unigram线索是not这个词 它的producti
16、vity以及coverage如下列图所示。 图 not的productivity以及coverage 它的意思就是平均来讲 64%的数据都有not出现 假如只利用这个线索可以得到准确率为61%的分类结果。那么我们可以这么来得到一个分类器 假如not出现 我们就分类为0(假设训练数据中not出现更容易分类为0) 假如not不出现 我们就随机分类。那么这个分类器的准确率是多少呢 64%*61% (1-64%)*50% 0.57。根据前面的描绘 大局部分类器的准确率都没有超过0.6 而使用这样的特征就可以做到0.57。假如还有以及not类似的特征 而且它们不完全相关(有一定的额外信息) 那么再加上其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- BERT 成功 是否 依赖于 虚假 相关 统计 线索 精品 文档 资料 整理
限制150内