一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于多口语检测的系统和方法与流程

2021-08-17 13:49:00 来源:中国专利 TAG:公开 总体上 口语 检测系统 语音识别
用于多口语检测的系统和方法与流程

本公开总体上涉及自动语音识别(asr)系统。更具体地,本公开涉及一种用于多口语检测的系统和方法。



背景技术:

基于语音的接口越来越经常被用作用于支持人与机器之间的交互的机构。这些类型的接口通常包括被设计为将语音转换为文本的自动语音识别(asr)系统。然后,文本可以被显示,被传送给其他用户,被进一步处理或者被用于执行一个或更多个功能,或者以任意其他合适的方式被使用。这种类型的功能在各种应用(诸如移动电子装置或其他电子装置上的基于语音的数字个人助理)中是常见的。



技术实现要素:

技术方案

本公开提供了一种用于多口语检测的系统和方法。

在第一实施例中,一种方法包括:使用至少一个处理器执行对输入音频数据的特征提取以识别与输入音频数据相关联的提取特征。所述方法还包括:使用所述至少一个处理器通过使用多个语言模型对提取特征进行处理来检测与输入音频数据的多个部分中的每个部分相关联的语言,其中,所述多个语言模型中的每个语言模型与不同语言相关联。此外,所述方法包括:使用所述至少一个处理器,基于与输入音频数据的每个部分相关联的语言,将输入音频数据的每个部分定向到多个自动语音识别(asr)模型中的一个asr模型。

在第二实施例中,电子装置包括至少一个存储器以及可操作地耦接到所述至少一个存储器的至少一个处理器。所述至少一个处理器被配置为:执行对输入音频数据的特征提取以识别与输入音频数据相关联的提取特征。所述至少一个处理器还被配置为:通过使用多个语言模型对提取特征进行处理来检测与输入音频数据的多个部分中的每个部分相关联的语言,其中,所述多个语言模型中的每个语言模型与不同语言相关联。所述至少一个处理器还被配置为:基于与输入音频数据的每个部分相关联的语言,将输入音频数据的每个部分定向到多个asr模型中的一个asr模型。

在第三实施例中,一种非暂时性机器可读介质包含指令,其中,所述指令在被执行时使电子装置的至少一个处理器进行以下操作:执行对输入音频数据的特征提取以识别与输入音频数据相关联的提取特征。所述介质还包含指令,其中,所述指令在被执行时使所述至少一个处理器进行以下操作:通过使用多个语言模型对提取特征进行处理来检测与输入音频数据的多个部分中的每个部分相关联的语言,其中,所述多个语言模型中的每个语言模型与不同语言相关联。所述介质还包含指令,其中,所述指令在被执行时使所述至少一个处理器进行以下操作:基于与输入音频数据的每个部分相关联的语言,将输入音频数据的每个部分定向到多个asr模型中的一个asr模型。

根据以下附图、描述和权利要求,其他技术特征对于本领域技术人员可以是显而易见的。

附图说明

为了更完整地理解本公开及其优点,现在结合附图参考以下描述,其中,相似的附图标号表示相似的部分:

图1示出根据本公开的示例网络配置;

图2示出根据本公开的用于多口语检测的示例架构;

图3示出根据本公开的用于多口语检测的更具体的示例架构;

图4示出根据本公开的用于支持识别多个语言之间的转换的示例架构;以及

图5示出根据本公开的用于多口语检测的示例方法。

具体实施方式

在进行下面的详细描述之前,阐述贯穿本专利文件使用的特定单词和短语的定义可能是有利的。术语“发送”、“接收”和“传送”及其派生词涵盖直接通信和间接通信两者。术语“包括”和“包含”及其派生词表示包括但不限于。术语“或”是包含性的,表示和/或。短语“与……相关联”及其派生词表示包括、被包括在……内、与……互连、包含、被包含在……内、连接到或与……连接、耦接到或与……耦接、可与……通信、与……协作、交织、并置、接近于、绑定到或与……绑定、具有、具有……的性质、和或与……具有关系等。

此外,下面描述的各种功能可由一个或更多个计算机程序来实现或支持,每个计算机程序从计算机可读程序代码形成并在计算机可读介质中被实施。术语“应用”和“程序”是指适合于在合适的计算机可读程序代码中实现的一个或更多个计算机程序、软件组件、指令集、过程、功能、对象、类、实例、相关数据或其一部分。短语“计算机可读程序代码”包括任意类型的计算机代码,包括源代码、目标代码和可执行代码。短语“计算机可读介质”包括能够由计算机访问的任意类型的介质,诸如只读存储器(rom)、随机存取存储器(ram)、硬盘驱动器、光盘(cd)、数字视频盘(dvd)或任意其他类型的存储器。“非暂时性”计算机可读介质不包括传输暂时性电信号或其他信号的有线、无线、光学或其他通信链路。非暂时性计算机可读介质包括可永久存储数据的介质以及可存储数据并稍后重写数据的介质,诸如可重写光盘或可擦除存储器装置。

如这里所使用的,诸如“具有”、“可具有”、“包括”或“可包括”特征(如数字、功能、操作或诸如部件的组件)的术语和短语指示该特征的存在,并且不排除其他特征的存在。此外,如这里所使用的,短语“a或b”、“a和/或b中的至少一个”或者“a和/或b中的一个或更多个”可包括a和b的所有可能组合。例如,“a或b”、“a和b中的至少一个”以及“a或b中的至少一个”可指示以下全部:(1)包括至少一个a,(2)包括至少一个b,或者(3)包括至少一个a和至少一个b。此外,如这里所使用的,术语“第一”和“第二”可修饰各种组件而不管重要性如何,并且不限制所述组件。这些术语仅被用于将一个组件与另一组件区分开。例如,第一用户装置和第二用户装置可指示彼此不同的用户装置,而不管装置的顺序或重要性如何。在不脱离本公开的范围的情况下,第一组件可被表示为第二组件,反之亦可。

