《中国人工智能学会通讯》——2.27 利用深度学习改进统计机器翻译

本文涉及的产品
文本翻译,文本翻译 100万字符
文档翻译,文档翻译 1千页
图片翻译,图片翻译 100张
简介: 本节书摘来自CCAI《中国人工智能学会通讯》一书中的第2章,第2.27节, 更多章节内容可以访问云栖社区“CCAI”公众号查看。

2.27 利用深度学习改进统计机器翻译

利用深度学习改进统计机器翻译的核心思想是以统计机器翻译为主体,使用深度学习改进其中的关键模块,如语言模型[1] 、翻译模型 [2] 、调序模型 [3] 、词语对齐[4]等。

深度学习能够帮助机器翻译缓解数据稀疏问题。以语言模型为例。语言模型能够量化译文的流利度,对译文的质量产生直接的重要影响,是机器翻译中的核心模块。传统的语言模型采用 n-gram方法,通过极大似然估计训练模型参数。由于这种方法采用离散表示(即每个词都是独立的符号),极大似然估计面临着严重的数据稀疏问题:大多数n-gram 在语料库上只出现一次,无法准确估计模型参数。因此,传统方法不得不使用平滑和回退等策略来缓解数据稀疏问题。但即使采用平滑和回退策略,统计机器翻译系统还是因为数据过于稀疏而无法捕获更多的历史信息,通常仅能使用 4-gram或者 5-gram 语言模型。

深度学习著名学者、加拿大蒙特利尔大学Yoshua Bengio 教授在 2003 年率先提出基于神经网络的语言模型[5] ,通过分布式表示(即每个词都是连续、稠密的实数向量)有效缓解了数据稀疏问题。美国 BBN 公司的 Jacob Devlin 等人于 2014年进一步提出神经网络联合模型(Neural NetworkJoint Models) [1] 。传统的语言模型往往只考虑目标语言端的前 n-1 个词。以图 1 为例,假设当前词是“the”,一个 4-gram 语言模型只考虑之前的三个词:“get”、“will”和“i”。Jacob Devlin 等人认为,不仅仅是目标语言端的历史信息对于决定当前词十分重要,源语言端的相关部分也起着关键作用。因此,其神经网络联合模型额外考虑五个源语言词,即“就”、“取”、“钱”、“给”和“了”。由于使用分布式表示能够缓解数据稀疏问题,神经网络联合模型能够使用丰富的上下文信息(图 1 共使用了 8 个词作为历史信息),从而相对于传统的统计机器翻译方法获得了显著的提升(BLEU 值提高约 6 个百分点),因此获得了自然语言处理领域重要国际会议 ACL 2014 的最佳论文奖。
image

对机器翻译而言,使用神经网络的另一个优点是能够解决特征难以设计的问题。以调序模型为例。基于反向转录文法的调序模型[6]是基于短语的统计机器翻译的重要调序方法之一,其基本思想是将调序视作二元分类问题:将两个相邻源语言词串的译文(1)顺序拼接或(2)逆序拼接。传统方法通常使用最大熵分类器,但是如何设计能够捕获调序规律的特征成为难点。由于词串的长度往往非常长,如何从众多的词语集合中选出能够对调序决策起到关键作用的词语是非常困难的。因此,基于反向转录文法的调序模型不得不仅基于词串的边界词设计特征[6] ,无法充分利用整个词串的信息。利用神经网络能够缓解特征设计的问题,首先利用递归自动编码器(Recursive Autoencoders)生成词串的分布式表示;然后基于四个词串的分布式表示建立神经网络分类器[3] 。因此,基于神经网络的调序模型不需要人工设计特征就能够利用整个词串的信息,显著提高了调序分类准确率和翻译质量。实际上,深度学习不仅能够为机器翻译生成新的特征[1-2] ,还能够将现有的特征集合转化生成新的特征集合[7] ,显著提升了翻译模型的表达能力。

然而,尽管利用深度学习改进统计机器翻译取得了显著的效果,但仍然面临以下难题。

● 线性不可分:整体框架仍是线性模型,高维数据线性不可分的情况依然存在。虽然可以在保持特征不变的情况下将线性模型替换为非线性模型[8] ,但目前尚未获得大幅度的提升。

● 非局部特征:通过深度学习引入的新特征往往是非局部的,导致无法设计高效的动态规划算法,从而不得不采用在后处理阶段进行超图重排序等近似技术[9] 。

能不能直接利用神经网络进行机器翻译呢?

相关文章
|
1月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
130 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
2月前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
350 55
|
5天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
42 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
2月前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
220 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
深入理解人工智能中的深度学习技术及其最新进展
深入理解人工智能中的深度学习技术及其最新进展
402 33
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
揭秘人工智能:深度学习的奥秘与实践
在本文中,我们将深入浅出地探索深度学习的神秘面纱。从基础概念到实际应用,你将获得一份简明扼要的指南,助你理解并运用这一前沿技术。我们避开复杂的数学公式和冗长的论述,以直观的方式呈现深度学习的核心原理和应用实例。无论你是技术新手还是有经验的开发者,这篇文章都将为你打开一扇通往人工智能新世界的大门。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
深入理解人工智能中的深度学习技术及其最新进展
深入理解人工智能中的深度学习技术及其最新进展
149 14
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
揭秘AI:深度学习的奥秘与实践
本文将深入浅出地探讨人工智能中的一个重要分支——深度学习。我们将从基础概念出发,逐步揭示深度学习的原理和工作机制。通过生动的比喻和实际代码示例,本文旨在帮助初学者理解并应用深度学习技术,开启AI之旅。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
深入探讨人工智能中的深度学习技术##
在本文中,我们将深入探讨深度学习技术的原理、应用以及未来的发展趋势。通过分析神经网络的基本结构和工作原理,揭示深度学习如何在图像识别、自然语言处理等领域取得突破性进展。同时,我们还将讨论当前面临的挑战和未来的研究方向,为读者提供全面的技术洞察。 ##
|
算法 C语言
算法竞赛入门【码蹄集新手村600题】(MT1200-1220)C语言(三)
算法竞赛入门【码蹄集新手村600题】(MT1200-1220)C语言(三)
285 1

热门文章

最新文章