克服多语言语音技术的障碍:五大挑战和创新解决方案

推荐:使用 NSDT场景编辑器 助你快速搭建可二次编辑器的3D应用场景

介绍

在用西班牙语(您的首选语言)向语音助手询问某些内容后,您有多少次不得不暂停,然后用语音助手理解的语言(可能是英语)重述您的问题,因为语音助手无法理解您的西班牙语请求?或者,当你要求你的语音助手播放他们的音乐时,你有多少次不得不故意念错你最喜欢的艺术家A. R. Rahman的名字,因为你知道如果你说出他们的名字是正确的,语音助手根本听不懂,但如果你说A.R.拉面,语音助手会明白吗?此外,当语音助手用他们舒缓、无所不知的声音,屠宰你最喜欢的音乐剧《悲惨世界》的名字并明确地将其发音为“Les Miz-er-ables”时,你有多少次畏缩?

尽管语音助手在大约十年前已成为主流,但它们仍然保持简单化,特别是在理解多语言环境中的用户请求方面。在一个多语言家庭正在崛起,现有和潜在用户群变得越来越全球化和多样化的世界中,语音助手在理解用户请求时变得无缝至关重要,无论他们的语言、方言、口音、语气、调制和其他语音特征如何。然而,语音助手在能够以人类彼此的方式与用户顺利交谈方面继续严重滞后。在本文中,我们将深入探讨使语音助手多语言运行的最大挑战是什么,以及缓解这些挑战的一些策略可能是什么。在本文中,我们将使用假设的语音助手 Nova,用于说明目的。

语音助手的工作原理

在深入探讨使语音助手用户体验多语言的挑战和机遇之前,让我们大致了解一下语音助手的工作原理。使用 Nova 作为假设的语音助手,我们看看请求音乐曲目的端到端流程是什么样的(参考)。

克服多语言语音技术的障碍:五大挑战和创新解决方案


1. 假设语音助手Nova的端到端概述

如图所示。1.当用户要求Nova播放流行乐队酷玩乐队的原声音乐时,用户的这个声音信号首先被转换为一串文本令牌,作为人-语音助手交互的第一步。此阶段称为自动语音识别 (ASR) 或语音转文本 (STT)。一旦令牌字符串可用,它就会传递到自然语言理解步骤,语音助手将尝试理解用户意图的语义和句法含义。在这种情况下,语音助手的NLU解释用户正在寻找酷玩乐队的歌曲(即解释酷玩乐队是一个乐队),这些歌曲本质上是原声的(即在该乐队的唱片中查找歌曲的元数据,并且只选择版本=原声的歌曲)。然后,此用户意图理解用于查询后端以查找用户要查找的内容。最后,用户正在寻找的实际内容以及向用户呈现此输出所需的任何其他附加信息将转到下一步。在此步骤中,响应和任何其他可用信息用于修饰用户的体验,并令人满意地响应用户查询。在这种情况下,它将是文本到语音转换 (TTS) 输出(“这是酷玩乐队的一些原声音乐”),然后播放为此用户查询选择的实际歌曲。

构建多语言语音助手的挑战

多语言语音助手 (VA) 意味着能够理解和响应多种语言的 VA,无论它们是由同一个人或多人说的,还是由同一个人用与另一种语言混合的同一个句子说的(例如“Nova,arrêt!玩别的东西“)。以下是语音助手在多模式环境中无缝操作时面临的主要挑战。

语言资源的数量和数量不足

为了使语音助手能够很好地解析和理解查询,需要对该语言的大量训练数据进行训练。这些数据包括来自人类的语音数据、地面真相注释、大量文本语料库、用于改进 TTS 发音的资源(例如发音词典)和语言模型。虽然这些资源很容易用于英语、西班牙语和德语等流行语言,但对于斯瓦希里语、普什图语或捷克语等语言,它们的可用性有限甚至不存在。即使有足够多的人使用这些语言,也没有结构化的资源可用于这些语言。为多种语言创建这些资源可能很昂贵、复杂且需要大量人力,从而为进展带来阻力。

语言变化