将理解,当元件(诸如第一元件)被称为(可操作地或可通信地)“与另一元件(诸如第二元件)耦接/耦接到另一元件(诸如第二元件)”或者“与另一元件(诸如第二元件)连接/连接到另一元件(诸如第二元件)时,它可直接或经由第三元件与另一元件耦接或连接/耦接到或连接到另一元件。反之,将理解,当元件(诸如第一元件)被称为与另一元件(诸如第二元件)“直接耦接”/“直接耦接到”另一元件(诸如第二元件)或者与另一元件(诸如第二元件)“直接连接”/“直接连接到”另一元件(诸如第二元件)时,没有其他元件(诸如第三元件)介入所述元件与所述另一元件之间。

如这里所使用的,根据情况,短语“被配置(或被设置)为”可与短语“适合于”、“具有……的能力”、“被设计为”、“适合于”、“被制为”或“能够”可互换地使用。短语“被配置(或被设置)为”实质上不表示“以硬件方式被专门设计为”。而是,短语“被配置为”可表示装置能够与另一装置或部件一起执行操作。例如,短语“被配置(或被设置)为执行a、b和c的处理器”可表示可通过执行存储在存储器装置中的一个或更多个软件程序来执行操作的通用处理器(诸如cpu或应用处理器)或者用于执行操作的专用处理器(诸如嵌入式处理器)。

这里使用的术语和短语仅用于描述本公开的一些实施例,而不是限制本公开的其他实施例的范围。应理解,除非上下文另有明确指示,否则单数形式包括复数指代物。这里使用的所有术语和短语(包括技术术语和短语以及科学术语和短语)具有与本公开的实施例所属领域的普通技术人员通常理解的含义相同的含义。还将理解,术语和短语(诸如在常用词典中定义的那些术语和短语)应被解释为具有与其在相关领域的上下文中的含义一致的含义,并且将不以理想化或过于正式的意义来解释,除非这里明确地如此定义。在一些情况下,这里定义的术语和短语可被解释为不包括本公开的实施例。

根据本公开的实施例的“电子装置”的示例可包括智能电话、平板个人计算机(pc)、移动电话、视频电话、电子书阅读器、台式pc、膝上型计算机、上网本计算机、工作站、个人数字助理(pda)、便携式多媒体播放器(pmp)、mp3播放器、移动医疗装置、相机、或者可穿戴装置(诸如智能眼镜、头戴式装置(hmd)、电子服装、电子手环、电子项链、电子配件、电子纹身、智能镜、或智能手表)中的至少一个。电子装置的其他示例包括智能家用电器。智能家用电器的示例可包括电视、数字视频盘(dvd)播放器、音频播放器、冰箱、空调、清洁器、烤箱、微波炉、洗衣机、烘干机、空气净化器、机顶盒、家庭自动化控制面板、安全控制面板、tv盒(诸如samsunghomesync、appletv或googletv)、智能扬声器或具有集成数字助理的扬声器(诸如samsunggalaxyhome、applehomepod或amazonecho)、游戏机(诸如xbox、playstation或nintendo)、电子字典、电子钥匙、摄像机、或者电子相框中的至少一个。电子装置的另外其他示例包括各种医疗装置(诸如各种便携式医疗测量装置(如血糖测量装置、心跳测量装置或体温测量装置)、磁共振血管造影(mra)装置、磁共振成像(mri)装置、计算机断层扫描(ct)装置、成像装置或超声装置)、导航装置、全球定位系统(gps)接收器、事件数据记录器(edr)、飞行数据记录器(fdr)、汽车信息娱乐装置、航行电子装置(诸如航行导航装置或陀螺罗盘)、航空电子设备、安全装置、车辆头单元、工业或家庭机器人、自动柜员机(atm)、销售点(pos)装置、或者物联网(iot)装置(诸如灯泡、各种传感器、电表或煤气表、喷洒器、火警器、恒温器、路灯、烤箱、健身器材、热水箱、加热器或锅炉)中的至少一个。电子装置的其他示例包括一件家具或大楼/建筑物的至少一部分、电子板、电子签名接收装置、投影仪、或者各种测量装置(诸如用于测量水、电、气或电磁波的装置)。注意,根据本公开的各种实施例,电子装置可以是上面列出的装置中的一个或组合。根据本公开的一些实施例,电子装置可以是柔性电子装置。这里公开的电子装置不限于上面列出的装置,并且可根据技术的发展包括新的电子装置。

在以下描述中,根据本公开的各种实施例,参考附图描述了电子装置。如这里所使用的,术语“用户”可表示使用所述电子装置的人或另一装置(诸如人工智能电子装置)。

可贯穿本专利文件提供针对其他特定词语和短语的定义。本领域普通技术人员应理解,在许多情况下(如果不是大多数情况),这样的定义适用于先前和将来使用这样定义的词语和短语。

本申请中的描述都不应被解读为暗示任意特定元件、步骤或功能是必须被包括在权利要求范围中的必要元素。专利主题的范围仅由权利要求来限定。在权利要求中使用任意其他术语,包括但不限于“机构”、“模块”、“装置”、“单元”、“组件”、“元件”、“构件”、“设备”、“机器”、“系统”、“处理器”或“控制器”,被申请人理解为指代相关领域技术人员已知的结构。

参照附图描述下面讨论的图1至图5以及本公开的各种实施例。然而,应理解,本公开不限于这些实施例,并且其所有改变和/或等同或替换也属于本公开的范围。贯穿本说明书和附图,相同或相似的附图标号可被用于指代相同或相似的元件。

如上所述,基于语音的接口越来越经常用于支持人与机器之间的交互。这些类型的接口通常包括将语音转换为文本的自动语音识别(asr)系统。在asr系统中,确定用户正在说的语言通常是用于执行自动语音识别操作的前提。然而,在执行自动语言识别时存在许多技术挑战,诸如不同语言之间的重叠音素、使用相同语言的不同说话者(诸如母语与非母语说话者或男性与女性说话者)的重叠特性、以及不同语言之间的宽音素分布匹配。在一些现有方法中,诸如在移动电子装置或其他装置的设置期间,用户被简单地给予选择要使用的特定语言的选项。在这些方法中,用户通常被限制为使用该特定语言,并且用户通常不能在不同语言之间切换(至少不是非常容易并且通常不能不重复设置过程)。

