自然语言处理「十项全能」挑战

2020-08-01
    963浏览
自然語言處理「十項全能」挑戰

随着自然语言处理的发展,机器对人类语言的理解能力也为人机互动开启了新的视野。我们可以请Amazon语音助理Alexa把室内灯光调到百分之七十五的亮度,也可以请Google语音助理Duplex帮忙预约餐厅座位。然而机器是否「真正」理解语言中错综複杂的含意呢?自然语言处理「十项全能」的目标便是藉由情感分析、问答等能力的提升,增进机器对语言深藏意涵的掌握。

自然语言处理「十项全能」

自然语言处理「十项全能」(Natural Language Decathlon),目标是设计一个整合十项功能的模型 [1]:

自然语言处理「十项全能」挑战

十项功能範例(图片来源:参考资料[1])

图中数字对应下方文字描述。「问句」是要执行的功能,模型要从「内文」中寻找答案。「答案」之红字代表其为原文中的一段话,绿字为原文中的一个字,蓝字则是模型根据对文本的理解生成的答案

问答(Question Answering, QA):给定问题,从包含答案的资讯中找出答案

每项功能分别以 F1、準确率(Precision)、召回率(Recall)等衡量。而衡量整个模型的效果,则是将每项的分数加总,得到0~1000之间的分数(每一项为0~100 分)。

相较于分别针对每项功能设计的模型,「十项全能」问答模型的好处是不用预设特定参数,便能学习以「问答」的形式达成多种自然语言处理的目标。这不仅代表我们不再需要分别为每项功能设计并优化模型,也意味着模型可以处理机器学习的「zero-shot」问题──面对训练时没有出现过的任务,模型也能迎刃而解。

问答模型:边看题目,边找答案

为了更精确解读一段文字,Salesforce 研究人员提出了「动态关注网路」(Dynamic coattention network, DCN),根据输入的问句,以最合适的方式「读」一篇文章寻找答案 [3]。

自然语言处理「十项全能」挑战

DCN 架构:编码器与解码器(图片来源:参考资料[3])

DCN 的特色在于其编码器与解码器的设计:

1. 综合考量问句与文本内容的编码器(Coattentive encoder)

编码的精随在于文本的特徵表示并不是固定不变的,而是因输入的问句而异。这就好比我们做阅读测验时,若能看过题目再回文章找答案,将可更专注于与题目相关的资讯,降低答题的困难度并提升答对机率。Coattentive编码器也依循这个概念,由文件内容与问句分别产生每个字的向量表示,为每个字计算权重,再将文件与问句字跟字间的关联矩阵标準化后乘以权重,得到的向量相当于将问句投影到文件向量空间,综合考量的结果。

2. 动态解码器(Dynamic pointing decoder)

问答的答案通常是从文件中节录的某段话,所以找答案的过程可以想像是寻找这段话最佳的「起点」与「终点」。寻找过程中运用两个神经网路,计算每个字作为开头或结尾之「分数」高低,多次重覆执行以寻找最佳答案。

整合式、持续学习的模型

语言是充满弹性、能被灵活运用的媒介。同样地,AI 也需要「灵活」的脑袋来解读它。现今AI模型在自然语言处理个别任务上皆有不错的表现,不过若要让模型更流畅地对话,并理解文章前后文深层的意涵,则需要一个整合各项目标并「持续学习」的模型,以面对複杂度更高的挑战。期待更多像「十项全能」这类整合不同类型任务的模型,引领人机互动世代的发展。

编译来源

Richard Socher, “AI’s Next Great Challenge: Understanding the Nuances of Language”, Harvard Business Review (2018)

参考资料

上一篇: 下一篇:

随机文章