语言有不同的方言、口音、变体和区域适应。处理这些变化对于语音助手来说具有挑战性。除非语音助手适应这些语言上的细微差别,否则很难正确理解用户请求或能够以相同的语言语气做出响应,以提供自然的声音和更像人类的体验。例如,仅英国就有40多种英语口音。另一个例子是墨西哥使用的西班牙语与西班牙使用的西班牙语不同。

语言识别和适应

多语言用户在与其他人的交互过程中切换语言是很常见的,他们可能期望与语音助手进行相同的自然交互。例如,“Hinglish”是一个常用术语,用于描述在说话时使用印地语和英语单词的人的语言。能够识别用户与语音助手交互的语言并相应地调整响应是一项艰巨的挑战,这是当今主流语音助手无法做到的艰巨挑战。

语言翻译

将语音助手扩展到多种语言的一种方法是将 ASR 输出从卢森堡语等非主流语言翻译成 NLU 层可以更准确地解释的语言,例如英语。常用的翻译技术包括使用一种或多种技术,如神经机器翻译 (NMT)、统计机器翻译 (SMT)、基于规则的机器翻译 (RBMT) 等。但是,这些算法可能无法很好地针对不同的语言集进行扩展,并且可能还需要大量的训练数据。此外,语言特定的细微差别经常丢失,翻译版本往往显得尴尬和不自然。在能够扩展多语言语音助手方面,翻译质量仍然是一个持续的挑战。翻译步骤中的另一个挑战是它引入的延迟,降低了人与语音助手交互的体验。

真正的语言理解

语言通常具有独特的语法结构。例如,英语有单数和复数的概念,梵语有3(单数对偶,复数)。也可能有不同的习语不能很好地翻译成其他语言。最后,可能还有文化细微差别和文化参考,除非翻译技术具有高质量的语义理解,否则翻译可能很差。开发特定于语言的 NLU 模型是昂贵的。

克服构建多语言语音助手的挑战

上面提到的挑战是难以解决的问题。但是,有一些方法可以立即部分(如果不是完全)缓解这些挑战。以下是一些可以解决上述一个或多个挑战的技术。

利用深度学习检测语言

解释句子含义的第一步是知道句子属于哪种语言。这就是深度学习的用武之地。深度学习使用人工神经网络和大量数据来创建看起来像人类的输出。基于转换器的架构(例如BERT)在语言检测方面已经证明是成功的,即使在资源匮乏的语言中也是如此。基于转换器的语言检测模型的替代方法是递归神经网络 (RNN)。这些模型应用的一个例子是,如果一个平时用英语说话的用户有一天突然用西班牙语与语音助手交谈,语音助手可以正确检测和识别西班牙语。

使用上下文机器翻译来“理解”请求

一旦检测到语言,解释句子的下一步是获取 ASR 阶段的输出,即标记字符串,并将该字符串(不仅从字面上而且在语义上)转换为可以处理以生成响应的语言。而不是使用翻译 API,这些 API 可能并不总是知道语音界面的上下文和特性,并且由于高延迟而在响应中引入次优延迟,从而降低用户体验。但是,如果将上下文感知机器翻译模型集成到语音助手中,则由于特定于域或会话上下文,翻译可以具有更高的质量和准确性。例如,如果语音助手主要用于娱乐,它可以利用上下文机器翻译来正确理解和回答有关音乐流派和子流派、乐器和音符、某些曲目的文化相关性等问题。

利用多语言预训练模型

由于每种语言都有独特的结构和语法、文化参考、短语、习语和表达方式以及其他细微差别,因此处理不同的语言具有挑战性。鉴于特定于语言的模型很昂贵,预先训练的多语言模型可以帮助捕获特定于语言的细微差别。像BERT和XLM-R这样的模型是预先训练模型的很好的例子,可以捕获语言特定的细微差别。最后,这些模型可以微调到一个领域,以进一步提高其准确性。例如,对于在音乐领域训练的模型,可能不仅能够理解查询,还可以通过语音助手返回丰富的响应。如果这个语音助手被问到一首歌歌词背后的含义是什么,语音助手将能够以比简单解释单词更丰富的方式回答问题。

使用代码切换模型

实现代码切换模型以便能够处理混合使用不同语言的语言输入,可以在用户与语音助手的交互中使用多种语言的情况下提供帮助。例如,如果语音助手是专门为加拿大用户经常混淆法语和英语的地区设计的,则可以使用代码切换模型来理解指向语音助手的句子,这些句子是两种语言的混合,语音助手将能够处理它。