本公开提供了用于多口语检测的技术,其中,所述用于多口语检测的技术在其他方面使得能够自动选择并使用一个或更多个语言特定asr模型来对输入进行处理。如下面更详细描述的,装置接收输入数据,诸如与用户话语相关联的音频数据。装置执行特征提取以诸如通过从输入数据识别音素的特征来识别与输入数据相关联的特征。使用多个语言模型(也称为语言特定声学模型)来处理提取特征以识别与输入数据的多个部分中的每个部分相关联的语言。根据输入数据,输入数据的所有部分可与单一语言相关联,或者输入数据的不同部分可与不同语言相关联。输入数据的每个部分可被路由到语言特定asr模型,以基于该部分的识别出的语言进行进一步处理,并且每个asr模型针对特定语言被调整(训练)。在一些实施例中,由于对在输入数据中使用的语言的识别可比对包含在输入数据中的实际词语或短语的识别涉及更少的特征,因此语言模型可从asr模型得到并且可比asr模型处理更少数量的特征。

通过这种方式,由于与输入音频数据相关联的一个或多个语言可被自动识别,因此这些技术使电子装置或其他装置更有效地接收和处理输入音频数据。此外,这些技术使电子装置或其他装置在处理不同语言之间无缝转换,而不需要用户选择不同语言或者重新执行装置设置过程来选择不同语言。这对于讲多个语言且可能在相同的输入音频数据中在不同语言之间切换的用户可能特别有用。此外,用于改进对口语的检测的能力可以帮助基于asr的系统提供对用户输入的更好的响应,并且可使系统能够服务于更广泛的潜在用户群体。

作为该功能的特定示例,asr系统的准确性通常高度依赖于asr系统的训练以及将输入数据提供给asr系统以进行处理的条件。虽然用于训练asr系统的训练数据通常包含来自特定语言的纯语音,但是在现实世界使用期间提供给asr系统的输入数据很少具有相同特性。例如,讲多个语言的用户可能经常与使用不同语言的装置交互。通过使用下面描述的技术,一个或更多个语言特定asr模型可根据每个用户输入的一个或多个语言被用于该用户输入。因此,在一些实施例中,对与特定输入相关联的一种或多种口语的自动检测可作为预处理操作的一部分来执行,以便识别语言并针对识别出的语言使用合适的asr模型。

图1示出根据本公开的示例网络配置100。如图1中所示,根据本公开的实施例,电子装置101被包括在网络配置100中。电子装置101可包括总线110、处理器120、存储器130、输入/输出(i/o)接口150、显示器160、通信接口170或事件处理模块180中的至少一个。在一些实施例中,电子装置101可不包括所述组件中的至少一个组件或者可添加另一组件。

总线110可包括用于将组件120-180彼此连接且在组件之间传送通信(诸如控制消息和/或数据)的电路。处理器120可包括中央处理器(cpu)、应用处理器(ap)或通信处理器(cp)中的一个或更多个。处理器120可对电子装置101的其他组件中的至少一个组件执行控制并且/或者执行与通信有关的操作或数据处理。如下面更详细描述的,处理器120可分析输入音频数据,自动识别在输入音频数据中使用的一个或多个语言,并且基于识别出的语言来对输入音频数据进行处理。

存储器130可包括易失性存储器和/或非易失性存储器。例如,存储器130可存储与电子装置101的至少一个其他组件相关的命令或数据。根据本公开的实施例,存储器130可存储软件和/或程序140。程序140可包括例如内核141、中间件143、应用编程接口(api)145和/或应用程序(或“应用”)147。内核141、中间件143或api145的至少一部分可被表示为操作系统(os)。

内核141可控制或管理用于执行在其他程序(诸如中间件143、api145或应用程序147)中实现的操作或功能的系统资源(诸如总线110、处理器120或存储器130)。内核141可提供允许中间件143、api145或应用147访问电子装置101的各个组件的接口以控制或管理系统资源。应用147包括用于基于如下所述的自动语言检测来对输入数据进行处理的一个或更多个应用。这些功能可由单个应用或多个应用来执行,其中,每个应用执行这些功能中的一个或更多个功能。例如,中间件143可用作用于允许api145或应用147与内核141对数据进行通信的中继。可提供多个应用147。中间件143可诸如通过将使用电子装置101的系统资源(诸如总线110、处理器120或存储器130)的优先级分配给多个应用147中的至少一个应用来控制从应用147接收到的工作请求。api145是允许应用147控制从内核141或中间件143提供的功能的接口。例如,api145可包括用于文件控制、窗口控制、图像处理或文本控制的至少一个接口或功能(诸如命令)。

输入/输出接口150可用作可例如将从用户或其他外部装置输入的命令或数据传送到电子装置101的其他组件的接口。此外,输入/输出接口150可将从电子装置101的其他组件接收到的命令或数据输出到用户或其他外部装置。

显示器160可包括例如液晶显示器(lcd)、发光二极管(led)显示器、有机发光二极管(oled)显示器、量子发光二极管(qled)显示器、微机电系统(mems)显示器或电子纸显示器。显示器160还可以是深度感知显示器,诸如多焦显示器。显示器160可向用户显示各种内容(诸如文本、图像、视频、图标或符号)。显示器160可包括触摸屏,并且可接收例如使用电子笔或用户的身体部分输入的触摸、手势、接近度或悬停。

通信接口170可建立电子装置101与外部电子装置(诸如第一电子装置102、第二电子装置104或服务器106)之间的通信。例如,通信接口170可通过无线或有线通信与网络162或164连接,以与外部电子装置进行通信。

