ACL 2023 | 通过语音离散表示统一语音翻译和机器翻译

news2024/10/5 17:24:57

前言

在当今全球化和多元文化的时代,语音翻译技术正成为我们跨越语言障碍的得力助手!语音翻译(Speech Translation, ST)旨在将源语言语音翻译成目标语言文本,广泛应用于会议演讲翻译、视频字幕翻译、AR增强翻译等各种场景。语音翻译可以提高沟通效率和便利性,无论是在商务会议还是旅行中的日常交流,我们不再需要手忙脚乱地翻阅词典,或用肢体语言沟通,只需用自己的语言说出来,它就会帮我们实时翻译,让我们能和世界各地的人无障碍交流。

image.png

01. 语音翻译的挑战

近年来,神经机器翻译技术日趋成熟,拥有高质量、大规模的两种或多种语言之间的平行语料,是当今机器翻译模型获得良好性能的前提。然而,满足语音翻译需要的“语音-转写-翻译”数据相对稀缺。以英语到德语翻译为例,机器翻译中常用的 WMT16 数据集[1]有460万条训练数据,而语音翻译中最常用的 MuST-C 数据集[2]只有23万条训练数据,这存在着数十倍的差距。数据缺乏限制了语音翻译模型的性能,这与机器翻译中的低资源语言机器翻译场景十分相似。在低资源语言机器翻译中,回译、预训练等技术十分有效[3][4]。那么,能否借助低资源机器翻译的技术来帮助语音翻译呢?

然而,直接把机器翻译技术应用到语音翻译中是不现实的。这是因为语音和文本存在表示上的差异,语音数据通常表示为连续的波形信号或者梅尔频谱,而文本通过离散的符号来表示,这种表示上的差异增加了技术迁移的难度。因此,如果也能用离散符号来表征语音,那么自然可以用机器翻译技术来解决语音翻译问题,从而统一语音翻译与机器翻译了。

image.png

语音信号表示和文本

最近越来越多的工作聚焦在语音无监督离散化表示上[5][6]。如下图,比较常用的语音离散化表示是 HuBERT 离散单元[7],通过在 HuBERT 提取出的连续表示上做 K-means 聚类得到。研究表明这种离散化表示可以起到一定程度的信息过滤的作用,即保留内容信息并且除去说话人等无关信息[6]。HuBERT 得到的语音离散表示与低资源机器翻译技术相结合来解决语音翻译任务是一个可行的方法。参考 HuBERT 的研究,复旦大学和字节跳动 AI Lab 共同提出 DUBDiscrete Unit Back-translation for Speech Translation[8],该工作已被ACL 2023 Findings收录。

image.png

论文链接:
https://aclanthology.org/2023.findings-acl.447.pdf
代码链接:
https://github.com/0nutation/DUB
Huggingface space:
nutation/DUB · Hugging Face

这篇文章从一个新的视角来看待语音翻译,通过把语音表示为离散化符号,使语音翻译任务等同于一种特殊的低资源机器翻译任务,从而结合回译、预训练的技术来帮助语音翻译。

在此基础上,本文提出并回答两个问题:

  1. 对于语音翻译任务来说,语音离散表示和连续表示哪一个是更好的输入特征?

  2. 结合离散化表示,机器翻译技术能否为语音翻译带来提升?

此外,本文还展示了语音离散化表示在低资源濒危语言和不成文语言 (unwritten language) 上语音翻译的潜力。

image.png

02. DUB模型结构与算法流程

2.1 模型结构

DUB使用一个离散单元提取器来对连续语音进行离散化(论文中使用的是HuBERT),从而得到离散单元序列。之后,使用两个 transformer 模型分别完成 unit-to-text translation (U2TT) 和 text-to-unit translation (T2UT) 的正向和反向翻译过程。

2.2 算法流程

基于上述 U2TT 和 T2UT 模型,DUB 的算法流程如下:

  • Step 1:对每个语音输入,提取对应的离散表示,并获取离散单元-翻译对;

  • Step 2:基于上述离散单元-翻译对训练 T2UT 模型;

  • Step 3:引入大量目标语言的文本数据 y’,送入训练好的 T2UT 模型,造出大量的伪离散单元,从而得到伪离散单元-翻译对。解码过程包括:Beam search、top-k sampling、sampling等;

  • Step 4:将真实离散单元-翻译对和伪离散单元-翻译对混合在一起训练出最终的U2TT模型。

image.png

03. DUB在语音翻译任务上的表现与分析

3.1 En-X和X-En语向上均获得显著翻译效果

