专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

误差分析(如何正确地做误差分析)

来源:小易整编  作者:小易  发布时间:2023-03-29 09:58
摘要:错误分析(如何正确进行错误分析)自然语言处理任务错误分析的现状但是目前人们是怎么做错误分析的呢?如果你翻翻自然语言处理顶级学术会议ACL的接收论文,基本上会看到这样的叙述:我们对100个样本问题进行了误差分析...我们随机选择了50个错误...

错误分析(如何正确进行错误分析)

误差分析(如何正确地做误差分析)

自然语言处理任务错误分析的现状

但是目前人们是怎么做错误分析的呢?如果你翻翻自然语言处理顶级学术会议ACL的接收论文,基本上会看到这样的叙述:

我们对100个样本问题进行了误差分析...

我们随机选择了50个错误答案,并将其分为六类...

我们找出了100个不正确的预测结果,并试图找出常见的错误类别...

……

显然,这一领域的研究人员都采用了这种方法:“我们随机选择了50到100个答案不正确的问题,并将其大致分为N组”。(斯坦福大学NLP小组负责人克里斯托弗·曼宁的画外音:恐怕在问答任务的论文中选择100个样本进行错误分析的惯例来自于我——起初我们想做200个,但我从未完成分配给我的那一半)

选择一些错误的样本进行分析似乎有些道理,不是吗?但实际上,这种做法有一个很大的问题。比如50到100的样本数量太少,一般只占总误差的5%。如此少量的样本很难代表真实的误差分布。如果某个关键的模型问题只是没有出现在用于错误分析的抽样样本中(比如聊天助手机器人会对一些特定的句子给出不恰当的回答),然后实际部署还没有修复的模型,结果肯定很可怕。

这还不是全部。小样本只是通常实践中的之一个问题。在ACL 2019论文《博学:可扩展、可重现、可测试的错误分析》中,作者详细列举了NLP错误分析中的诸多关键挑战,同时也提出了三个原则。希望你能让错误分析更准确,有更好的可重复性、可扩展性和可测试性。作者还设计了Errudite,这是一个实践这些原则的交互式工具,它也可以逐个处理发现的问题。

作者们还写了一篇介绍博客,解释为什么目前基于少量样本的人工和主观错误分析容易得到模糊和有偏见的分析,以及错误的原因可能是错误的,以及如何借助Errudite避免这些错误。他们的论文中有更多的例子。雷锋网AI技术评论整理了介绍博客全文。

从实际例子开始。