无线通信可将例如长期演进(lte)、高级长期演进(lte-a)、码分多址(cdma)、宽带码分多址(wcdma)、通用移动电信系统(umts)、无线宽带(wibro)、或全球移动通信系统(gsm)中的至少一个用作蜂窝通信协议。有线连接可包括例如通用串行总线(usb)、高清多媒体接口(hdmi)、推荐标准232(rs-232)、或普通老式电话服务(pots)中的至少一个。网络162或164可包括至少一个通信网络,诸如计算机网络(如局域网(lan)或广域网(wan))、互联网、或电话网络。

第一外部电子装置102或第二外部电子装置104可以是可穿戴装置或电子装置101可安装的可穿戴装置(诸如头戴式显示器(hmd))。当电子装置101被安装在hmd(诸如电子装置102)中时,电子装置101可检测hmd中的安装并在虚拟现实模式下操作。当电子装置101被安装在电子装置102(诸如hmd)中时,电子装置101可通过通信接口170与电子装置102进行通信。电子装置101可与电子装置102直接连接以在不涉及单独网络的情况下与电子装置102进行通信。

第一外部电子装置102和第二外部电子装置104皆可以是与电子装置101相同类型或不同类型的装置。根据本公开的实施例,服务器106可包括一个或更多个服务器的组。此外,根据本公开的实施例,在电子装置101上执行的操作中的全部或一些操作可在另一电子装置或多个其他电子装置(诸如电子装置102和104或者服务器106)上执行。此外,根据本公开的实施例,当电子装置101应当自动或按请求执行某一功能或服务时,电子装置101可请求另一装置(诸如电子装置102和104或者服务器106)执行与所述功能或服务相关联的至少一些功能,而不是独自或另外执行所述功能或服务。另一电子装置(诸如电子装置102和104或者服务器106)可执行所请求的功能或附加功能,并将执行的结果传送到电子装置101。电子装置101可通过按原样或附加地对接收到的结果进行处理来提供所请求的功能或服务。为此,例如,可使用云计算、分布式计算或客户端-服务器计算技术。

根据本公开的实施例,虽然图1示出了电子装置101包括通信接口170以经由网络162和164与外部电子装置102或104或者服务器106进行通信,但是电子装置101可在没有单独的通信功能的情况下独立操作。此外,注意,可通过与针对电子装置101所示的相同或相似的方式使用总线、处理器、存储器、i/o接口、显示器、通信接口和事件处理模块(或其任意合适的子集)来实现电子装置102或104或者服务器106。

服务器106可操作以通过执行在电子装置101上实现的操作(或功能)中的至少一个操作(或功能)来驱动电子装置101。例如,服务器106可包括可支持在电子装置101中实现的事件处理模块180的事件处理服务器模块(未示出)。事件处理服务器模块可包括事件处理模块180的组件中的至少一个组件,并且执行(或者替代地执行)由事件处理模块180进行的操作(或功能)中的至少一个操作(或功能)。事件处理模块180可对从其他元件(诸如处理器120、存储器130、输入/输出接口150或通信接口170)获得的信息中的至少一部分信息进行处理,并且可通过各种方式将其提供给用户。

虽然事件处理模块180被示出为与图1中的处理器120分开的模块,但是事件处理模块180的至少一部分可被包括或实现在处理器120或至少一个其他模块中,或者事件处理模块180的整个功能可被包括或实现在所示处理器120或另一处理器中。事件处理模块180可与存储在存储器130中的至少一个程序140互操作地执行根据本公开的实施例的操作。

尽管图1示出了网络配置100的一个示例,但是可对图1进行各种改变。例如,网络配置100可通过任意合适的布置包括任意数量的每个组件。通常,计算和通信系统具有各种各样的配置,并且图1不将本公开的范围限制于任意特定配置。此外,虽然图1示出了可使用本专利文件中公开的各种特征的一个操作环境,但是这些特征可在任何其他合适的系统中被使用。

图2示出根据本公开的用于多口语检测的示例架构200。为了便于解释,图2中所示的架构200可被描述为使用图1中所示的网络配置100中的电子装置101来实现。然而,可由任何合适的(多个)装置使用架构200并且可在任何合适的(多个)系统中使用架构200,诸如由网络配置100中的服务器106来使用。

如图2中所示,架构200通常操作以接收基于音频的输入202并生成表示基于音频的输入202的基于文本的输出204。基于音频的输入202可表示包含一个或更多个口语词语的任何合适的音频信息。例如,基于音频的输入202可表示在一些情况下可由电子装置101的麦克风或其他组件捕获的用户话语的数字化(且可能被预处理的)版本。基于音频的输入202可包括由至少一个用户说出的一个词语或多个词语,并且(多个)用户在说话时可使用单个语言或多个语言。基于文本的输出204表示在此使用自动语音识别来完成转换为文本形式的基于音频的输入202。因此,架构200可对基于音频的输入202进行处理以识别在基于音频的输入202中使用的语言,并且将包含在基于音频的输入202中的词语和短语转换为基于文本的输出204中的文本。

在架构200中,基于音频的输入202被提供给特征提取器206,其中,特征提取器206通常操作以对基于音频的输入202进行处理并从基于音频的输入202提取各种特征。提取特征可表示基于音频的输入202的任何合适的特性。在一些实施例中,提取特征包括包含在基于音频的输入202中的音素。音素表示语言的语音系统的单位,其中,所述单位被感知为语言中的不同声音。可使用一组共同的音素来表示许多语言中的词语,尽管这些音素的使用基于语言而变化很大。因此,特征提取器206可从基于音频的输入202提取音素特征,以便于(i)识别在基于音频的输入202中使用的一个或多个语言,以及(ii)通过识别基于音频的输入202中包含的词语和短语来将基于音频的输入202转换为基于文本的输出204。

特征提取器206可使用用于从基于音频的输入202提取音素特征或其他特征的任何合适的技术。例如,特征提取器206可基于小波分解技术或卷积神经网络技术来操作。已经开发了用于从音频输入数据提取特征的各种方法,并且在未来肯定要开发另外的方法。本公开不限于任何特定类型的特征提取技术或者特征提取器206的任何特定实施方式。此外,特征提取器206可以以任何合适的格式表示提取特征。在一些实施例中,例如,提取特征可具有mel频率倒谱系数(mfcc)的形式,尽管可通过任何其他合适的方式定义提取特征。

