Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

刘天赐 刘晓坤编译

IBM、哈佛联合提出Seq2Seq-Vis:机器翻译模型的可视化调试工具

语言翻译中出现的细微错误对于人类而言常常是很明显的,并会导致差异很大的结果。例如,之前由于 seq2seq 翻译系统将「早上好」错误的翻译为了「攻击他们」,导致错误的逮捕事故。深度学习模型的不可解释性更是普遍存在的问题。为此,IBM 研究院、Watson AI Lab、哈佛 NLP 团队和哈佛视觉计算团队联合研发了一款针对 seq2seq 模型的可视化调试工具 Seq2Seq-Vis,使用户可以可视化模型执行过程中的注意力、单词预测、搜索树、状态轨迹和近邻词列表等,从而更高效地进行分析和调试。

  • 项目演示地址:http://seq2seq-vis.io/
  • GitHub 地址:https://github.com/HendrikStrobelt/Seq2Seq-Vis

图 1:(左图)Seq2Seq-Vis 中翻译视图(Translation View)示例:输入语句为「our tool helps to find errors in seq2seq models using visual analysis methods」,目标是将其翻译为德语。编码器和解码器之间对单词「seq2seq」的关注(attention)是正确的(红色高亮线条),但目标语言的语言词典 (language dictonary) 中并没有对应单词。观察「seq2seq」的编码器近邻词(右图)可以发现,另一个未知单词「hunki」与其距离很近。各种按钮能够支持用户完成更深层分析的交互需求。

介绍

基于神经网络深度学习方法在诸多人工智能任务中都表现出了惊人的提升效果,但复杂的结构也令人们很难解释其预测结果。基于注意力的 sequence-to-sequence models (seq2seq) [3, 49],通常也称为编码器-解码器(encoder-decoder)模型,就是这一趋势的范例。在很多诸如机器翻译自然语言生成、图像描述以及总结的应用场景中,seq2Seq 模型都表现出了当前最优的效果。最新研究表明,这些模型能够在特定的重要场景下,实现人类级别的机器翻译效果。

seq2seq 模型的强大性来自于其为对序列的处理和预测提供了一个高效的监督方法,而无需对源序列和目标序列间的关系予以人工指明。在同一个模型中,系统能够学会对源序列句进行重排、转换、压缩或扩展,进而输出目标序列。上述变换是通过一个巨大的内在状态表征实现对源序列的编码及之后的解码工作的。只要数据量充足,seq2seq 模型就能为预测序列的学习提供一个通用的实现机制。

虽然 seq2seq 模型的影响已经很明确了,但深度学习模型导致的复杂程度和不确定性的增加也带来了问题。通常,在给出预测时,这些模型的表现都像是一个黑箱,使得追踪错误源头也变得困难。而内部的潜在表征也使人们难以分析这些模型,因为它们将数据转化成了和原始序列相差甚远的结果。虽然这些性质是很多深度学习技术所共有的,但对于人类读者而言,语言中的错误会非常明显。例如,由于 seq2seq 翻译系统将「早上好」错误的翻译为了「攻击他们」,导致了一次错误的逮捕,最终成为一起广为人知的事故 [12]。除此之外,seq2seq 模型中更常见却也值得担忧的失败包括:机器翻译系统完全曲解了一句话,图像描述系统生成了错误的描述,或语音识别系统给出了错误的文本。

在理想情况下,模型开发者希望部署能够完全理解、相信其产生结果是正确的系统。但目前对于深度学习模型而言,这个目标依然难以实现。同时研究者相信,在「以一种通用的、可复现的方式实现表象化、可视化 seq2seq 系统中的错误」这一重大挑战面前,可视化分析社区能够有所帮助。

研究者开发了 SEQ2SEQ-VIS:一个能够通过实现以下三个目标,进而满足上述要求的可视化分析工具。

  • 检查模型决策:SEQ2SEQ-VIS 允许用户理解、描述并具体化 seq2seq 模型的错误,覆盖模型全部的五个阶段:编码器、解码器、注意力、预测、束搜索。

  • 连接样本和决策:SEQ2SEQ-VIS 展示了 seq2seq 模型基于潜在状态及其相关近邻,从训练数据中学到了什么。

  • 测试可选决策:SEQ2SEQ-VIS 提供了灵敏的交互方法,可以实现对模型内部进行操作。

图 1(或更完整的图 7)展示了 SEQ2SEQ-VIS 的全貌。它整合了模型组件的可视化(图 1 左)、特定样本的内在表征(图 1 中),和在一个由预先计算好样本组成的巨大离线语料库上实现的最近邻搜索(nearest-neighbor lookup)。

图 2:seq2seq 模型通过五个阶段,将源序列翻译为目标序列:(S1)将源序列编码为潜在向量,(S2)将其解码为目标序列,(S3)编码器和解码器之间实现注意,(S4)在每个时间步骤中,预测单词概率,(S5)(通过束搜索)搜索最佳翻译。