本文在 MuST-C 数据集的 En-De/Es/Fr 语向和 CoVoST2 数据集的 21 个 X-En 语向上进行了实验,如下表,与baseline 模型 U2TT 相比,DUB 在翻译质量上带来了显著的提升。在低资源 X-En 语向上,DUB 的性能甚至优于使用大量语音、文本数据进行联合预训练的系统,展现出 DUB 在低资源濒危语言和不成文语言 (unwritten language) 上语音翻译的潜力。

image.png

3.2 语音离散表示是比原始连续表示更好的输入表示,但存在一定的信息损失

对于前文提出的第一个问题:对于语音翻译任务来说,语音离散表示和连续表示哪一个是更好的输入特征?可以发现语音离散表示作为输入的 U2TT 要比原始连续表示 fbank 作为输入的 Transformer-ST 性能好,但与 Hubert 连续表示作为输入的 HuBERT-Transformer 相比存在一定的信息损失。由此说明语音离散表示是比原始连续表示更好的输入表示,但存在一定的信息损失。但是仅通过引入1M目标文本语料库,就可以弥补掉这部分的损失。

image.png

3.3 回译、预训练等机器翻译技术可以为语音翻译带来显著的性能提升

对于前文的第二个问题:结合离散化表示,机器翻译技术能否为语音翻译带来提升?从下图可以看出 DUB 对于 U2TT 可以带来接近5个 BLEU 的显著提升,说明回译技术是非常有效的。除了回译技术之外,预训练也是来提升低资源语言机器翻译的常见技术。作者还在大量的文本和语音离散单元上采用 mBART 的训练方式训练了一个 Bimodal BART,并采用它作为 U2TT 的预训练模型。Bimodal BART 也可以带来2个 BLEU 的提升,说明 mBART 预训练的方式对于语音翻译也是有效的。进一步,将 DUB 和 Bimodal BART 相结合,可以带来进一步的性能提升。

image.png

3.4 基于离散表示的语音翻译呈现出和机器翻译相同的现象

在 DUB 的 step 3 中利用 T2UT 模型来产生伪离散单元时,可以选择使用不同的解码策略,包括 Beam search、top-k sampling、sampling 等。如下图,可以观察到,从在 BLEU 指标上看,sampling > top10 sampling > beam search,这和机器翻译中的回译具有相同的结论,即产生的伪数据中的噪声越多,带来的提升就越大。这说明语音离散单元内部可能具有和文本类似的结构。

image.png

3.5 伪离散单元具有正确的语义信息

如下图,当连接 T2UT 和声码器模型,将文本通过 T2UT 产生的伪离散单元送入声码器,就可以恢复得到和原始文本具有相同语义的语音,从而可以实现文本到语音翻译功能。说明伪离散单元具有正确的语义信息。下面可以听一个德语到英语翻译的例子:

image.png

德语:Und sicher, hätten wir diese diese Hydranten die ganze Zeit freischaufeln können, und viele Menschen tun das.

英语参考:And certainly, we could have been shoveling out these fire hydrants all along, and many people do.

回译产生的英语语音:And certainly we could have released those hydrants all the time and many people do that.

04. 总结

本文主要介绍了 ACL 2023 上的一篇语音翻译的工作 DUB,其核心思想是通过把语音离散化来统一语音翻译与机器翻译任务,从而利用低资源机器翻译技术来帮助语音翻译。它首次提出将语音离散表示作为语音翻译任务的输入。实验结果证明了离散表示作为输入的有效性以及在这种框架下应用回译、预训练等机器翻译技术可以为语音翻译带来显著的性能提升。本文为语音理解任务提供了新的解决思路,并且展示出在低资源濒危语言和不成文语言 (unwritten language) 上的潜力。

参考文献

[1] Ondřej Bojar, Rajen Chatterjee, Christian Federmann, Yvette Graham, Barry Haddow, Matthias Huck, Antonio Jimeno Yepes, Philipp Koehn, Varvara Logacheva, Christof Monz, Matteo Negri, Aurélie Névéol, Mariana Neves, Martin Popel, Matt Post, Raphael Rubino, Carolina Scarton, Lucia Specia, Marco Turchi, et al… 2016. Findings of the 2016 Conference on Machine Translation. In Proceedings of the First Conference on Machine Translation: Volume 2, Shared Task Papers, pages 131–198, Berlin, Germany. Association for Computational Linguistics.

[2] Mattia A. Di Gangi, Roldano Cattoni, Luisa Bentivogli, Matteo Negri, and Marco Turchi. 2019. MuST-C: a Multilingual Speech Translation Corpus. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pages 2012–2017, Minneapolis, Minnesota. Association for Computational Linguistics.