利用迁移学习和零镜头学习来开发低资源语言

迁移学习是 ML 中的一种技术,其中模型在一项任务上训练,但用作第二个任务的模型的起点。它利用从第一个任务中学习来提高第二个任务的性能,从而在一定程度上克服了冷启动问题。零镜头学习是指使用预先训练的模型来处理以前从未见过的数据。迁移学习和零镜头学习都可以用于将知识从高资源语言转移到低资源语言。例如,如果语音助手已经接受了世界上最常用的 10 种语言的培训,则可以利用它来理解斯瓦希里语等低资源语言的查询。

结论

总之,在语音助手上构建和实现多语言体验具有挑战性,但也有一些方法可以缓解其中一些挑战。通过解决上述挑战,语音助手将能够为用户提供无缝体验,无论其语言如何。

原文链接:克服多语言语音技术的障碍:五大挑战和创新解决方案 (mvrlink.com)

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python爬虫(十二)_XPath与lxml类库

Python学习指南 有同学说,我正则用的不好,处理HTML文档很累,有没有其他的方法? 有!那就是XPath,我们可以用先将HTML文档转换成XML文档,然后用XPath查找HTML节点或元素。 什么是XML XML指可扩展标记语言(E…

前后端分离------后端创建笔记(06)新增接口页面布局

本文章转载于【SpringBootVue】全网最简单但实用的前后端分离项目实战笔记 - 前端_大菜007的博客-CSDN博客 仅用于学习和讨论,如有侵权请联系 源码:https://gitee.com/green_vegetables/x-admin-project.git 素材:https://pan.baidu.com/s/…

【C++精华铺】6.C++类和对象(下)类与对象的知识补充及编译器优化

目录 1. 再谈构造 1.1 成员变量的初始化(初始化列表) 1.2 初始化列表的行为 1.3 explicit关键字 2. 类中的static成员 2.1 静态成员变量 2.2 静态成员函数 3. 友元 3.1 友元函数 3.1 友元类 4. 内部类 5. 匿名对象 6. 对象拷贝时候的编译器优化…

C++入门基础(万字详解!!!)

文章目录 前言1.C关键字2.命名空间3.C的输入输出4.缺省参数4.1 全缺省4.2 半缺省 5.函数重载6. 引用6.1 引用的特性6.2 引用的使用场景6.3 引用和指针 7.内联函数7.1 特性 8.auto关键字8.1 注意事项 9. 基于范围的for循环9.1 使用条件 10.指针控制nullptr10.1 注意事项 11.总结…

并发编程面试题2

并发编程面试题2 一、AQS高频问题: 1.1 AQS是什么? AQS就是一个抽象队列同步器,abstract queued sychronizer,本质就是一个抽象类。 AQS中有一个核心属性state,其次还有一个双向链表以及一个单项链表。 首先state…

8.15黄金能否跌破千九?日内如何稳健布局

近期有哪些消息面影响黄金走势?黄金多空该如何研判? ​黄金消息面解析:周二(8月15日)亚洲时段,现货黄金延续低位徘徊,目前交投于1906.01美元/盎司附近,美国财长称耶伦称美国经济处于…

Linux与安卓安全对抗

导读大家都知道安卓是基于Linux内核,而且大家也知道Linux的安全性是公认的,那为什么和Linux有着类似嫡系关系的安卓却一直被人诟病不安全呢?要想说清楚这个问题,我们需要了解一下安卓和Linux到底是什么关系,而且这两个…

4WRZ25E3-220-5X/6A24NZ4/D3M不带位移反馈比例阀放大器

该先导阀是一个由比例电磁铁控制的三通减压阀,它的作用是将一个输入信号转化为一个与其成比例的压力输出信号,可用于所有的4WRZ...和5WRZ...型比例阀的控制。比例电磁铁是可调试,湿式直流电磁铁结构,带中心螺纹,线圈可…

机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?

一、引言 在实际应用中,特征选择作为机器学习和数据挖掘领域的重要环节,对于提高模型性能和减少计算开销具有关键影响。特征选择是从原始特征集中选择最相关和最具区分力的特征子集,以提高模型的泛化能力和可解释性。 特征选择在实践中具有以…

快手商品详情数据API 抓取快手商品价格、销量、库存、sku信息

快手商品详情数据API是用来获取快手商品详情页数据的接口,请求参数为商品ID,这是每个商品唯一性的标识。返回参数有商品标题、商品标题、商品简介、价格、掌柜昵称、库存、宝贝链接、宝贝图片、商品SKU等。 接口名称:item_get 公共参数 名…

【JavaEE进阶】SpringBoot 日志

文章目录 一. 日志有什么用?二. 自定义日志打印1. 日志的使用与打印 三. 日志级别1. 日志级别有什么用?2. 日志级别的分类及使用 四. 日志持久化五. 更简单的日志输出---Lombok1. Lombok的使用2. lombok原理解释2.1 Lombok更多注解说明 一. 日志有什么用? 在Java中&#xf…

SpringSecurity结合电商项目

pom <!--SpringSecurity及JWT依赖配置--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</ artifactId></dependency> <!--Hutool Java工具包--> <dependency>&l…

Vue3组件库

Vue组件库 ViteVue3TypescriptTSX 1、项目搭建 1.1、创建项目&#xff08;yarn&#xff09; D:\WebstromProject>yarn create vite yarn create v1.22.19 [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh pa…

idea报错:java: 程序包org.springframework.web.bind.annotation不存在

这个错误通常都是maven仓库的问题&#xff0c;试了网上很多方法&#xff0c;都没有解决&#xff0c;如果大家有遇到这个问题&#xff0c;且试了很多方法之后都没有解决&#xff0c;不妨可以试试我这个方法 先编译一下已经写好的代码&#xff0c;这时候会出现以上报错&#xff…

文本分类实战-NLP

数据集及任务分析 项目主题&#xff1a;新闻的主题分类&#xff0c;10分类任务 一般对于NLP项目来说的话需要进行数据预处理的&#xff0c;但是由于本项目的数据是经过处理过的&#xff0c;所以就不需要进行数据预处理了&#xff0c;但是数据预处理对NLP项目是重中之重的。 TH…

Linux上安装温度监控软件

文章目录 Linux上安装温度监控软件IDRAC设置 Linux上安装温度监控软件 服务器的温度是影响服务器性能重要条件&#xff0c;怎么监控机器的温度呢&#xff0c;这里知道的有两种方式 通过管理界面&#xff0c;查看机器的温度通过机器上安装监监控软件来监控温度 在物理机上怎么…

微软电脑surface键盘无法使用问题解决

昨天下班后&#xff0c;正常关掉电脑&#xff0c;今天来上班发现键盘无法使用了 打人工找到了解决方法 开机->到锁屏页面->使用屏幕键盘输入密码进入电脑 然后右键左下角的win图标 找到设备管理器->键盘 全部右键卸载 再找到设备管理->系统设备 把这个DTX也卸…

腾讯云国际站代充-阿里云ECS怎么一键迁移到腾讯云cvm?

今天主要来介绍一下如何通过阿里云国际ECS控制台一键迁移至腾讯云国际CVM。腾讯云国际站云服务器CVM提供全面广泛的服务内容。无-需-绑-定PayPal&#xff0c;代-充-值腾讯云国际站、阿里云国际站、AWS亚马逊云、GCP谷歌云&#xff0c;官方授权经销商&#xff01;靠谱&#xff0…

【Microsoft 支持】【数据库-MySql】当您尝试从大于 5000 的 TCP 端口连接时收到错误 WSAENOBUFS (10055)

​ 一、转载原文 When you try to connect from TCP ports greater than 5000 you receive the error ‘WSAENOBUFS (10055)’ Symptoms If you try to set up TCP connections from ports that are greater than 5000, the local computer responds with the following WSAE…

大数据-玩转数据-Flink网页埋点PV统计

一、说明 衡量网站流量一个最简单的指标&#xff0c;就是网站的页面浏览量&#xff08;Page View&#xff0c;PV&#xff09;。用户每次打开一个页面便记录1次PV&#xff0c;多次打开同一页面则浏览量累计。 一般来说&#xff0c;PV与来访者的数量成正比&#xff0c;但是PV并不…