我们需要对BIDAF(https://allenai . github . io/bi-att-flow/)这个大家熟知的机器阅读理解的基准模型做一个错误分析。在这个任务中,首先,给定一个问题和一段文本,机器阅读理解模型需要找到一段能够正确回答问题的文本。

在这个来自小队数据集的例子中,Murray Gold用粗体字创建了2005年的《神秘博士》特刊。

作为语言理解最重要的测试任务之一,机器阅读理解中的错误分析非常关键,但也存在许多困难:研究人员都希望发现高级模型中的弱点并加以改进。然而,由于模型的输入(问题、文本段落)和输出(答案)是非结构化文本,因此很少有特征可用于分析和解释数据集。BiDAF是研究机器阅读理解任务的学者非常熟悉的一个模型,下面的错误分析例子都来自研究者对BiDAF的真实分析。

在刚才的这个例子中,BiDAF做了一个错误的预测,给出的答案是约翰·戴布尼(下划线)而不是默里·戈尔德。我们希望能从这个误差中做一些归纳,更全面的了解模型的性能。

在分析这个误差的时候,我们会问的之一个问题是:为什么模型会出现这个误差?一位专家给出了一个噪音词猜想:BiDAF擅长将问题匹配到各种命名实体类别,但如果同时出现其他同类型实体,BiDAF很容易受到干扰。在上面的例子中,我们问的问题是“谁”。比达夫知道我们需要一个人的名字,他回答了一个人的名字,但不是正确的名字。

有了这个假设,我们需要问的下一个问题是,“这个模型经常犯这样的错误吗?探索猜想的普遍性需要研究更多相似的样本。但是,正如我们上面所说的,如果我们要探索整个数据集,这些非结构化文本中可用的特征太少,所以研究者通常的做法是手动标记一些错误样本,并将其划分到不同的组中。

这种方法的问题是,不同群体的定义是主观的,不同的人会提出不同的分组方式。比如另一个例子,一个问题“什么时候”的标准答案是“他上大学的时候”,而模型给出的答案是“1996年”,这是错误的年份。有人会觉得这是一个符合噪音词猜想的问题。毕竟问题问的是时间,和模型给的答案类型(也是时间)相匹配。但也有人认为应该属于其他错误类别。毕竟,标准答案“在大学期间”并不是一个可识别的命名实体。如果您只是浏览这个错误示例的名称和文本描述,很可能您甚至不会意识到这种差异。

事实上,论文作者发现,人与人之间的这种差异/不一致,即使只使用简单的规则来定义不同的错误组,也会发生:作者在之前发表的错误分析中发现了一种错误类型及其描述,然后要求当前的专家重复实验。因此,他们分配给这组人的错误数量差异很大,从13.8%到45.2%不等。这更明显地反映了人工标注的模糊性。

针对这种情况,作者提出了之一个原则:伪猜想必须通过清晰的描述来准确定义。

原则1:准确性

为了避免人的主观性和提高准确性,Errudite使用特定领域的语言来定量描述不同的示例。

简单来说,这种特定于任务的语言使用一系列强大的属性提取器,在附加辅助运算符的帮助下解决特定的错误(属性提取器、目标和运算符)。比如一个问题可以解决的长度,长度要大于20。这样,研究者就可以客观系统地将大量的错误实例按照特定的模式进行分组,得到某些错误的准确频率。比如下图就是这种语言对“干扰词猜想”的准确描述,可以把“他上大学的时候”这个例子排除在这个分类之外。

原则2:覆盖所有数据。

在BiDAF的所有错误中实现该过滤器后,共找到192个符合“噪音词猜想”的例子,即标准答案和错误答案的命名实体类型相同,然后由模型给出错误实体。值得注意的是,在达到这种准确度的基础上,特定任务语言的应用还可以大大扩展错误分析的规模:与分析50到100个错误样本的常见做法相比,单个错误类别的样本量现在已经达到了192个。这也减少了采样误差。

从总量上看,这192个错误样本占全部错误的6%,这个噪声词猜想似乎是可以验证的。有了具体的数据之后,错误分析的说服力就变得强多了吧?

然而,当我们实现了所有步骤中的过滤器并构建了详细的分组后,我们实际上会发现一个全新的画面:BiDAF可以在所有样本的68%中给出正确的实体;对于标准答案是一个实体的样本,模型的准确率会提高到80%;当文本中存在其他同类型实体时,BiDAF的准确率仍为79%;当用它来预测一个类型正确的实体时,其准确率高达88%,远高于所有样本。这意味着当实体类型匹配且存在噪声词时,模型的性能优于整体性能,这并不是模型性能的短板。所以,如果你只是发现了某种错误,然后决定先解决它,你可能需要重新考虑,因为你很可能忽略了模型表现非常糟糕的情况。

因此,这种特定于领域的语言可以帮助分析整个数据集,包括检查没有错误的样本。这样的误差分析更加系统化,可以支持更大的规模;和只看一个小样本相比,你得到的结论可能是完全不同的。

那么,第二个原则可以正式表述为:错误频率的分析要在整个数据集上进行,包括真正例。

原则三:检验错误猜测,验证因果关系。

现在我们已经设置了干扰词的分组。然而,在错误发生的同时有一个干扰词并不一定意味着该干扰词是错误的根本原因。回到前面的例子,我们可以简单地认为错误的根本原因是噪音词,但也可能是因为我们需要进行多句推理,将神秘博士与系列联系起来,或者还有其他原因。

这导致了我们目前面临的另一个问题:我们很难有效地隔离某个错误的根本原因。为了找到答案,我们需要第三个原则。

原则3:错误的猜测应该被明确地测试和验证。

在Errudite的帮助下,作者想回答这个问题:这192个错误都是因为噪音词吗?验证方法是提出并验证一个相关的假设问题:“没有这个噪声词,模型能给出正确答案吗?”作者使用改写规则和反事实分析来寻找答案。

根据特定于领域的语言,Errudite可以按照一定的规则重写一个组中的所有实例。比如这里,为了验证干扰词是否是根本原因,根据重写规则,将文本中的干扰词替换为无意义的占位符“#”,这样就不会再次被检测为实体。

重写完成后让模型再次预测。在前面的神秘博士的例子中,尽管错误答案约翰·戴布尼已被替换为“#”,该模型仍然给出了另一个错误答案Ron Grainer。似乎另一个噪声词仍然混淆了模型。

对于分组中的其他样本,2-friend资源 *** 的9%的案例模型会给出另一个相同类型的不正确实体(另一个干扰词);在48%的情况下,模型给出了正确的预测,而确实是这部分样本中的噪声词带来了错误的预测;剩下的23%,模型给出的预测和之前一样——只不过由于现在那些字符已经换成了“#”,模型的预测结果会包含“#”字符,而这个“#”字符在这个优优资源网中是没有实际意义的!可以推测,这可能是因为问题和预测的答案高度重合,所以模型实际做的事情更接近于直接的字符匹配,而不是寻找实体。这种反事实分析得出的结论,不能仅仅通过分组就得出。

精确+可再现+可重复使用

在上面的错误分析过程中,我们需要用准确的查询语句来构造属性、分组和重写规则。经过对BiDAF的分析,我们发现在有噪声词的情况下,它的性能并没有那么差,一些我们认为是噪声词引起的问题还有其他的根本原因。

此外,一个准确的查询语句还有一个很大的优势,就是可以很容易地与他人分享,与实验结果一起重现,应用于其他模型甚至其他任务。

文章最后还指出,该工具具有清晰、易用、多功能的图形用户界面,并具有语句演示、属性分布图等实用功能。

摘要

常见的(但有偏见的)错误分析来自

主观错误分组+小样本+只关注错误情境+没有测试根本原因。

Errudite的误差分析(改进)

准确且可重复的分组+分析整个数据集+包括正反例+通过反事实分析测试进行验证。

自然语言处理领域外误差分析的启示

目前Errudite实现的(尤其是领域特定语言部分)只针对NLP任务。然而,机器学习系统经常需要处理非文本数据。作者认为,即使他们的实现目前很难扩展到其他领域,但他们的三个原则可以也必须应用到其他领域,帮助大家部署正确的模型,更深入地挖掘正确的研究方向。

基于这三个原则创建一个新工具并不困难,只要它能支持相应的三点:

使用领域特定语言,通过可编辑修改的基础构件优优资源网完成准确的样本分组;

扩大错误分析规模,通过自动过滤语句,分析包括正反例在内的所有样本,提供可视化统计数据;

能够通过规则重写样本,从而通过反事实分析来验证错误的猜测。


本文地址:百科常识频道 https://www.neebe.cn/changshi/943087.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科常识
小编:小易整编
相关文章相关阅读
  • 拉杆箱材质选择,如何购物省心(为旅途做好准备)

    拉杆箱材质选择,如何购物省心(为旅途做好准备)

    拉杆箱材质选择,如何购物省心(为旅途做好准备)随着旅游的普及,拉杆箱已经成为旅行出行中必不可少的装备之一。而在选择拉杆箱时,材质是一个非常重要的考虑因素。目前市场上主要有PC、ABS、铝合金等材质可供选择。那么如何选择适合自己的材质呢?以下...

  • 服装收纳技巧,衣服的正确叠法(让衣柜更整洁)

    服装收纳技巧,衣服的正确叠法(让衣柜更整洁)

    服装收纳技巧,衣服的正确叠法(让衣柜更整洁)衣柜是每个人生活中必不可少的一个家具。但是,很多人经常会因为杂乱无章的衣柜而感到不满和头痛。如果您也是这样的情况,那么可以考虑使用一些收纳技巧和衣服的正确叠法,让您的衣柜更加整洁。首先,收纳技巧是...

  • qqid身份卡怎么设置(id身份卡如何修改)

    qqid身份卡怎么设置(id身份卡如何修改)

    喜得利2023-05-01经验11今天给各位分享qqid身份卡怎么设置的知识,其中也会对id身份卡如何修改进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!qqid过了90天为什么改不了qqid过帆...

  • 全面消灭蚊子可不可行?专家分析(消灭所有蚊子会怎样)

    全面消灭蚊子可不可行?专家分析(消灭所有蚊子会怎样)

    好助手百科2023-05-01财经5本篇文章给大家谈谈全面消灭蚊子可不可行?专家分析,以及消灭所有蚊子会怎样对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。全国人大代表提议全面消灭蚊子,蚊子的存在究竟有没有合理性...

  • 自动档汽车档位(如何正确使用自动挡汽车档位)

    自动档汽车档位(如何正确使用自动挡汽车档位)

    帝国单机2023-05-02经验3本篇文章给大家谈谈自动档汽车档位,以及如何正确使用自动挡汽车档位对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。自动挡都有哪些档位呢?自动挡有最基本的四个档位,即P挡、R挡、N挡...

  • 如何保障人民钱包?报告中这样表述(保障人民利益的实现的有效方式)

    如何保障人民钱包?报告中这样表述(保障人民利益的实现的有效方式)

    好助手百科2023-05-02财经3本篇文章给大家谈谈如何保障人民钱包?报告中这样表述,以及保障人民利益的实现的有效方式对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。十七大报告中保障人民哪四个权利?健全民主制度...

  • 化妆品试用装(化妆品试用装过期该如何处罚)

    化妆品试用装(化妆品试用装过期该如何处罚)

    好助手百科2023-05-02财经3今天给各位分享化妆品试用装的知识,其中也会对化妆品试用装过期该如何处罚进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!化妆品撤柜,礼盒,试用装是什么撤柜是退货的...

  • 上银转债价值分析(上银转债怎么样)

    上银转债价值分析(上银转债怎么样)

    好助手百科2023-05-02财经3本篇文章给大家谈谈上银转债价值分析,以及上银转债怎么样对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。一品转债价值怎么分析?上银转债价值分析一、转股价值较低,破发仍有可能由于转...

  • 周排行
  • 月排行
  • 年排行

精彩推荐