基于音频的输入202的提取特征从特征提取器206被提供给语言特定声学模型评分函数208,其中,语言特定声学模型评分函数208通常操作以识别基于音频的输入202的各个部分来自特定语言的可能性。在该示例中,评分函数208包括多个语言模型210(也称为语言特定声学模型)或者与所述多个语言模型210结合地被使用。语言模型210与不同语言(或者可能是相同语言的不同方言,在此被视为不同语言)相关联。在一些实施例中,每个语言模型210被训练或以其他方式被配置为计算基于音频的输入202的每个部分来自某语言的概率,其中,语言模型210已经针对该语言被训练或以其他方式与该语言相关联。因此,例如,第一语言模型210(lm1)可接收基于音频的输入202的第一部分并且生成基于音频的输入202的第一部分来自第一语言的概率,第二语言模型210(lm2)可接收基于音频的输入202的第一部分并且生成基于音频的输入202的第一部分来自第二语言的概率,等等。可由每个语言模型210执行该处理,以便生成基于音频的输入202的第一部分来自各个语言的概率,并且这可以并行发生,使得所有语言模型210同时或以重叠方式对基于音频的输入202的第一部分进行处理。此外,可针对基于音频的输入202的第二部分、第三部分和其他部分执行该处理。来自评分函数208的输出表示针对基于音频的输入202的所有部分跨所有支持的语言的概率的集合。

语言特定声学模型评分函数208可支持用于生成概率或者以其他方式确定基于音频的输入202的各个部分与各个语言相关联的可能性的任何合适的技术。例如,在一些实施例中,语言模型210中的每个语言模型可限定多个状态并且包括用于在状态之间移动的状态间转换和状态内转换。每个状态可将特定函数应用于输入数据片段,以便生成输入数据片段是特定语言的概率。作为特定示例,在一些情况下,每个语言模型210的输出可被表示为p(phoneklang-y|xi),其中,p(·)表示针对特定语言lang-y的特定音素phonek存在于基于音频的输入202的特定片段xi中的计算出的概率。因此,每个语言模型210可被用于计算针对与特定语言相关联的每个音素的概率,并且这可针对基于音频的输入202的每个部分(片段)执行。

特征连结器212对来自评分函数208的输出进行组合以生成特征向量。可通过任何合适的方式生成这里的特征向量。例如,特征连结器212可对随时间从评分函数208输出的概率进行累加以创建值的矩阵,然后所述值的矩阵可如下所述被进一步处理。然而,注意,特征连结器212可通过任何其他合适的方式对来自评分函数208的输出进行组合以生成特征向量。此外,在一些实施例中,特征连结器212可将来自评分函数208的输出与由特征提取器206生成的原始提取特征(可被称为“原(raw)”特征)组合。

由特征连结器212产生的特征向量被提供给神经分类模型214,其中,神经分类模型214对特征向量进行处理以识别在基于音频的输入202中使用的一个或多个语言。神经分类模型214可使用任何合适的机器学习技术来对特征向量进行处理并基于该特征向量来识别语言。例如,神经分类模型214可包括用于对特征向量进行处理的至少一个卷积神经网络以及相关联的层,诸如归一化层和池化层。在图3中示出了下面描述的神经分类模型214的一个示例实施方式。然而,应注意,图3中所示的神经分类模型214的具体实施方式仅用于说明,并且可通过任何其他合适的方式实施神经分类模型214。

神经分类模型214使用与基于音频的输入202相关联的识别出的一个或多个语言来控制asr引擎216,其中,asr引擎216通常操作以将基于音频的输入202(或其特定部分)转换为文本。这里,asr引擎216包括与不同语言相关联的多个asr模型218或者与和不同语言相关联的多个asr模型218结合地被使用。asr引擎216可使用每个asr模型218来将基于音频的输入202的至少一部分转换为与该asr模型218相关联的特定语言的文本。因此,如果神经分类模型214确定在基于音频的输入202中使用了单个特定语言,则神经分类模型214可将基于音频的输入202定向到与该特定语言相关联的asr模型218。如果神经分类模型214确定在基于音频的输入202中使用了多个特定语言,则神经分类模型214可将基于音频的输入202的不同部分定向到与那些特定语言相关联的不同asr模型218。asr引擎216随后可使用该特定asr模型218或那些特定asr模型218来生成针对基于音频的输入202的基于文本的输出204。

通过这种方式,架构200能够自动识别正在基于音频的输入202中使用的一个或多个语言,并且自动将基于音频的输入202或其部分路由到(多个)合适的asr模型218。在其他方面,这允许电子装置101的同一用户或不同用户使用不同语言与电子装置101交互。这还允许同一用户在相同的基于音频的输入202中的不同语言之间切换。换言之,架构200能够在很少或没有用户输入的情况下在不同语言之间无缝切换(除了一个或多个用户在说话时在不同语言之间切换之外)。

注意,由评分函数208使用的用于支持语言识别的特征可包括由asr引擎216使用的用于支持语言识别(表示识别用特定语言说出的特定词语)的相同特征中的至少一些特征。结果,由评分函数208使用的语言模型210可在形式上类似于由asr引擎216使用的asr模型218。然而,如上所述,与由asr模型218使用的用于执行语言识别的提取出的特征的数量相比,由评分函数208使用的语言模型210可能需要使用更少的用于执行语言识别的提取出的特征。作为特定示例,在一些情况下,asr引擎216可使用超过一千个特征来执行语言识别,而语言模型210可使用更少的一组特征(诸如一百或几百个特征)来执行语言识别。