[3] Sergey Edunov, Myle Ott, Michael Auli, and David Grangier. 2018. Understanding back-translation at scale. In Proc. of EMNLP, pages 489–500, Brussels, Belgium. Association for Computational Linguistics.

[4] Yinhan Liu, Jiatao Gu, Naman Goyal, Xian Li, Sergey Edunov, Marjan Ghazvininejad, Mike Lewis, and Luke Zettlemoyer. 2020. Multilingual denoising pre-training for neural machine translation. Transactions of the Association for Computational Linguistics, 8:726–742.

[5] Alexei Baevski, Yuhao Zhou, Abdelrahman Mohamed, and Michael Auli. 2020. wav2vec 2.0: A frame- work for self-supervised learning of speech representations. Advances in Neural Information Processing Systems, 33:12449–12460.

[6] Kushal Lakhotia, Eugene Kharitonov, Wei-Ning Hsu, Yossi Adi, Adam Polyak, Benjamin Bolte, Tu-Anh Nguyen, Jade Copet, Alexei Baevski, Abdelrahman Mohamed, et al. 2021. On generative spoken language modeling from raw audio. Transactions of the Association for Computational Linguistics, 9:1336– 1354.

[7] Wei-Ning Hsu, Benjamin Bolte, Yao-Hung Hubert Tsai, Kushal Lakhotia, Ruslan Salakhutdinov, and Abdelrahman Mohamed. 2021. Hubert: Self-supervised speech representation learning by masked prediction of hidden units. IEEE/ACM Transactions on Audio, Speech, and Language Processing, 29:3451–3460.

[8] Dong Zhang, Rong Ye, Tom Ko, Wang Mingxuan, and Zhou Yaqian. Dub: Discrete unit backtranslation for speech translation. In Findings in ACL 2023.


关于TechBeat人工智能社区

TechBeat(www.techbeat.net)隶属于将门创投,是一个荟聚全球华人AI精英的成长社区我们希望为AI人才打造更专业的服务和体验,加速并陪伴其学习成长。期待这里可以成为你学习Al前沿知识的高地,分享自己最新工作的沃士,在AI进阶之路上的升级打怪的根据地!更多详细介绍>>TechBeat,一个荟聚全球华人AI精英的学习成长社区

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/772971.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【启发式算法】灰狼优化算法【附python实现代码】

写在前面: 首先感谢兄弟们的订阅,让我有创作的动力,在创作过程我会尽最大能力,保证作品的质量,如果有问题,可以私信我,让我们携手共进,共创辉煌。 路虽远,行则将至&#…

快速批量改名文件!随机字母命名,让文件名更有创意!

想要让文件名更加有创意和个性化吗?不妨尝试使用随机字母来批量改名文件!无论是照片、文档还是其他文件,只需要简单的几个步骤,您就可以为它们赋予一个独特的随机字母命名。这不仅可以帮助您整理文件,还能增加一些乐趣…

AtCoder Beginner Contest 310-D - Peaceful Teams(DFS)

Problem Statement There are N sports players. Among them, there are M incompatible pairs. The i-th incompatible pair (1≤i≤M) is the Ai​-th and Bi​-th players. You will divide the players into T teams. Every player must belong to exactly one team, an…

SpringBoot整合SpringCloudStream3.1+版本的Kafka死信队列

SpringBoot整合SpringCloudStream3.1版本的Kafka死信队列 上一篇直通车 SpringBoot整合SpringCloudStream3.1版本Kafka 实现死信队列步骤 添加死信队列配置文件,添加对应channel通道绑定配置对应的channel位置添加重试配置 结果 配置文件 Kafka基本配置&#…

Python机器学习、数据统计分析在医疗中的应用

Python机器学习在医疗诊断领域的应用 随着人工智能技术的不断发展,机器学习已经在医疗领域的诊断治疗、预防等方面展现出强大的潜力。Python 作为一种广泛应用于机器学习的语言,在医疗领域也已经被广泛使用。本文将探讨 Python 机器学习在医疗领域的应用…

mysql 第五章

目录 1.order by 排序 2.区间判断 3.group by 分组 4.limit 5.别名 6.通配符 like 7.总结 1.order by 排序 2.区间判断 3.group by 分组 4.limit 5.别名 6.通配符 like 7.总结 对 mysql 数据库的查询,除了基本的查询外,有时候需要对查…

nginx官网与下载

官网 nginx: download 下载 解压 conf配置文件

