自然语言的机器翻译 ai
您可能不知道,但是目前世界上有7,117种语言在使用 。 不是方言,而是生活语言! 但是,世界上许多数字媒体仅支持几种语言,而且Google Translate等翻译平台仅支持约100种语言。 这种现实意味着,由于缺乏及时获取信息的机会,全世界有数十亿人被边缘化。 当前的冠状病毒(COVID-19)大流行已经使这一点变得十分痛苦,并强调需要立即,快速地将与健康相关的短语(例如“洗手”或“保持距离”)翻译为语言。
为此,我应用了最先进的AI技术,以544种语言构建了类似于短语“洗手”的内容并进行计数(我的GPU仍在运行)。 多语言无监督和监督嵌入(MUSE)方法用于训练544种语言和英语之间的跨语言单词嵌入。 这些嵌入然后允许从现有文档中提取与目标短语相似的短语。
我与SIL International的同事合作完成了这项工作,他们收集了该短语的更多人工翻译。 这些人工翻译和我的一些机器翻译的组合可以在该民族指南页面上搜索(机器生成的短语用一个小的机器人图标表示),并且在生成/收集它们时会添加更多的翻译。
SIL International已用2000多种语言完成了语言工作,目前管理着1600多种语言项目。 因此,当我处理这个特定问题时,我知道我们可能已经将“洗手”和/或类似的短语多次翻译成数百种语言,并且这种猜测得到了回报。 我能够从我们的档案库中以900多种语言快速收集文档(主要是完整的带壳书模板,教育材料和圣经)。 这些文档中的每一个都有英文的相似之处,其中必然包含短语“洗手”和/或类似的短语,例如“洗脸”。 此外,这些文档中的每一个都是高质量的,并且与当地语言社区合作进行了翻译和检查。
对于低资源语言 ,我们当然可以利用机器翻译中的一些最新技巧,但是要花一些时间来调整自动化方法,以快速适应每种语言对中的翻译模型。 此外,我们要定位的许多语言都没有现有的基准,可以用来比较评估指标(例如, BLEU分数) 。 鉴于对冠状病毒大流行的紧迫担忧,我们希望采取更快的行动(尽管我们计划将来再解决该问题)。
我选择尝试通过在现有文档中找到短语本身或短语的组成部分(如“洗手”或“您的手”)来构建短语“洗手”。 为了找到这些,我使用Facebook Research的多语言无监督和受监督嵌入(MUSE)训练了每对{英语,目标语言}对的跨语言嵌入。 MUSE将单语词嵌入作为输入(我使用fasttext生成了这些词),并使用对抗性方法学习了从英语到目标嵌入空间的映射。 此过程的输出是跨语言单词嵌入。
生成跨语言嵌入后,我们便可以在目标语言文档中找到短语组件。 事实证明,在整个文档中,“洗脸”一词与“手”,“洗脸”等实例一起被单独使用。 对于每种语言,我都会在期望该短语出现的区域中搜索n-gram(基于英语并行中的用法)。 使用跨语言嵌入对N-gram进行矢量化处理,并使用各种距离度量将其与英语短语的矢量化版本进行比较。 嵌入空间中与英语短语“最接近”的n-gram被确定为目标语言匹配。
最后,将与他们的英语对应词匹配的组成词短语组合在一起,以生成目标语言中的“洗手”短语。 这种组合再次利用跨语言嵌入来确保以适当的方式组合组件。 例如,如果我们在目标语言中匹配短语“洗脚”,则必须将与“脚”相对应的n-gram替换为与“手”相对应的n-gram。 这是伯利兹·克里奥尔(Belize Kriol)英语的示例:
当然,在此匹配过程中会做出一些假设,并且此过程很可能不会产生语法上正确的预测。 例如,我假设在大多数语言中,“手”一词和“脚”一词都是一个令牌长(令牌由空格和标点符号分隔)。 当然并非总是如此。 这可能会造成一个不好的字眼色拉,例如“然后洗手”。 希望我们可以克服其中的一些局限性,并在将来扩展系统,但是,到目前为止,我们选择通过图形来增强创意。
我们将世界卫生组织的洗手说明改编为PNG模板图像。 然后,我们结合Bash和Go脚本,将翻译后的短语生成并生成为洗手图像。 这样,在文本和图像中都强调了正确洗手的想法(以防万一我们生成的翻译很尴尬)。
到目前为止,我已经能够训练544种语言的跨语言嵌入。 我使用上面讨论的方法尝试为所有这些语言构造“洗手”。 因为我没有许多语言对的一致数据,所以我使用了单独的保留文档,其中还包含“洗手”的成分,以帮助验证所构造短语中的标记。 这使我们对我们公开发布的译文充满信心(至少它们包含指示洗手和/或洗手的信息)。 此外,我将该方法与Google Translate支持和/或可用人工翻译的语言对进行了比较。 这是Ethnologue中带有语言统计的翻译样本:
地点:意大利
人口:68,000,000
我们的系统:“làvatila mani”
Google翻译:“ Lavati le mani”
所在地:保加利亚
人口:8,000,000
我们的系统:“умийръцете”
Google翻译:“Измийсиръцете”
所在地:荷兰
人口:24,000,000
我们的系统:“废物处理”
谷歌翻译:“我是手吗”
地点:所罗门群岛
人口:550,000
我们的系统:“ wasim han”
Google翻译:不支持
地点:喀麦隆
人口:11万
我们的系统:“ɓɔsifyàʼ”
Google翻译:不支持
地点:巴布亚新几内亚
人口:1300
我们的系统:“ yaakuuvaitana nnikiiyauvaa fini”
Google翻译:不支持
构造的短语类似于参考翻译,或者是“洗手”的替代方式。 例如,在保加利亚语中,我预测为“умийръцете”,而Google Translate预测为“Измийсиръцете”。 但是,如果我使用Google翻译对预测进行回译,我仍然会“洗手”。 在某些不确定性下,我无法与参考译文(例如,所罗门群岛的Pijin [pis])或人工注释的跨度进行比较,但我仍然可以验证“洗手”(wasim)和“手”( han)分别用在其他必须谈论洗涤或洗手的参考文件中。 使用此方法可以验证大约15%的翻译,我希望在收集参考词典时进行更多验证。
请注意,即使对于像意大利这样的高资源语言,我最多都使用每种语言的大约7,000个句子来获得以上翻译。 我也不依赖语言对之间对齐的句子。 尽管存在这种数据稀缺且不受监督的情况,但对于两个系统都支持的语言,我仍然能够获得类似于Google Translate的短语。 这证明了这种“混合”方法(单词嵌入的无监督对齐+基于规则的匹配)在将短短语翻译成数据很少的语言中的潜在用途。
注意:我绝对不是在说这是解决有关冠状病毒和其他与健康有关的问题的信息传播问题的解决方案。 这里还有很多事情需要探索和正式评估,我们正在努力。 在许多情况下,这种方法将无法帮助构建数百种语言的重要信息材料。 但是,我认为我们所有人都应该努力为与当前危机有关的问题开发创造性的解决方案。 也许这是一个很大的难题。
您可以在《 民族对话》指南页面上查看经过验证的翻译以及人工翻译的完整列表。 另外,即将对书面形式的系统进行更全面的描述和分析。 我们欢迎公众提供有关翻译的反馈意见,以帮助对系统进行微调,最重要的是,确保将健康信息传播到世界各地的边缘化语言社区。
我们已经开源了用于渲染复杂脚本并生成洗手海报的代码 。 这种方法应该能够处理几乎所有的语言和脚本。 您可以将自己的“洗手”翻译添加到海报上,以帮助传播单词或根据您自己的本地环境定制翻译。 确保使用#WashYourHands标签在社交媒体上分享您生成的海报。
那里有许多激动人心的AI问题,它们可以对世界产生巨大影响。 如果您想通过AI解决上述问题,或者您认为您的企业可能需要开始将AI用于其他方面(供应链优化,推荐,客户服务自动化等),请不要错过AI课堂培训今年五月的活动 。 AI课堂是为期三天的沉浸式虚拟培训活动,适用于至少具有一定编程经验和数学基础知识的任何人。 该培训为使用Python和TensorFlow和PyTorch等开源框架进行现实AI开发提供了实践基础。 完成课程后,参与者将有信心开始开发和部署自己的AI解决方案。
经https://datadan.io/blog/wash-your-hands的许可,本文已重新发布
翻译自: https://opensource.com/article/20/4/ai-translation
自然语言的机器翻译 ai