在一些实施例中,为了支持在语言模型210中使用更少的特征,在架构200中或与架构200结合使用知识精馏函数220。知识精馏函数220操作以采用较大的训练模型(诸如asr模型218)并且训练较小的模型(诸如相关联的语言模型210)以模仿较大的模型的行为或从较大的模型获得的结果。换言之,知识精馏函数220可采用已经被训练用于特定语言的语言识别的asr模型218,并且生成被训练用于该相同语言的语言识别的较小的语言模型210。这允许基于训练出的asr模型218来生成语言模型210。然而,注意,可通过任何其他合适的方式训练语言模型210。知识精馏函数220可使用用于基于较大的训练模型来生成较小的模型的任何合适的技术。

还可通过任何合适的方式训练asr模型218。例如,可通过向特征提取器206提供特定语言的已知词语和短语并且训练与该特定语言相关联的asr模型218以识别所述已知词语和短语来训练每个asr模型218。已经开发了用于对模型进行训练以识别各个语言的词语和短语的各种方法,并且在未来肯定会开发另外的方法。这允许诸如通过训练用于新语言的附加asr模型218并且随后使用知识精馏函数220生成用于新语言的语言模型210,来容易地将附加语言添加到架构200。

可通过任何合适的方式使用图2中所示且在上面描述的架构200。例如,架构200的一个示例用例是在电子装置101或者在家、办公室或其他环境中使用的其他装置中,其中,在家、办公室或其他环境中不同的人讲不同的语言。电子装置101可接收并处理来自使用不同语言的各种用户的话语,并且基于与用户话语相关联的识别出的文本来提供响应。作为具体示例,电子装置101可从第一用户接收问题(诸如“天气怎么样?”)并提供响应(诸如“天气温暖且晴朗”)。同一电子装置101可从使用不同语言(诸如韩语)的第二用户接收相同的问题,并且向第二用户提供相同的响应(尽管该响应也可以是韩语)。同一电子装置101还可从使用不同语言(诸如印度语)的第三用户接收相同的问题,并且向第三用户提供相同的响应(尽管该响应也可以是印度语)。用户不需要执行任何设置操作或者以其他方式主动执行用于改变由电子装置101识别的语言的操作。

尽管图2示出了用于多口语检测的架构200的一个示例,但是可对图2进行各种改变。例如,评分函数208可包括任何合适数量的语言模型210或者可与任何合适数量的语言模型210结合地被使用,并且asr引擎216可包括任何合适数量的asr模型218或者可与任何合适数量的asr模型218结合地被使用。

图3示出根据本公开的用于多口语检测的更具体的示例架构300。具体地,图3中所示的架构300可表示图2中所示的架构200的部分的更详细的实施方式。为此,图2中使用的各种附图标号在图3中也被用于表示架构200与架构300之间的共同组件。为了便于解释,图3中所示的架构300可被描述为使用图1中所示的网络配置100中的电子装置101来实现。然而,可由任何合适的(多个)装置使用架构300并且可在任何合适的(多个)系统中使用架构300,诸如由网络配置100中的服务器106使用架构300。

如图3中所示,基于音频的输入202被提供给特征提取器206,其中,特征提取器206从基于音频的输入202识别出提取特征。提取特征被提供给语言特定声学模型评分函数208,其中,语言特定声学模型评分函数208使用多个语言模型210来识别基于音频的输入202的不同部分是特定语言的概率或其他可能性。来自基于音频的输入202的原提取特征和来自评分函数208的概率被提供给特征连结器212。

特征连结器212对原提取特征和概率进行组合以形成特征向量。在该特定示例中,使用时间累加器来实现特征连结器212,其中,时间累加器对由特征提取器206和评分函数208随时间生成的各种信息进行累加。本质上,特征连结器212对由特征提取器206和评分函数208生成的信息进行堆叠以形成特征向量,随后由神经分类模型214对该特征向量进行进一步处理。

在图3中所示的具体示例中,由特征连结器212按行302和列304对信息进行累加。每个行302与来自不同源的数据相关联。具体地,该示例中的第一行302包括来自特征提取器206的原提取特征306,该示例中的第二行302包括使用第一语言模型210计算出的概率308,并且该示例中的最后一行302包括使用最后语言模型210计算出的概率310。注意,包含使用附加语言模型210计算出的概率的附加行可类似地由特征连结器212累加。每个列304与不同时间相关联,并且其与基于音频的输入202的不同部分相关联。例如,第一列304可包含原提取特征306以及与基于音频的输入202的第一部分(诸如第一个20毫秒片段)相关联的概率308和概率310,下一列304可包含原提取特征306以及与基于音频的输入202的第二部分(诸如第二个20毫秒片段)相关联的概率308和概率310,等等。由特征连结器212堆叠或累加以用于进一步处理的列304的数量可基于多个因素而变化。在一些情况下,列304可跨越指定时间段,诸如一秒、两秒、三秒或五秒。

注意,在由特征连结器212提供的累加信息中包括来自特征提取器206的原提取特征306是可选的。换言之,特征连结器212可连结来自语言模型210的概率308、310,并且在累加信息中排除提取特征306。然而,在一些情况下,已经确定将原提取特征306包括在由神经分类模型214处理的特征向量中可以改进神经分类模型214的语言识别。

由神经分类模型214对由特征连结器212提供的特征向量进行处理,在该示例中,神经分类模型214包括时间卷积神经网络(tcnn)312。时间卷积神经网络312将卷积函数应用于由特征连结器212提供的信息。更具体地,时间卷积神经网络312将卷积函数应用于窗口314内的信息,并且窗口314移动或滑动,使得时间卷积神经网络312可将卷积函数应用于来自特征连结器212的信息的不同子集。通过这种方式,时间卷积神经网络312可通过重叠方式将卷积函数应用于由特征连结器212提供的原提取特征306以及概率308和概率310。

