用于基于语音的音频和文本对齐的系统和方法与流程

文档序号:25863497发布日期:2021-07-13 16:21阅读:330来源:国知局
用于基于语音的音频和文本对齐的系统和方法与流程

本申请涉及用于基于语音的音频和文本对齐的系统和方法。



背景技术:

各种媒体元素(例如,语音、文本、图像等)的时间对齐对于各种仅音频和/或音频/视觉应用而言可能很重要。例如,在口头演示中,(例如,来自演示者的语音的)音频和(例如,来自所显示演示脚本的)文本的时间对齐可能会驱动如下功能,包括:(1)提供响应性的呈现文本提示和/或提醒;(2)响应于在脚本中达到预定义时间和/或触发等而自动发起动态效应和事件。一些常规时间媒体对齐方法基于文本对齐解决了这个问题。例如,常规方法首先将音频输入转录成文本,然后应用文本到文本对齐算法。不过,这样的方法可能会经历转录错误,尤其是对于具有混合语言、技术/专业语言或数字、日期等的文字和语句。在发音相同(例如,同音词)的不同文本词语(具有不同含义)和/或相同但具有不同发音(具有关联的不同含义)的文本词语的情况下,这样的方法也可能产生错误。因此,期望有改进的方式来在时间上对齐媒体元素。



技术实现要素:

本公开描述了提供与音频输入(例如,讲话者的语音)在时间上对齐的文本提示(例如,显示的文本脚本)的系统和方法。这样的时间对齐基于音频输入的特定特征(例如,语音特性)而不是通过语音转文本转录使用直接文本匹配的技术。这样的系统和方法可以大大地提高对齐速度、精确度和稳定性。

在第一方面中,描述了一种系统。该系统包括被配置成接收音频输入并提供音频输入波形的麦克风,以及被配置成接收文本输入的文本输入接口。该系统还包括音频特征生成器,所述音频特征生成器包括被配置成将文本输入转换成文本转语音输入波形的文本转语音模块。该系统还包括音频特征提取器,所述音频特征提取器被配置成从音频输入波形和文本转语音输入波形提取特有音频特征。该系统还包括对齐模块,对齐模块被配置成比较音频输入波形特征与文本转语音波形特征,以便在时间上对齐文本输入的显示版本与音频输入。

在第二方面中,描述了一种方法。该方法包括基于音频输入提供音频输入波形以及接收文本输入。该方法还包括将文本输入转换成文本转语音输入波形,以及利用音频特征提取器从音频输入波形和文本转语音输入波形提取特有音频特征。该方法还包括比较音频输入波形特征和文本转语音波形特征。该方法额外地包括:基于所述比较,在时间上对齐文本输入的显示版本与音频输入。

通过阅读以下具体实施方式并在适当情况下参考附图,这些以及其他实施例、方面、优点和替代形式对于本领域的普通技术人员将变得显而易见。此外,应当理解,本文提供的本发明内容和其他描述和附图意在仅通过举例的方式例示实施例,因此,很多变化都是可能的。例如,结构元件和过程步骤可以被重新布置、组合、分布、消除或以其它方式变化,同时保持在如所主张的实施例的范围之内。

附图说明

图1示出了根据示例性实施例的系统。

图2示出了根据示例性实施例的操作场景。

图3示出了根据示例性实施例的操作场景。

图4示出了根据示例性实施例的操作场景。

图5示出了根据示例性实施例的方法。

具体实施方式

本文描述示例性方法、装置和系统。应当理解,词语“示例性”和“示范性”在本文中用于意指“用作示例、实例或者例示”。本文被描述为“示例性”或“示范性”的任何实施例或特征未必要被理解为相比其他实施例或特征是优选或有利的。可以利用其他实施例,并可以做出其他更改,而不脱离本文给出的主题的范围。

于是,本文描述的示例性实施例并非意在限制。如本文一般性描述并且在附图中例示的,本公开的各方面可以通过各种各样不同的配置被布置、取代、组合、分离和设计,本文中想到了所有方式。

此外,除非上下文暗示其他情况,否则可以将每个图中示出的特征彼此组合使用。于是,一般应当将附图视为一个或多个总体实施例的组成方面,并理解并非所有例示的特征是每个实施例必要的。

概览