图 7:Seq2Seq-Vis 概述。两个重要视图:(a)翻译视图(Translation View)和(b)近邻视图(Neighborhood View)分别推动了不同的分析模式。翻译视图提供了(c)注意力的可视化,(d)每个时间步骤中 top-k 个单词预测,以及(e)束搜索树。近邻视图通过(f,g)状态轨迹的投影以及(h)针对一个特定模型状态的最近邻列表,更进一步展示模型学到了什么。

使用案例

图 10:一个日期转换模型翻译效果的比较。输入序列「March 21, 2000」和「May 21, 2000」仅有几个字符不同。(顶部)用于预测正确月份「3」和「5」的注意力集中在了其差异「y」和「rc」上。(左下)轨迹视图展示了编码器状态变化中的这一差异。(右下)近邻列表显示,在输入 M 后,模型依然未作出决策。

图 11:抽象总结的使用案例。输入句子「Russian defense minister Ivanov called Sunday for the creation of a joint front for combating global terrorism(俄罗斯国防部长 Ivanov 于周日呼吁联合抵抗全球性的恐怖主义)」可以有不同的总结形式。图中黄色方格展示了不同的前缀解码(prefix decode)设置下的抽象结果。顶部:无约束抽象;中间:将预测从「for」改成「on」后,为保证语法正确,导致模型自动加上了「world leaders」;底部:将第一个单词从「Russian」改为「Moscow」或「Russia」,句子进一步压缩后,依然保留了句意。

图 12:利用 WMT』14 数据完成语言翻译的使用案例。(顶部)注意力图展示了目标单词「he」的注意力并非仅集中在解码器「er」部分,而是同时注意力了后面的单词,甚至注意了距离很远的动词「gesprochen(说)」。解码器的状态轨迹(左下)显示「he」和「spoke」的距离非常接近。近邻列表表明,模型设置了一个阶段,其中预测「spoke」为下一个单词。

图 13:一个欠训练的英语-德语模型。在欠训练或欠参数化模型中,重复是一个很常见的现象。轨迹象形图显示,在「in Stuttgart」的重复中,解码器状态在同一个区域内在「in」和「Stuttgart」交替变化,直到将它们分离出来。

论文:SEQ2SEQ-VIS : A Visual Debugging Tool for Sequence-to-Sequence Models

论文地址:https://arxiv.org/abs/1804.09299

神经 Sequence-to-Sequence 模型已经通过许多序列预测任务证明了其具有准确、稳健的性质,也已经成为文本自动翻译的标准方法。Sequence-to-Sequence 模型的运行包含五个黑箱阶段,包括将源序列编码到一个向量空间中,再将其解码为新的目标序列。如今这是标准过程,但和许多深度学习方法一样,理解或调试 Sequence-to-Sequence 模型是很困难的。在本文中,研究者实现了一个可视化分析工具,使用户可以通过训练过程中的每个阶段,与训练好的 Sequence-to-Sequence 模型进行交互。其目标包含识别已被学到的模式,并发现模型中的错误。

理论论文IBM哈佛机器翻译可视化Seq2Seq
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

最近邻搜索技术

最邻近搜索(Nearest Neighbor Search, NNS)又称为“最近点搜索”(Closest point search),是一个在尺度空间中寻找最近点的优化问题。问题描述如下:在尺度空间M中给定一个点集S和一个目标点q ∈ M,在S中找到距离q最近的点。很多情况下,M为多维的欧几里得空间,距离由欧几里得距离或曼哈顿距离决定。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

机器翻译技术

机器翻译(MT)是利用机器的力量「自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)」。机器翻译方法通常可分成三大类:基于规则的机器翻译(RBMT)、统计机器翻译(SMT)和神经机器翻译(NMT)。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

语料库技术

语料库一词在语言学上意指大量的文本,通常经过整理,具有既定格式与标记;事实上,语料库英文 "text corpus" 的涵意即为"body of text"。

语音识别技术

自动语音识别是一种将口头语音转换为实时可读文本的技术。自动语音识别也称为语音识别(Speech Recognition)或计算机语音识别(Computer Speech Recognition)。自动语音识别是一个多学科交叉的领域,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。由于语音信号的多样性和复杂性,目前的语音识别系统只能在一定的限制条件下获得满意的性能,或者说只能应用于某些特定的场合。自动语音识别在人工智能领域占据着极其重要的位置。

序列到序列技术

自然语言生成技术

自然语言生成(NLG)是自然语言处理的一部分,从知识库或逻辑形式等等机器表述系统去生成自然语言。这种形式表述当作心理表述的模型时,心理语言学家会选用语言产出这个术语。自然语言生成系统可以说是一种将资料转换成自然语言表述的翻译器。不过产生最终语言的方法不同于编译程式,因为自然语言多样的表达。NLG出现已久,但是商业NLG技术直到最近才变得普及。自然语言生成可以视为自然语言理解的反向: 自然语言理解系统须要厘清输入句的意涵,从而产生机器表述语言;自然语言生成系统须要决定如何把概念转化成语言。

推荐文章
暂无评论
暂无评论~