[高通平台][WLAN] IEEE802.11mc 介绍

IEEE802.11mcWi-Fi协议(即Wi-FiRound-Trip-Time,RTT),利用此项技术及可以进行室内定位,因此为了使用此项技术,只有在硬件支持的设备上,应用才可以使用最新的RTT API以测量附近具有RTT功能的Wi-FiAP。 单面RTT :  距离是通过发送的分组和接收到的ACK之间的时间差来计算的…

SPSS中级统计--S05-5多个样本率的卡方检验及两两比较

小伙伴们,今天我们学习SPSS中级统计--多个样本率的卡方检验及两两比较。 例1、2 C列联表资料 上期我们学习了双向无序RC表资料(c2)的检验,案例如下,比较不同污染地区的动物畸形率是否有差异? H0&#xff…

哈医大一院电力监控系统 安科瑞 许敏

摘要:本文介绍基于Acrel-3000电力监控软件和电力监控仪表,设计并实现了一套分散式采集和集中控制管理的自动化报警系统。系统实现远程精细化及时性报警,避免因停电造成医疗事故,提高了供电质量和管理水平,具有简明实用…

怎么把高版本CAD转换成低版本?CAD版本转换方法分享

某些情况下,较新的CAD软件版本可能不被较旧的CAD软件版本所支持。如果你需要与使用较旧版本CAD的人进行交流、共享或协作,将高版本CAD转换为低版本可以确保文件能够顺利打开和编辑。那么问题来了,怎么将高版本CAD转换成低版本呢?教…

29,stack容器

29.1stack基本概念 概念:stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口 栈容器 符合先进后出 栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为 栈可以判断容器为空与否(empty) 栈可以返回元素个数(…

【SQL】计算每个人的完成率

目录 前提任务的完成率前三名拓展:达梦如何去实现除法有余数拓展:MySQL 任务的完成率前三名 前提 达梦数据库: select 1/3; # 0不要求四舍五入 任务的完成率前三名 # nick_name 人名 # finishNum 当前这个人的任务完成数 # total 当前这…

Go语言之并发编程练习,GO协程初识,互斥锁,管道:channel的读写操作,生产者消费者

GO协程初识 package mainimport ("fmt""sync""time" )func read() {defer wg.Done()fmt.Println("read start")time.Sleep(time.Second * 3)fmt.Println("read end") }func listenMusci() {defer wg.Done()fmt.Println(&qu…

【lesson2】Linux基本指令1

文章目录 touch创建文件更新文件最新修改时间 lslsls -lls -als -i pwd...cdcd 路径法一:cd 绝对路径法二:cd 相对路径 cd - stattreemkdirmkdir创建一个目录mkdir -p创建一串路径目录 ~/rmdirrmrmrm -frm -rrm -i mancpcpcp -r mvnaocatcatcat -n ta…

错过后悔!!!Java岗秋招最全面试攻略!!

这里给大家整理了完整的Java完整的架构面试核心知识体系。按照这样的一个脉络,只要大家能够掌握这里面的绝大部分内容,并且有过相应的一些实践,那么就可以去面试自己心仪的工作了。 这份笔记总结都是作者近几年结合众多牛客的面经分享&#…

【完整版】zabbix企业级监控(概念、简单操作、页面优化、监控主机自己、监控linux、监控Win10)

第三阶段基础 时 间:2023年7月19日 参加人:全班人员 内 容: zabbix企业级监控 目录 一、Zabbix概述 (一)Zabbix简介 (二)Zabbix运行条件: (三)Zab…

【面试笔试避坑指南】一

从这篇文章开始 进行笔试的训练环节,我会在 本专栏详细介绍笔试的易错点,帮助大家精准避坑。 1.有如下一段代码(unit16_t为2字节无符号整数,unit8_t位1字节无符号整数); 请问x.z.n在大字节序和小字节序机器…

MySQL第五章、索引事务

目录 一、索引 1.1 概念 1.2 作用 1.3 使用场景 1.4 使用 1.5 案例 二、索引背后的数据结构 2.1 B-树(B树) 2.2 B树(MySQL背后数据结构) 三、事务 3.1 为什么使用事务 3.2 事务的概念 3.3 使用 3.4并发执行事务产生…

《Java黑皮书基础篇第10版》 第12章【习题】

Java语言程序设计 习题第十二章 12.2章节习题 12.1 使用异常处理的优势是什么? 如果没有异常处理,方法执行(called method)出错时,调用者(caller)没有办法进行处理(比如方法所在的类被封装,调用者无法访问)&#xf…