适当地对齐口头音频与对应的文本脚本应当与底层文本的语义无关。亦即,音频和文本的时间对齐不需要基于文本的任何特定含义。相反,文本和音频的时间对齐应当最有效率地基于匹配的音频声音。这种方式的主要益处在于,它不需要音频输入和文本脚本之间的转换,这避免了可能的转换错误。例如,在利用自动话音识别(asr)的常规方法中,如果asr未能识别口头音频,它生成一些不相关的文本,或者甚至将文本留白。这种语音到文本的转换引入了系统性误差。在本公开中,描述了进行音频和文本对齐而无需理解音频输入中词语的语义含义的系统和方法。

示例性系统包括被配置成从音频输入波形提取特性特征的音频特征提取器。这样的系统还包括音频特征生成器,音频特征生成器利用文本转语音模块将文本输入转换成文本转语音输入波形。该系统还包括对齐模块,对齐模块被配置成在时间上对齐音频输入波形特征与文本转语音波形特征,以便提供在时间上与音频输入同步的文本输入的显示版本。

示例性系统

图1示出了根据示例性实施例的系统100。系统100包括麦克风110,麦克风被配置成接收音频输入10并提供音频输入波形12。在一些实施例中,系统100不需要包括麦克风110。例如,系统100的各个元件可以被配置成例如从预先录制的音频媒体接受音频输入10和/或音频输入波形12。

系统100包括被配置成接收文本输入20的文本输入接口130。在一些实施例中,系统100不需要包括文本输入接口130。例如,系统100的各个元件可以被配置成从例如预先存在的文本文件接收文本输入20。

系统100还包括音频特征生成器140,音频特征生成器140包括被配置成将文本输入20转换成文本转语音输入波形22的文本转语音模块142。

系统100额外包括音频特征提取器120,音频特征提取器被配置成从音频输入波形12和文本转语音输入波形22提取特有音频特征(例如,音频输入波形特征14和文本转语音波形特征24)。在一些示例中,音频特征提取器120可以包括深度神经网络(dnn)122,该卷积神经网络122被配置成基于音频输入波形12或文本转语音输入波形22的加窗频率曲线图提取特有音频特征。在这样的场景中,可以基于音频特征训练数据124来训练dnn122。此外,dnn122可以被配置成提取特有音频特征而无需事先的语义理解。

在一些实施例中,可以从音频输入波形12和/或文本转语音输入波形22之外的源来提取特性特征。例如,可以将音频输入波形12和/或文本转语音波形转换成另一种数据类型,并且可以从那另一源提取特性特征。此外或替代地,可以通过使用查找词典或其他文本参考源直接从文本输入20提取各种文本声音特征。换言之,一些实施例不需要利用常规的文本转语音方法。

系统100还包括对齐模块160,对齐模块被配置成比较音频输入波形特征14与文本转语音波形特征24,以便在时间上对齐文本输入的显示版本与音频输入10。在各实施例中,对齐模块160可以包括如下至少一项:隐马尔科夫模型162、深度神经网络(dnn)164、加权动态编程模型和/或递归神经网络(rnn),它们可以用于在时间上对齐文本输入26的显示版本与音频输入10。在这样的场景中,对齐模块160可以进一步被配置成基于音频输入波形特征、文本转语音波形特征和预定匹配阈值的比较来确定时间匹配。

在一些示范性实施例中,音频输入波形特征14和/或文本转语音波形特征24可以一般地被表征为“声音特征”。在这样的场景中,对齐模块160可以被配置成比较从音频输入波形提取的声音特征和从文本输入26提取的声音特征,以便在时间上对齐文本输入26的显示版本与音频输入10。

在一些示例中,系统100可以额外包括显示器170,显示器170被配置成显示文本输入26的显示版本。

在示例性实施例中,系统100还可以包括音频特征参考数据180。在这样场景中,音频特征提取器120、音频特征生成器140和/或对齐模块160中的至少一个被配置成利用音频特征参考数据180来执行其功能。在一些示例中,音频特征参考数据180可以包括如下至少一项:国际语音字母表(ipa)音频特征、中文拼音音频特征或与声音波形相关的特征。

此外或替代地,系统100可以包括具有至少一个处理器152和存储器154的控制器150。在这样的场景中,至少一个处理器152执行存储器154中存储的指令以便执行指令。指令可以包括操作如下至少一者:音频特征提取器120、音频特征生成器140、对齐模块160和/或显示器170。在一些实施例中,控制器150可以被配置成执行方法500的一些框或所有框,如结合图5所述所描述和例示的。