在一些情况下,窗口314可具有与由特征连结器212提供的原提取特征306和所有概率(包括概率308和概率310)的组合高度匹配的高度,在这种情况下,窗口314可以水平滑动但不垂直滑动。然而,注意,其他实施例可被用于窗口314。此外,窗口314可具有比由特征连结器212提供的原提取特征306和所有概率(包括概率308和概率310)的组合宽度小得多的宽度。在一些实施例中,窗口314的宽度可基于由特征连结器212堆叠的特征的数量。作为特定示例,如果来自特征连结器212的信息横向跨越两百个样点,则窗口314可具有二十个样点的宽度。然而,再次注意,其他实施例可被用于窗口314。

来自时间卷积神经网络312的卷积输出被提供给批量归一化函数316,其中,批量归一化函数316使来自时间卷积神经网络312的卷积输出归一化。批量归一化函数316可使用用于使来自时间卷积神经网络312的卷积输出归一化的任何合适的技术。来自时间卷积神经网络312的归一化卷积输出随后被提供给另一时间卷积神经网络318,其中,所述另一时间卷积神经网络318可通过与所述时间卷积神经网络312相同或相似的方式操作。时间卷积神经网络318之后可以是另一批量归一化函数。注意,这里可以使用任何合适数量的时间卷积神经网络和批量归一化函数。在一些实施例中,例如,神经分类模型214可包括三个到五个之间的时间卷积神经网络,并且每个时间卷积神经网络之后可以是批量归一化函数。

池化层320对由最终时间卷积神经网络产生的卷积输出(可能经过归一化)进行处理,并且选择或组合卷积输出以输入到神经分类模型214的激活函数。在该示例中,池化层320通过对多组卷积值求平均并输出平均卷积值来对来自最终时间卷积神经网络的卷积输出进行组合。这里使用各种时间卷积神经网络、批量归一化函数和池化层来对由架构300支持的每个语言进行建模,从而使这些组件有效地对正在基于音频的输入202中使用的每个语言的可能性进行评分。

在该示例中使用softmax函数322来实现神经分类模型214的激活函数。softmax函数322从池化层320接收平均卷积值,并且操作以计算最终概率324,其中,最终概率324确认每个语言与基于音频的输入202的至少一部分相关联的概率。这里,最终概率324可被表示为p(langi|xt),其中,p(·)表示特定语言langi与基于音频的输入202的特定时刻xt相关联的计算出的概率。针对基于音频的输入202的每个部分,可使用跨所有语言的概率来识别应被用于对基于音频的输入202的该部分进行处理的asr模型218。

注意,在一些实施例中,softmax函数322还可被配置为在识别与基于音频的输入202相关联的语言时考虑基于音频的输入202中的静音量。例如,在许多情况下(甚至在活跃的对话期间),大百分比的基于音频的输入202可能与静音相关联(或者至少没有人实际说话)。在一些情况下,基于音频的输入202中的静音量实际上可超过基于音频的输入202的整个持续时间的50%。因此,softmax函数322可操作以排除基于音频的输入202的与静音相关联的部分。在一些实施例中,softmax函数322可计算针对各个语言的概率,同时通过以下方式排除基于音频的输入202的静音部分(也称为空部分):

这里,x表示基于音频的输入202从时间t零到时间tt的长度,并且i表示单位矩阵,其中,所述单位矩阵的大小取决于与高于阈值(在该示例中为0.5,尽管这里可以使用其他阈值)的非静音时间相关联的语言的数量。

基于由softmax函数322输出的概率,当识别出单个语言时,基于音频的输入202可被全部定向到单个asr模型218,或者当识别出多个语言时,基于音频的输入202的不同部分可被定向到不同asr模型218。结果,不同语言的输入可被自动路由到合适的asr模型218以进行处理,并且不同语言的相同输入的部分可被自动路由到合适的asr模型218以进行处理。

尽管图3示出了用于多口语检测的架构300的更具体的示例,但是可对图3进行各种改变。例如,评分函数208可包括任何合适数量的语言模型210或者可与任何合适数量的语言模型210结合地被使用。此外,特征连结器212可在任何合适的时间段内在时间上累加或以其他方式组合任何合适数量的输入。此外,可使用任何其他合适的机器学习架构或其他架构来实现神经分类模型214。

图4示出根据本公开的用于支持识别多个语言之间的转换的示例架构400。为了便于解释,图4中所示的架构400可被描述为使用图1中所示的网络配置100中的电子装置101来实现。然而,可由任何合适的(多个)装置使用架构400并且可在任何合适的(多个)系统中使用架构400,诸如由网络配置100中的服务器106使用架构400。

如上所述,在一些情况下,诸如当用户在说话时在语言之间切换时,基于音频的输入202可能与多个语言相关联。在这些情况下,相同的基于音频的输入202的不同部分与不同语言相关联,并且可被定向到不同asr模型218以进行处理。这里,可使用上述方法将基于音频的输入202的不同部分识别为与不同语言相关联。然而,针对基于音频的输入202的涉及不同语言之间的转换的特定部分,可能更难以识别要使用的语言。因此,在一些实施例中,可执行附加处理以识别正在基于音频的输入202中使用的语言何时动态地改变。

如图4中所示,架构400包括深度子网络分解(dsnd)算法402。这里的dsnd算法402可访问与各个语言相关联的大语言模型404。在一些情况下,例如,语言模型404可与许多语言(诸如通用模型)相关联。dsnd算法402支持知识精馏,以便采用大语言模型404并生成多个子网络模型,诸如子网络模型406和408。

可训练每个子网络模型406和408以识别不同语言集合之间的跳转,并且每个子网络模型的输出可被视为用于语言识别的新特征向量。例如,可训练一个子网络模型406以识别说话者何时从英语转换到韩语,并且可训练另一子网络模型408以识别说话者何时从英语转换到印度语。注意,这些仅是示例,并且可训练子网络模型以识别说话者何时在任意合适的语言之间转换。这可使数字个人助理或其他基于asr的系统更准确地检测用户何时在语言之间动态地切换,从而这可使基于asr的系统更准确地响应多语言输入。dsnd算法402支持用于基于较大模型生成子网络模型的任何合适的知识精馏或其他技术。