语音特征序列

图2示出了根据示例性实施例的操作场景200。本系统和相关方法的重要要素是将音频输入和文本输入脚本转换成普通的基于语音的特征序列。语音特征序列具有以下特征:

只要听起来相似,音频都具有相似的语音特征。否则,其具有不同的语音特征。

只要发音相似,文本都具有相似的语音特征。否则,其具有不同的语音特征。

这种系统中可以使用的几种示例性语音特征包括国际语音字母表(ipa)、中文拼音、与声音波形相关的特征、声音频率分布、声音长度、声音重音,以及其他可能性。

音频输入到语音特征序列

如在示例性操作场景200中所示,音频输入(例如图1中的音频输入10)被输入到音频特征提取器(例如图1中的音频特征提取器120),并在其中完成音频输入到音频输入语音特征序列的转换。

也即,可以通过音频特征提取器来完成将音频输入转换成音频输入语音特征序列,音频特征提取器利用了人工智能算法,例如深度神经网络(dnn)。示例性系统可以利用使用加窗频率曲线图作为输入的卷积神经网络(cnn)以从音频波形生成语音特征序列。此外或替代地,示例性系统和方法可以利用其他方式来提取声音特征,像梅尔频率倒谱系数(mel-frequencycepstralcoefficients,mfcc)特征,以及其他可能。

为了基于cnn生成这样的音频特征提取器,可以通过以下方式训练该模型:

收集音频/语音特征对。语音特征可以包括以下一种或多种:ipa序列、拼音序列,以及本文描述的其他替代方案。

音频/语音特征对实例馈送到深度神经网络中并在训练阶段期间更新参数。

利用训练的模型基于音频输入和文本转语音提供音频波形特征。

本深度神经网络模型和其他常规方法之间的关键差异在于,常规方法利用现有语义理解,这使得该模型更加复杂并且可能产生误差。本模型仅利用音频波形来执行语音特征分类而无需理解实际语义含义。这样,本文描述的系统和方法将大大降低模型复杂性和神经网络学习难度。

文本到语音特征序列

如示例性操作场景200中所示,文本输入(例如图1中的文本输入20)被输入到音频特征生成器(例如图1中的音频特征生成器140),并在其中完成文本输入到文本输入语音特征序列的转换。

将文本序列转换成文本输入语音特征序列可以通过几种方式完成,这可以取决于对特有语音特征的期望类型的选择。

对于ipa或拼音等,现有专业人士创建的标准语言词典可以用于直接搜索替换。对于像声音波形的语音特征序列而言,可以利用文本转语音(tts)领域中的方法。这一领域中的最近发展,包括google的深度神经网络tactron2tts框架可以在适当训练之后基于文本输入提供突出的类似人的声音。基于那些生成的声音,可以使用在用于语音特征序列提取的音频输入中介绍的相似方法。需注意,利用这些技术意味着在本公开下将文本转换成语音几乎没有歧义。

序列到序列对齐

如在示例性操作场景200中所示,在从音频和文本输入分别获得语音特征序列之后,可以使用对齐模块获得在时间线上的音频/文本对齐结果,从而与音频输入相对应地显示文本脚本的与之对齐部分。

因为音频和文本输入形成数据序列,所以在时间上对齐两个序列的常见方式是通过加权动态编程。例如,可以将增益/罚分分配给每对音频和文本转语音特征。增益和罚分可以类似于damerau–levenshtein距离(例如,度量两个序列之间的编辑距离的量度)。此外或替代地,为了匹配两个时间序列,可以使用动态时间规整(dtw)。更具体而言,可以确定每对语音特征的加权表格。可以如下地执行生成语音特征对的此类加权表格。步骤1:一开始,可以基于声音特征距其对在时间上间隔多远的主观度量来人工生成该表格。例如,表格的人工生成可以基于例如用户尝试/错误和/或用户输入。步骤2:基于大量多个输入,可以确定弄错各对之间时间距离的概率。在这样的场景中,可以迭代地更新该表格,以便正确地估计容易弄错的声音之间的时间距离。表格之内的权重代表相应对的语音特征之间的声音相似性。然后,可以执行动态编程对齐过程,迭代与加权表格的所有可能对齐组合。接下来,可以确定与权重最大和的最佳时间对齐。需注意,这种方法允许在特定位置的特定不对齐,只要最大化在整个序列或序列的一部分上的对齐即可。

本文描述的系统和方法可以利用基于隐马尔科夫模型(hmm)的对齐方法。在这样的场景中,可以基于文本语音特征来创建状态机,并且可以在从音频接收语音特征时在状态转换之间分配概率。

此外或替代地,可以利用深度神经网络执行序列对齐。常见模型包括基于递归神经网络(rnn)的模型,例如长期记忆(lstm)方法等。

如果音频被接收为流(而不是预先录制的资源),在应用以上方法期间,该系统可以连续输出最晚(例如,最当前的)输入音频的对齐位置。结果,可以有高于匹配方法的少量更新。

匹配问题大小将动态地减小到由尚未匹配的序列构成的更短版本。

因为仅获得了音频输入的初始区段,因此不需要将初始音频区段匹配(或对比)到整个未匹配的文本序列。相反,可以为文本转语音序列最开始处的文本语音特征分配更高权重,并且权重在针对文本的语音特征序列内降低。

由于可能无法精确知道文本转语音语音特征将如何匹配短条的输入音频语音特征,则本文描述的系统和方法可以分配匹配阈值以确定在不同文本语音特征序列候选之间是否有匹配用于将音频语音特征序列输入流传输到文本语音特征序列。可以通过如下一项或多项定义匹配阈值:(1)人工设置启发数量;(2)收集多个音频输入和对应的文本转语音语音数据集,运行流传输匹配算法并选择阈值,其中,例如,在此类数据集中正确地选择所匹配脚本和语音数据集的99%;(3)类似于方法2,根据一些启发信息可以为截止位置分配不同阈值。例如,只要在文本输入中存在标点符号(例如,逗号或句号),我们就可以在序列的该点处为截止赋予更低阈值;(4)可以收集特定人录制的语音。在这样的场景中,可以确定他/她的阅读习惯(例如,口头/讲话特性),这会做出上文更好的阈值调节。这样的学习方法可以包括监督学习技术。

图3示出了根据示例性实施例的操作场景300。操作场景300与操作场景200中的操作步骤基本相同,不同之处仅在于:在操作场景200中描述了可以直接将音频输入转换成音频特征,但在操作场景300中,可以利用话音识别模块将音频输入转换为文本脚本,并且文本脚本可以被使用包括文本转语音模块的音频特征生成器转换成音频-文本输入语音特征序列。然后,与在示例性操作场景200中类似,在从音频和文本输入分别获得语音特征序列之后,可以使用对齐模块获得在时间线上的音频/文本对齐结果,从而与音频输入相对应地显示文本脚本的对齐部分。为简化描述,未对操作场景300中的与操作场景200相同的步骤进行重复描述。由操作场景300可知,本公开的技术方案可与需首先将音频输入转化文本的现有系统兼容。

提词器应用

图4示出了根据示例性实施例的操作场景400。

可以在诸如提词器应用的各种应用中利用系统和方法。

这样的系统可以包括被配置成接收音频输入并提供音频波形的麦克风。该系统还可以包括用于显示文本提示/提醒的监视器(例如,显示器)以及处理音频波形和文本对齐的控制器。

在示例性操作场景400中,提词器应用中的总体流水线可以如下:

步骤1:获取文本脚本序列。

步骤2:提取文本脚本语音特征序列。

步骤3:获取流音频(例如,来自讲话者的音频)。

步骤4:将流音频动态转换成基于部分流音频的小段语音特征序列。

步骤5:将步骤2中提取的文本脚本语音特征序列与在步骤4中获取的基于部分流音频的小段语音特征序列进行对齐并找到对应于最晚(例如,最近)音频波形输入的文本位置。在完成当前对齐后,向显示器提供对齐锚,并随后更新其自身的对齐锚。

步骤7:在监视器上,与音频输入相对应地显示文本脚本。具体地,在一开始,可以显示尚未在时间上对齐的下一句,然后通过在显示屏上向下滚动脚本文本,或者直接在屏幕上改变显示的文本,更新显示的语句。其中显示与更新可基于在步骤6中所构建的文本序列-语音特征序列对齐映射。

可以向这种提词器应用增加其他特征,包括接收如下语音指令的功能,像“回到上一句”、“跳到下一句”、“回到前一节”、“跳到下一节”、“重新开始演示”、“停止演示”等。