可通过任何合适的方式在上述架构200、300中或根据本公开设计的其他架构中使用各种子网络模型。例如,在图2的架构200中,可在神经分类模型214之后使用子网络模型,以帮助改进由神经分类模型214提供的语言检测功能。在图3的架构300中,可在最后时间卷积神经网络之后(且可选地在最后批量归一化函数之后)使用子网络模型,以再次帮助改进由神经分类模型214提供的语言检测功能。然而,应注意,在架构200、300中的任一个架构中都不需要使用子网络模型。

当用户说出嵌入在不同语言的话语内的特定语言话语时,由子网络模型提供的功能可能是有用的。例如,用户可将以下话语作为输入提供给电子装置101:

印度语的“howareyoudoing”被称为它在韩语中是什么?

在以上示例中,可使用各种子网络模型来识别英语与印度语之间的转换。这可使电子装置101或其他装置更有效地将话语的英语部分路由到基于英语的asr模型218,并且将话语的印度语部分路由到基于印度语的asr模型218。当然,以上示例仅用于说明,并且这里可对涉及任何数量的语言的任何其他合适的多语言话语进行处理。

尽管图4示出了用于支持识别多个语言之间的转换的架构400的一个示例,但是可对图4进行各种改变。例如,架构400可包括任何其他数量的子网络模型。此外,可使用任何其他合适的技术来识别或处理输入话语中的语言转换。

图5示出根据本公开的用于多口语检测的示例方法500。为了便于解释,图5中所示的方法500可被描述为由图1中所示的网络配置100中的电子装置101来执行。然而,可由任何合适的(多个)装置执行方法500并且可在任何合适的(多个)系统中执行方法500,诸如由网络配置100中的服务器106执行方法500。

如图5中所示,在步骤502接收输入音频数据。这可包括例如,电子装置101的处理器120接收基于音频的输入202,其中,基于音频的输入202表示由电子装置101的麦克风捕获的用户话语的数字化且可能预处理的版本。用户话语可包括用一个或更多个语言说出的一个或更多个词语,但是此时(多个)特定词语和(多个)特定语言是未知的。在步骤504提取输入音频数据的特征。这可包括例如,电子装置101的处理器120使用特征提取器206从基于音频的输入202提取音素或基于音素的特征。当然,这里还可以或可以可选地提取基于音频的输入202的任何其他特征或附加特征。

在步骤506确定输入音频数据的多个部分中的每个部分是特定语言的可能性。这可包括例如,电子装置101的处理器120使用语言模型210来处理提取特征并确定基于音频的输入202的每个部分是用特定语言说出的概率。基于音频的输入202的不同部分在此可表示不同的片段,诸如跨越给定时间段(如20毫秒)的片段。然而,可通过任何其他合适的方式来识别基于音频的输入202的不同部分。在步骤508,对确定的可能性和输入音频数据的提取特征(可选)进行组合以产生特征向量。这可包括例如,电子装置101的处理器120使用特征连结器212来随时间在时间上累加或以其他方式组合来自语言模型210的识别出的概率308、310和来自特征提取器206的原提取特征306(可选)。

在步骤510,使用特征向量和神经分类模型来检测与输入音频数据的每个部分相关联的语言。这可包括例如,电子装置101的处理器120使用神经分类模型214来确定基于音频的输入202的每个部分与特定语言相关联的最终概率。作为特定示例,这可包括电子装置101的处理器120使用一个或更多个时间卷积神经网络、一个或更多个批量归一化函数、至少一个池化层、以及至少一个激活函数来对在一段时间内累加的识别出的概率308、310和原提取特征306(可选)进行处理。每个时间卷积神经网络可使用滑动窗口314来对其输入数据进行处理并将卷积函数应用于该输入数据。

在步骤512,基于针对输入音频数据的每个部分识别出的语言,将输入音频数据的每个部分定向到asr模型。这可包括例如,如果单个语言与基于音频的输入202相关联,则电子装置101的处理器120使得基于音频的输入202被提供给单个asr模型218。这还可包括,如果基于音频的输入202的不同部分与不同语言相关联,则电子装置101的处理器120使得基于音频的输入202的这些部分被提供给不同asr模型218。在步骤514,使用相关联的asr模型将输入音频数据的每个部分转换为文本或者以其他方式理解输入音频数据的每个部分。这可包括例如,电子装置101的处理器120使用具有合适的(多个)asr模型218的asr引擎216将基于音频的输入202转换为基于文本的输出204。

尽管图5示出了用于多口语检测的方法500的一个示例,但是可对图5进行各种改变。例如,虽然图5中的各个步骤被示出为一系列步骤,但是图5中的各个步骤可以重叠、并行发生、按不同顺序发生或者发生任意次数。

这里应注意,虽然上面大多描述为不需要用户输入来识别与输入音频数据相关联的一个或多个语言,但是本公开的一些实施例可在识别与输入音频数据相关联的一个或多个语言时使用某种形式的用户输入。例如,大多数用户通常可能仅会说少数语言,诸如两种或三种语言(尽管对于某些用户来说更多数量也是可能的)。在一些情况下,用户可确认可能对电子装置101或其他装置说出的语言,并且该信息可被用于控制使用哪些语言模型210、asr模型218以及可能的子网络模型406和408来对输入音频数据进行处理。用户可通过任何合适的方式并且在任何合适的时间(诸如在装置设置过程期间或通过访问设置菜单)确认可能对装置说出的语言。如果多个用户可能使用电子装置101或其他装置,则由特定用户说出的语言可能被存储在针对该用户的用户配置文件中,并且所述用户配置文件在该用户存在时可被用于控制哪些语言模型210、asr模型218以及可能的子网络模型406和408被用于对输入音频数据进行处理。注意,可使用任何其他合适的技术来限制在任何特定时间分析的语言的数量,或者可在任何特定时间(或在所有时间)使用所有支持的语言。

尽管已经参照各种示例实施例描述了本公开,但是可向本领域技术人员建议各种改变和修改。本公开旨在涵盖落入权利要求的范围内的这些改变和修改。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