示例性方法

图5示出了根据示例性实施例的方法500。将会理解,方法500可以包括比本文明确例示或以其它方式公开的那些更少或更多的步骤或框。此外,可以按照任意次序执行方法500的相应步骤或框,并且可以将每个步骤或框执行一次或多次。在一些实施例中,可以由系统100的控制器150和/或其他元件执行方法500的一些或所有框或步骤,如结合图1、2、3和4所图示和描述。

框502包括基于音频输入(例如,音频输入10)提供音频输入波形(例如,音频输入波形12)。

框504包括接收文本输入(例如,文本输入20)。

框506包括将文本输入转换成文本转语音输入波形(例如,文本转语音输入波形22)。

框508包括利用音频特征提取器(例如,音频特征提取器120)从音频输入波形和文本转语音输入波形提取特有音频特征,其中所述特有音频特征可以包括音频输入波形特征和文本转语音波形特征(例如,音频输入波形特征14和/或文本转语音波形特征24)。在各示例中,提取特有音频特征可以包括利用深度神经网络(dnn)基于音频输入波形或文本转语音输入波形的加窗频率曲线图提取特有音频特征。在一些示例中,可以基于音频特征训练数据来训练dnn。此外或替代地,dnn可以被配置成提取特有音频特征而无需事先的语义理解。

框510包括比较音频输入波形特征和文本转语音波形特征。在可替换实施例中,所述比较可以包括将音频输入波形特征、文本转语音波形特征和预定匹配阈值进行比较。

框512包括基于比较结果在时间上对齐文本输入的显示版本(例如,文本输入的显示版本26)与音频输入。在这样的场景中,在时间上对齐文本输入的显示版本与音频输入可以利用包括如下至少一种的对齐模型:隐马尔科夫模型、深度神经网络(dnn)或递归神经网络(rnn),它们可以被配置成在时间上对齐文本输入的显示版本与音频输入。在一些实施例中,在时间上对齐文本输入的显示版本与音频输入可以包括基于音频输入波形特征、文本转语音波形特征和预定匹配阈值的比较来确定时间匹配。

在一些实施例中,方法500还可以包括由显示器(例如,显示器170)显示文本输入的显示版本。

在各示例中,方法500可以额外包括由麦克风(例如,麦克风110)接收音频输入。

方法500还可以包括接收音频特征参考数据(例如,音频特征参考数据180)。转换步骤(例如,框506)、提取步骤(例如,框508)或比较步骤(框510)的至少一个是至少部分地基于音频特征参考数据执行的。在一些实施例中,音频特征参考数据可以包括如下至少一项:国际语音字母表(ipa)音频特征、中文拼音音频特征或与声音波形相关的特征。

图中所示的特定布置不应给视为限制。应当理解,其他实施例可以包括更多或更少的给定图中示出的每种元件。此外,例示元件的一些可以被组合或省略。此外,例示性实施例可以包括图中未示出的元件。

代表信息处理的步骤或框可以对应于能够被配置成执行本文所述的方法或技术的特定逻辑功能的电路。替代地或此外,代表信息处理的步骤或框可以对应于程序代码(包括相关数据)的模块、区段或部分。程序代码可以包括一个或多个可以由处理器执行以实现方法或技术中的特定逻辑功能或动作的指令。程序代码和/或相关数据可以存储于任何类型的计算机可读介质上,例如包括磁盘、硬盘驱动器或其他存储介质的存储装置。

计算机可读介质还可以包括非暂态计算机可读介质,例如短期存储数据的计算机可读介质,像寄存器存储器、处理器高速缓存和随机存取存储器(ram)。计算机可读介质还可以包括更长时间存储程序代码和/或数据的非暂态计算机可读介质。于是,计算机可读介质可以包括辅助或持久长期存储装置,例如像是只读存储器(rom)、光盘或磁盘、紧致盘只读存储器(cd-rom)。计算机可读介质还可以是任何其他易失性或非易失性存储系统。计算机可读介质可以被视为例如计算机可读存储介质,或有形存储装置。

尽管已经公开了各个示例和实施例,但其他示例和实施例对于本领域内的技术人员而言将是显而易见的。公开的各示例和实施例目的在于例示,而并非意图进行限制,真正范围由以下权利要求指定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1