Document
拖动滑块完成拼图
首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

用单词重音预测发音的系统和方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:谷歌有限责任公司

摘要:一种用于生成单词的发音的方法、系统和装置,其包括在计算机存储介质上编码的计算机程序。方法之一包括:由一个或多个计算机确定指示单词拼写的拼写数据;将拼写数据作为输入提供给训练的递归神经网络,训练的递归神经网络被训练以至少基于指示单词的拼写的数据指示单词的发音的特征;接收指示由训练的递归神经网络响应于提供拼写数据作为输入而生成的单词的发音的重音模式的输出;使用训练的递归神经网络的输出来生成指示单词的发音的重音模式的发音数据;以及由一个或多个计算机将发音数据提供给文本到语音系统或自动语音识别系统。

主权项:1.一种由一个或多个计算机执行的方法,该方法包括:由所述一个或多个计算机确定指示单词的拼写的拼写数据;由所述一个或多个计算机将所述拼写数据作为输入提供给训练的递归神经网络,所述训练的递归神经网络被训练以至少基于指示所述单词的拼写的数据来指示单词发音的特征;由所述一个或多个计算机接收指示由所述训练的递归神经网络响应于提供所述拼写数据作为输入而生成的单词的发音的重音模式的输出;其中接收指示由所述训练的递归神经网络生成的单词的发音的重音模式的输出包括接收每个指示一组符号上的概率分布的多个输出矢量,所述多个输出矢量的组合指示由所述训练的递归神经网络生成的单词的发音的重音模式;由所述一个或多个计算机使用所述训练的递归神经网络的输出来生成指示所述单词的发音的重音模式的发音数据;以及由所述一个或多个计算机将所述发音数据提供给文本到语音系统或自动语音识别系统。

全文数据:用单词重音预测发音的系统和方法背景技术自动语音识别Automaticspeechrecognition,ASR系统、文本到语音text-to-speech,TTS系统、或两者可以分别使用单词发音数据来确定在音频信号中编码的单词的话语或者生成编码单词的合成话语的音频信号。一些ASR和TTS系统可以使用手动策划的发音字典。字典中的条目可以包括音位phoneme序列,例如,“foo”→fu以X-SAMPAExtendedSpeechAssessmentMethodsPhoneticAlphabet,拓展音标字母评估法表示法。发明内容发音生成系统可以使用递归神经网络recurrentneuralnetwork,RNN模型来预测单词的发音的音节划分和重音模式,并将音节划分和重音模式提供给另一系统,例如,ASR系统、TTS系统、或两者。发音生成系统可以向递归神经网络提供单词拼写、音位序列或两者作为输入。在一些示例中,发音生成系统可以使用长短期记忆longshort-termmemory,LSTM递归神经网络模型来预测给定特定单词的发音、拼写、或两者的特定单词的重音模式。发音生成系统可以使用有限状态转换器finitestatetransducer,FST技术来约束递归神经网络的输出。例如,发音生成系统可以具有针对特定语言的单词的发音的规则,并且使用有限状态转换器技术将规则应用于从递归神经网络的输出。发音生成系统可以将由递归神经网络生成的输出例如,指示重音模式和音节划分的输出提供给TTS系统、ASR系统、或两者。在一些示例中,发音生成系统可以响应于从TTS系统或ASR系统接收的数据动态地生成发音或重音信息。例如,当TTS系统确定在字典中没有可用于特定单词的发音时,TTS系统可以从发音生成系统请求发音数据。作为响应,TTS系统接收特定单词的发音数据,并使用发音数据生成具有特定单词的话语的音频信号。通常,本说明书中描述的主题的一个创新方面可以体现在包括以下动作的方法中:由一个或多个计算机确定指示单词的拼写的拼写数据;由一个或多个计算机将拼写数据作为输入提供给训练的递归神经网络,该训练的递归神经网络被训练以至少基于指示单词的拼写的数据指示单词发音的特征;由一个或多个计算机接收指示由训练的递归神经网络响应于提供拼写数据作为输入而生成的单词的发音的重音模式的输出;由一个或多个计算机使用训练的递归神经网络的输出来生成指示单词的发音的重音模式的发音数据;以及由一个或多个计算机将发音数据提供给文本到语音系统或者自动语音识别系统。该方面的其他实施例包括记录在一个或多个计算机存储设备上的对应计算机系统、装置和计算机程序,每个计算机系统、装置和计算机程序被配置为执行该方法的动作。一个或多个计算机的系统可以被配置为借助在系统上安装软件、固件、硬件或它们的组合来执行特定操作或动作,该系统在操作中使得系统执行动作。一个或多个计算机程序可以被配置为借助包括指令来执行特定操作或动作,当由数据处理装置执行该指令时,使得装置执行动作。前述和其他实施例可以各自任选地包括单独或以组合形式的一个或多个以下特征。将拼写数据作为输入提供给训练的递归神经网络可以包括将拼写数据作为输入提供给训练的长短期记忆递归神经网络。接收指示由训练的递归神经网络生成的单词的发音的重音模式的输出可以包括接收指示由训练的长短期记忆递归神经网络响应于提供拼写数据作为输入而生成的单词的发音的重音模式的输出。通过一个或多个计算机使用训练的递归神经网络的输出来生成指示单词的发音的重音模式的发音数据可以包括使用输出来生成指示至少一个主重音位置的发音。通过一个或多个计算机使用训练的递归神经网络的输出来生成指示单词的发音的重音模式的发音数据可以包括使用输出来生成指示具有重音和音节分割和重音值的单词的音素phone的序列的发音。在一些实施方式中,该方法可以包括由一个或多个计算机确定指示单词的至少一个重音位置的发音数据。由一个或多个计算机将拼写数据作为输入提供给训练的递归神经网络可以包括将拼写数据和发音数据作为输入提供给训练的递归神经网络。接收指示由训练的递归神经网络生成的单词的发音的重音模式的输出可以包括接收指示由训练的递归神经网络响应于提供拼写数据和发音数据作为输入而生成的单词的发音的重音模式的输出。由一个或多个计算机将拼写数据作为输入提供给训练的递归神经网络可以包括将对于拼写数据的多个输入矢量作为输入提供给训练的递归神经网络,多个输入矢量中的每一个指示来自拼写数据或填充符filler的特定字符。接收指示由训练的递归神经网络生成的单词的发音的重音模式的输出可以包括接收多个输出矢量,每个输出矢量指示在一组符号上的概率分布,多个输出矢量的组合指示由训练的递归神经网络生成的单词的发音的重音模式。提供多个输入矢量可以包括将预定数量的输入矢量作为输入提供给训练的递归神经网络。接收多个输出矢量可以包括从训练的递归神经网络接收预定数量的输出矢量作为输出。在一些实施方式中,由一个或多个计算机使用训练的递归神经网络的输出以生成指示单词的发音的重音模式的发音数据可以包括将一个或多个约束应用于输出以生成指示单词的发音的重音模式的发音数据。将一个或多个约束应用于输出以生成指示单词的发音的重音模式的发音数据可以包括在训练的递归神经网络的输出上使用波束搜索来确定输出中具有满足一个或多个约束的最高可能性的路径,以及使用具有满足一个或多个约束的最高可能性的路径来生成指示单词的发音的重音模式的发音数据。将一个或多个约束应用于输出以生成指示单词的发音的重音模式的发音数据可以包括由有限状态转换器的网络将一个或多个约束应用于输出以生成指示单词的发音的重音模式发音数据。该方法可以包括:从文本到语音系统接收响应于由一个或多个计算机将发音数据提供给文本到语音系统,使用发音数据生成的音频数据。由一个或多个计算机将发音数据提供给文本到语音系统或自动语音识别系统可以包括由一个或多个计算机将发音数据提供给文本到语音系统。本说明书中描述的主题可以在特定实施例中实施,并且可以得到以下优点中的一个或多个。在一些实施方式中,当发音字典不包括特定单词的条目时,下面描述的系统和方法可以生成特定单词的发音。在一些实施方式中,下面描述的系统和方法可以将规则应用于来自神经网络例如,递归神经网络或长短期记忆递归神经网络的输出,以确保输出符合神经网络可能没有学习到的发音规则。在一些实施方式中,下面描述的系统和方法可以比不使用神经网络或递归神经网络的基于规则的模型更准确。在一些实施方式中,具有长短期记忆递归神经网络的系统可以在生成输入数据的重音模式例如,拼写、发音或两者时从由长短期记忆提供的长上下文行为中受益。在附图和以下描述中阐述了本说明书中描述的主题的一个或多个实施方式的细节。根据说明书、附图和权利要求,本主题的其他特征、方面和优点将变得显而易见。附图说明图1A-图1B是发音系统生成单词的重音模式的环境的示例。图2A-图2C描绘了生成重音模式的递归神经网络的示例。图3是用于生成指示单词的发音的重音模式的发音数据的过程的流程图。图4是可以结合本文档中描述的计算机实施的方法使用的计算系统的框图。各附图中相同的附图标记和名称表示相同的元件。具体实施方式神经网络例如,长短期记忆LSTM递归神经网络RNN可以接收单词的拼写作为输入并且生成具有输入单词的重音模式、输入单词的发音、或两者的输出序列。例如,神经网络生成输出序列,该输出序列指示生成输入单词的可听合成的系统应该在哪里对单词应用重音以及将多少重音应用于单词的不同部分,例如,指示最突出的音节是什么的重音值。神经网络可以将输出序列提供给生成单词的可听呈现的系统,该输出序列可选地指示发音。例如,系统可以是向用户读内容的文本到语音系统,诸如电子邮件。系统可以向神经网络提供单词的拼写,并且作为响应,接收具有单词的重音模式包括重音值的输出序列。在一些实施方式中,神经网络可以接收单词的拼写和单词的发音作为输入。神经网络生成单词的重音模式作为输出。在一些实施方式中,系统可以将规则应用于神经网络的输出以将输出约束为有效的语言模式。规则可以指定于特定语言,或者可以适用于多种语言,或者可以适用于所有语言。例如,当语言是英语时,系统可以确定指示输出序列重音模式应该具有一个且仅有一个主重音位置的规则。一般规则的示例可以指示每个音节必须恰好具有一个元音。在一些实施方式中,系统可以将来自神经网络的输出存储在字典中。系统可以使用字典进行语音识别、文本到语音生成或两者。图1A-图1B是环境100的示例,其中发音系统106生成单词的重音模式。例如,如图1A所示,发音系统106可以从用户设备102接收单词数据108,单词数据108将特定单词识别为对特定单词的重音模式数据110的请求的一部分。单词数据108可以包括例如单词的拼写。发音系统106将单词数据108提供给发音生成模块116,下面参考图1B更详细地描述。发音生成模块116可以生成一起表示单词数据108的一系列矢量。例如,单词的每个字母或每个字位grapheme可以由不同的矢量来标识。这些矢量可以是用于单词数据108的独热one-hot输入矢量118,每个矢量对于具有单个尺寸的“1”值,以指示特定字母或字位。例如,当单词数据是单词“hire”时,发音生成模块116可以生成指示第一个字母是“h”的第一独热矢量,指示第二个字母是“i”的第二独热矢量等。独热矢量可以包括用于语言的特定字母表中的每个字母的一个标签、用于该语言的每个音位的一个值、例如用于填充或重音位置的填充符标签、用于音节边界的值、或者这些中的两个或更多个的组合。发音生成模块116将独热输入矢量118提供给递归神经网络120,该递归神经网络120可以从输入矢量118生成多个输出矢量122。输出矢量122中的每一个可以指示表示发音的特征的各种标签的可能性。例如,输出矢量122可以指示可能的重音、音节边界、音位等。在一些实施方式中,输出矢量122中的每一个表示预定标签集上的概率分布。在一些示例中,输出矢量122中的至少一些可以包括重音值标签的值并且指示特定重音类型例如,主重音或次要重音最可能是单词的一部分,例如,特定音节。发音系统106可以使用输出矢量122来生成具有重音值的重音模式数据110,并将重音模式数据110提供给用户设备102。例如,当来自用户设备102的请求指示单词数据108的发音将用于生成语音,例如,作为文本到语音系统的一部分,发音系统106可以将从输出矢量122导出的重音模式,诸如在矢量中标记的标签,提供给包括在发音系统106上的文本到语音模块114,文本到语音模块114生成用于合成语音的数据。然后,发音系统106将由文本到语音模块114生成的合成语音的数据提供给用户设备102,以用于生成话语。在一些示例中,发音系统106生成用于例如,存储在发音系统106、用户设备102或两者上的发音词典的重音模式数据110。发音系统106向发音生成模块116提供单词数据,并且作为响应接收表示输出矢量122的输出矢量122或数据。例如,当发音生成模块116向递归神经网络12提供分别指示“h”、“i”、“r”和“e”的标签的四个独热输入矢量118时,发音生成模块116可以接收指示最可能标签是“h”、“i”、“r”、和“e”的输出矢量122,其中重音值“0”指示无重音,重音值“1”指示主重音位置,重音值“2”指示次要重音位置,并且重音值“.”指示音节边界。在该示例中,输出矢量122指示发音,该发音包括指示该单词的不同部分的适当重音值的重音模式。然后,发音生成模块116基于输出矢量122确定包括最可能的重音模式的最可能的发音。在一些实施方式中,发音系统106可以包括更多或更少的重音值。例如,重音值可以指示音调或重音水平。在一些示例中,发音系统106可以包括重音值“0”、“1”、“2”、“3”、“4”、和“5”。发音系统106可以具有基于发音系统106正在为其生成重音模式的语言的一定量的重音值。发音系统106可以使用任何适当的符号来表示重音值。发音系统106将确定的发音提供给字典生成模块112。字典生成模块112使用发音数据例如,表示来自输出矢量122的得分最高的标签的字符串来在发音字典中创建对于“hire”的条目,例如,将单词“hire”的拼写与包括重音模式“hai1.er0”的发音相映射。在一些示例中,字典生成模块112或发音系统106可以向用户设备102提供条目,例如,以供与自动语音识别系统一起使用。图1B是图1A的发音生成模块116的示例。在图1B所示的示例中,发音生成模块116包括长短期记忆LSTM层136递归神经网络RNN120。例如,递归神经网络利用先前输入的上下文,同时使用循环连接来处理当前输入。递归神经网络120对上下文信息的使用可以使递归神经网络120非常适合于序列建模任务,例如,当分析表示单词的矢量序列时。在一些示例中,发音生成模块116可以使用至少一个长短期记忆层136来解决消失的梯度问题。例如,长短期记忆层136可以基于输入数据学习长上下文行为。在一些实施方式中,长短期记忆层136可以生成对于给定单词或发音的例如,具有重音值的重音模式。例如,包括在发音生成模块116中的输入模块124接收单词“hire”的发音数据128作为“haistress.erstress”,其中“stress”表示单词“hire”的发音的未指定的重音值的占位符,并且“.”表示音节边界。格式化模块130接收发音数据128并生成格式化的发音数据134。格式化的发音数据134可以是发音数据128中的具有每个标签一个矢量的独热矢量的序列,例如,每个音素标识符、音节分割器、填充符号或其他标签。这些矢量可以全部具有相同的尺寸,例如,如果标签来自一组三十三个可能的标签,则矢量都各自具有三十三个元素。每个独热矢量可以包括对于除对应标签之外的所有值的零,例如,对于对应标签具有值1。例如,第一矢量可以包括在与标签“h”相对应的位置中的值1和对于所有剩余值的零。第二矢量可以包括在与标签“ai”相对应的位置中的值1和对于所有剩余值的零。第三矢量可以包括在与标签“stress”相对应的位置中的值1和对于所有剩余值的零等。在一些示例中,格式化模块130可以向格式化的发音数据134添加填充。例如,格式化模块130可以以附加输入矢量的形式向格式化的发音数据134的开头、结尾或两者添加填充。格式化模块130可以为填充创建附加的独热矢量,并将矢量添加到输入数据的矢量的序列。填充独热矢量可以包括对于除填充标签之外的所有值的零。递归神经网络120从格式化模块130接收格式化的发音数据134并生成输出数据。例如,递归神经网络120中的输入层接收格式化的发音数据134。图2A-图2C描绘了生成例如,具有重音值的重音模式的递归神经网络的示例。例如,如图2A所示,第一递归神经网络200a接收格式化的发音数据134作为输入数据202,并将输入数据202提供给输入发音层204。输入发音层204包括基于输入数据202所应用的语言的预定数量的单元。例如,当处理美式英语单词的输入数据202时,输入发音层204可以包括三十三个单元,使得每个单元与输入矢量中的值相对应,例如,独热输入矢量中的标签。三十三个元素中的每一个可以具有到不同标签的预定映射。例如,输入到输入发音层204的第一值可以与字母“a”相对应,输入到输入发音层204的第二值可以与字母“b”相对应等。输入发音层204向包括在第一递归神经网络200a中的前向长短期记忆LSTM206和后向长短期记忆LSTM208提供数据。前向LSTM206和后向LSTM208都可以展开,使得对于输入数据202中的每个条目存在每个层的一个状态。例如,LSTM中的每一个可以包括对于形成输入数据202的独热矢量的输入序列中的每个独热矢量的一个状态。前向LSTM206可以处理来自输入数据202的数据,该数据向前移动通过由输入数据202表示的数据的序列。例如,前向LSTM206可以以标签“h”的第一独热矢量开始,然后处理标签“ai”的第二独热矢量,依此类推。当格式化的发音数据134在输入数据202的开始处包括填充时,例如,当两个“pad”值位于数据的开头而不是数据的结尾以表示填充时,前向LSTM206通过处理两个填充标签的独热矢量两者开始,然后开始处理标签“h”的独热矢量和剩余的独热矢量。递归神经网络200可以使用任何适当的值来表示填充。例如,递归神经网络200可以使用值“empty”来表示填充而不是“pad”。在一些示例中,递归神经网络200可以使用与递归神经网络200的潜在输入值不同的用于填充的值。例如,当递归神经网络200包括“i”作为输入符号时,递归神经网络200将使用除“i”之外的值来表示填充。后向LSTM208可以处理来自输入数据202的数据,该数据向后移动通过由输入数据202表示的数据的序列。例如,当格式化的发音数据134不包括填充时,后向LSTM208可以首先接收标签“stress”的独热矢量,然后处理标签“er”的独热矢量,依此类推。当格式化的发音数据134在输入数据202的末尾包括填充时,后向LSTM208处理两个填充标签的两个独热矢量,然后开始处理具有“stress”标签的独热矢量和剩余的独热矢量。在一些实施方式中,发音生成模块被训练为接收单个语言的输入并为其提供输出。因此,虽然神经网络的整体拓扑对于每种语言可以是相同或相似的,但是输入层的尺寸可以根据用于不同字母或音位在语言中使用的符号的数量而不同。类似地,输出层的尺寸可以变化以适应可能适合于不同语言的重音的不同标签。递归神经网络120可以包括适合于正在处理的语言的LSTM中的每一个中的许多存储器单元单位。例如,每个长短期记忆层136可以包括使用对于该语言的许多单词、用于该语言的许多发音和重音符号或两者来确定的许多存储器单元单位。在一些示例中,前向LSTM206、后向LSTM208或两者可以包括一百二十八个存储器单元单位。LSTM中的每一个中的存储器单元单位的数量可以相同。例如,前向LSTM206和后向LSTM208都可以包括一百二十八个存储器单元单位。前向LSTM206和后向LSTM208向输出重音模式层210提供数据,该输出重音模式层210生成输出数据212作为第一递归神经网络200a处理输入数据202的结果。在一些实施方式中,输出重音模式层210是软最大输出层,例如,具有经过多个输入值的最大值的节点的层。输出重音模式层210可以是例如,具有任何适当类型的功能的任何适当类型的输出层。例如,输出重音模式层210可以是整流线性激活函数输出层。例如,输出重音模式层210可以创建一系列输出矢量,其指示特定单词“hire”的可能的重音模式。输出矢量可以各自包括主重音的一个值、次要重音的一个值、无重音的一个值、以及指示不应该替换来自发音的对应字符串的一个值,例如,在由输入数据202标识的对应音位位置处。输出矢量中的值可以表示不同的对应标签是合适的概率的分布。例如,[0.7,0.1,0.1,0.1]的输出矢量可以指示主重音适合于特定输入矢量的高可能性例如,70%可能性,同时指示其他标签中的任何适用于输入矢量的低得多的可能性。例如,递归神经网络120可以为输出矢量中的每一个生成概率分布,该概率分布指示由输出矢量表示的各种标签是正确的可能性。单个输出矢量的值的总和可以等于1,例如,百分之一百。在一些示例中,输出重音模式层210为输入数据202中的每个输入矢量生成单个输出矢量。返回图1B,递归神经网络120可以将输出数据212提供给发音规则模块138,其从递归神经网络120的输出数据212确定适当的重音模式。发音规则模块138可以解释来自递归神经网络120的输出矢量,并且可以选择与输出矢量中的最高值相对应的标签作为该输出矢量的对应输出。发音规则模块138可以附加地或替代地执行更复杂的处理以确保所指示的重音模式符合语言的规则。例如,发音规则模块138可以将单词的重音模式约束为具有一个且仅有一个主重音。如下面进一步讨论的,发音规则模块138可以将对于语言的有效重音模式建模为有限状态转换器FST140的网络,并且可以执行波束搜索算法以确定通过有限状态转换器140的网络的哪条路径最佳地拟合由递归神经网络120的输出指示的概率分布。通过有限状态转换器140的网络的最佳拟合路径可以表示重音模式,其中在通过有限状态转换器140的网络的最佳拟合路径中遍历的节点的序列表示对于单词中的音节的重音类型的序列。可以选择该重音模式,使其对于被评估的单词最可能是正确的。发音规则模块138将单词的重音模式提供给格式化输出数据212的输出模块142。例如,输出模块142接收指示发音规则模块138在给定输出数据212中的矢量的情况下确定的重音模式最有可能正确的数据。输出模块142使用输出数据212生成例如,具有重音值的重音模式数据146。输出模块142可以生成由矢量、字符串、或任何其他适当的数据类型表示的重音模式数据146。在所示的示例中,单词“hire”的发音数据128包括符号序列“haistress.erstress”,其指示单词的音素、音节边界、和音节的未指定的重音值的占位符。对于该输入,输出模块142生成重音模式数据146“EE1EE0”,其中重音模式数据146中的每个值与发音数据128、格式化的发音数据134或两者中的值相对应。例如,递归神经网络120使用来自格式化的发音数据134的所有值来确定标有“stress”的格式化的发音数据134中的位置的重音值。在所示的示例中,“E”的值可以表示不应该替换来自发音数据的对应值,例如,当发音数据128和重音模式数据146被组合时,第一值应该是“h”,第二值应该是“ai”,第三值应该是“1”,依此类推。输出模块142可以将发音数据128与重音模式数据146组合以创建用于发音生成模块116的最终输出。例如,输出模块142可以生成将重音值放在重音位置中的发音数据128“haistress.erstress”的最终输出“hai1.er0”。如上所述,“1”值的重音值表示主重音,并且“0”值的重音值表示无重音。在一些实施方式中,除了发音数据之外或代替发音数据,可以训练递归神经网络120以接收和处理拼写数据作为输入。例如,输入模块124可以接收拼写数据126,其指示单词“hire”的拼写。格式化的模块130从输入模块124接收拼写数据126并格式化拼写数据126以创建格式化的拼写数据132。格式化模块130可以向格式化的拼写数据132添加填充。格式化模块130可以将前导填充、尾随填充或两者添加到格式化的拼写数据132、格式化的发音数据134或两者,使得两个序列的长度相同,例如,是预定长度。例如,格式化模块130可以将独热矢量添加到格式化的拼写数据132、格式化的发音数据134或两者的序列之一,使得序列的长度相同。格式化模块130可以将填充添加到数据的开头、数据的结尾或两者。当提供发音数据和拼写数据两者时,通常不要求对准这两种类型的数据。因此,虽然字母和音素各自按顺序提供,但是输入序列中的单词的字母的位置可以与输入序列中的对应音素的位置无关。格式化模块130可以选择预定长度为拼写的长度的两倍、发音的长度的两倍或另一适当值。在图2B中所示的示例中,格式化的拼写数据132的序列具有八个标签的长度,例如,八个独热矢量,并且格式化的发音数据134的序列具有八个标签的长度,例如,八个独热矢量。格式化模块130可以确定哪个数据更长,例如,包括更多标签,并且选择预定长度为两个长度的两倍长。在一些示例中,格式化模块130可以为拼写数据126中的每个字符创建独热矢量。例如,格式化模块130可以创建对于字符“h”的第一独热矢量,对于字符“i”的第二独热矢量,依此类推。格式化模块130可以创建对于填充标签的独热矢量。格式化模块130将格式化的拼写数据132和格式化的发音数据134作为输入数据提供给递归神经网络120。例如,如图2B所示,第二递归神经网络200b接收格式化的发音数据134作为输入发音层218的输入发音数据214,并接收格式化的拼写数据132作为输入拼写层220的输入拼写数据216。可以基于为其训练第二递归神经网络200b的对应语言来选择输入发音层218的大小和输入拼写层220的大小。例如,输入发音层218可以包括二十九个单元,并且输入拼写层在处理美式英语单词的输入数据时可以包括一百零六个单元。输入发音层218和输入拼写层220一起形成第二递归神经网络200b的输入层。两个输入层218、220都向前向LSTM222和后向LSTM224提供数据。前向LSTM222和后向LSTM224可以分别类似于前向LSTM206和后向LSTM208,如参考图2A所述。例如,前向LSTM206、后向LSTM208或两者可以包括一百二十八个存储器单元单位。前向LSTM222和后向LSTM224同时处理来自输入发音层218和输入拼写层220的数据以生成数据以提供给输出重音模式层226。例如,输入发音层218例如从输入发音数据214接收第一独热发音矢量的数据,以生成第一发音数据,并且输入拼写层220从输入拼写数据216接收第一独热拼写矢量的数据,以生成第一拼写数据。前向LSTM222接收第一发音数据和第一拼写数据两者,并使用第一发音数据和第一拼写数据两者作为输入数据,以生成输出重音模式层226的第一前向LSTM输出。类似地,后向LSTM224接收第一发音数据和第一拼写数据两者,并使用第一发音数据和第一拼写数据两者作为输入数据,以生成输出重音模式层226的第一后向LSTM输出。前向LSTM层222可以从前向LSTM层222接收从先前时间步输出的数据,如果有的话。后向LSTM层224可以从后向LSTM层224接收从下一时间步输出的数据,如果有的话。在时间步之间的这种双向信息流是可能的,因为时间步是并行处理而不是按时间顺序处理。“时间步”是递归神经网络200正在处理的符号的序列中的符号。例如,当第二递归神经网络200b正在处理发音数据输入“haistress.erstress”和拼写数据输入“padpadhire”时,倒数第二个时间步是当输入层设置为“er”和“r”并且输出层应该产生“E”时而最后一个时间步是当输入层设置为“stress”和“e”并且输出层应该产生“0”时。由于前向LSTM222和后向LSTM224同时处理来自输入发音层218和输入拼写层220两者的数据,并且网络架构要求在每个时间步定义所有输入矢量并每一时间步产生恰好一个输出矢量,输入数据或输出数据或两者可以包括填充使得输入发音数据214、输入拼写数据216和输出数据228中的两个或三个是相同的长度,例如,包括相同数量的矢量。例如,图1B的格式化模块130可以确定格式化的拼写数据132或格式化的发音数据134是否是较短的矢量序列并填充较短的矢量序列,使得两个数据集具有相同的长度,例如,具有相同数量的矢量。在一些示例中,格式化模块130可以向两个数据集添加填充,使得格式化的拼写数据132和格式化的发音数据134具有相同的长度。在一些实施方式中,格式化模块130可以在训练期间向从两个输入序列和输出序列中选择的序列中的两个添加填充。例如,格式化模块130可以向语音输入数据和输出数据添加填充,例如,表示重音模式。由于递归神经网络200b是用填充的输出序列训练的,因此在运行时,当格式化模块130将填充添加到输入序列之一时,递归神经网络200b可以自动生成具有填充的输出序列。返回图2B,输入发音数据214和输入拼写数据216不具有关于输入发音数据214和输入拼写数据216之间的对齐的任何信息。相反,第二递归神经网络200b必须在训练期间学习传播关于来自输入拼写数据216的重音在时间上向前或向后的证据。例如,在像希腊语的语言中,其中重音可以用元音变音符号voweldiacritics标记,第二递归神经网络200b必须学习输入拼写数据216中的书写元音与输入发音数据214中的对应重音标记之间的隐式对齐模型。输出重音模式层226使用第一前向LSTM输出和第一后向LSTM输出来生成与处理的输入数据相对应的输出数据228。例如,输出重音模式层226生成与第一发音数据相对应的第一输出矢量,例如,第一发音矢量。输出重音模式层226可以组合来自第一前向LSTM222和第一后向LSTM224的输出,以创建对于输出重音模式层226的单个输入。第二递归神经网络200b继续处理输入发音数据214和输入拼写数据216,直到所有数据都已经被处理并且输出重音模式层226已经生成所有输出数据228。例如,输出重音模式层226生成输出矢量的序列,使得序列中的矢量中的每一个与输入发音数据214中的矢量之一和输入拼写数据216中的矢量之一相对应,例如,矢量的序列中的每一个包括相同数量的矢量。输出重音模式层226生成表示输入数据的重音模式的输出数据228,例如,特定单词“hire”。例如,输出数据228中的每个矢量可以包括对于主重音的一个值、对于次要重音的一个值、对于无重音的一个值、以及指示不应该替换来自发音的对应字符串的一个值。返回图1B,递归神经网络120可以将输出数据228提供给发音规则模块138,其使用递归神经网络120的输出数据228确定该单词的适当重音模式。发音规则模块138可以解释来自递归神经网络120的输出矢量,并且可以选择与输出矢量中的最高值相对应的标签作为该输出矢量的对应输出,如下面更详细地描述的。发音规则模块138将单词的重音模式提供给格式化重音模式的输出模块142。例如,输出模块142从长短期记忆136接收输出矢量作为输出数据228。输出模块142使用输出数据228生成重音模式数据146。输出模块142可以生成由矢量、字符串或任何其他适当的数据类型表示的重音模式数据146。在一些实施方式中,递归神经网络120可以仅接收拼写数据126的数据作为输入。例如,输入模块124可以接收单词“hire”的拼写数据126,并将拼写数据提供给格式化模块130。格式化模块130格式化拼写数据126以输入到递归神经网络120。例如,格式化模块130生成对于拼写数据126的独热输入矢量以提供给递归神经网络120作为输入。格式化模块130可以将填充添加到拼写数据126的开头、结尾或两者,以创建格式化的拼写数据132作为递归神经网络120的输入。例如,格式化模块130可以添加填充到拼写数据126,使得递归神经网络120的输入序列具有大于输出序列中的除填充标签之外的标签的数量的长度。在一些示例中,格式化模块130可以将附加独热矢量添加到格式化的拼写数据132,使得输入的独热矢量的数量是拼写数据126中的字符串的长度的两倍。例如,当由拼写数据126表示的输入字符串是具有四个标签的长度的单词“hire”时,格式化模块130可以创建具有总共八个独热矢量的格式化的拼写数据132,用于表示单词“hire”的拼写的四个标签的四个独热矢量和例如,通过标志矢量中“pad”标签的值来表示的用于填充的四个独热矢量。格式化模块130将格式化的拼写数据132提供给递归神经网络120。例如,格式化模块130将格式化的拼写数据132作为输入数据230提供给图2C中所示的第三递归神经网络200c。在一些实施方式中,格式化模块130可以向输入矢量添加填充,因为输出矢量的序列例如,输出发音可能比输入矢量的序列例如,输入拼写更长。对于第三递归神经网络200c,对于双向LSTM,输入序列和输出序列都必须是相同的长度。由于第三递归神经网络200c不知道预测输出值所需的输出矢量的序列的确切长度,因此格式化模块130将填充添加到输入矢量的序列以使输入矢量的序列的长度加倍。格式化模块130可以将任何适当数量的填充矢量添加到一系列输入矢量。例如,格式化模块130可以添加填充以使输入的长度为三倍或平方。第三递归神经网络200c将输入数据230提供给输入拼写层232。输入拼写层232使用输入数据230生成数据,并将数据提供给前向LSTM234和后向LSTM236。输入拼写层232可以具有基于输入数据230的语言选择的许多单元。例如,当语言是美式英语时,输入拼写层232可以具有八十六个单元,例如,其中每个单元对应于小写字母、大写字母、数字、填充值或符号,诸如“\”、或当符号中的一些可能在技术术语、名称、互联网标识符、或外来或借用词中找到时。前向LSTM234和后向LSTM236各自例如,同时向第三递归神经网络200c中的后续双向LSTM层237a-d提供数据。例如,前向LSTM234和后向LSTM236可以各自处理从输入拼写层232接收的数据以生成相应的输出,并将相应的输出提供给第一双向LSTM237a和第二双向LSTM237b两者。第一双向LSTM237a和第二双向LSTM237b可以使用来自初始LSTM层234和236的两组输出作为单个组的输入数据。例如,第一双向LSTM237a可以从前向LSTM234接收一个矢量,并且从后向LSTM236接收一个矢量,并且连结concatenate两个矢量以创建单个输入矢量。可以展开前向LSTM234、后向LSTM236、和所有双向LSTM237a-d,使得输入数据230中的每个条目存在每个层的一个状态。例如,LSTM中的每一个可以包括对于形成输入数据230的独热矢量的输入序列中的每个独热矢量的一个状态。双向LSTM237a-d中的每一个可以包含一对或多对前向和后向LSTM层。前向LSTM234可以处理来自输入数据230的数据,该数据向前移动通过由输入数据230表示的数据的序列。例如,前向LSTM234可以以标签“h”的第一独热矢量开始,然后处理标签“a”的第二独热矢量,依此类推。当格式化的拼写数据132在输入数据230的开始处包括填充时,例如,四个“pad”值位于数据的开头而不是数据的结尾处,前向LSTM234通过处理四个填充标签的所有独热矢量开始,然后开始处理标签“h”并处理剩余的独热矢量。后向LSTM236可以处理来自输入数据230的数据,该数据向后移动通过由输入数据230表示的数据的序列。例如,当格式化的发音数据134不包括填充时,后向LSTM236可以首先接收标签“e”的最后的独热矢量,然后处理标签“r”的倒数第二个独热矢量,依此类推。当格式化的发音数据134在输入数据230的末尾包括填充时,后向LSTM236处理四个填充标签的所有独热矢量,然后开始处理具有“e”标签的独热矢量,以及剩余的独热矢量。双向LSTM237a-d同时在前向和后向两个方向上处理数据。例如,双向LSTM层237a-d中的每一个处理由前向LSTM234直接或间接生成的数据和由后向LSTM236直接或间接生成的数据。发音系统106可以包括基于正在处理的语言的LSTM234a-c和236a-c中的每一个中的多个存储器单元单位。例如,发音生成模块116可以包括使用对于语言的许多单词、对于语言的许多发音和重音符号、或两者的许多存储器单元单位。在一些示例中,前向LSTM234a-c、后向LSTM236a-c或两者可以包括六十四个存储器单元单位。第二前向LSTM234b和第二后向LSTM236b各自生成数据并将数据提供给第三前向LSTM234c和第三后向LSTM236c。第三前向LSTM234c使用来自第二前向LSTM234b和第二后向LSTM236b两者的数据来生成对于输出发音和重音模式层238的数据。类似地,第三前向LSTM236c使用来自第二前向LSTM234b和第二后向LSTM236b两者的数据来生成对于输出发音和重音模式层238的数据。输出发音和重音模式层238使用来自第三前向LSTM234c和第三后向LSTM236c的两组数据作为输入以生成单个组的输出数据240。例如,输出发音和重音模式层238将来自第三前向LSTM234c的数据与来自第三后向LSTM236c的数据连结,并使用连结的数据作为输入。输出发音和重音模式层238使用连结的数据来生成输出数据240。输出发音和重音模式层238可以包括用于目标语言中的每个发音标签例如,用于目标语言中的每个音素的一个单元、用于每个不同类型的重音值的一个标签、用于音节边界的一个标签、用于填充的一个标签、或两个或更多个这些标签的组合。例如,输出发音和重音模式层238可以包括三十三个单元并且生成包括三十三个值的输出矢量240,使得值的总和等于一,例如,百分之一百。输出矢量240中的值可以指示表示对应标签是输出值的可能性的概率分布。例如,输出矢量的值中的每一个可以表示相应标签是输出矢量240的输出值的对应可能性。输出矢量240中的值可以是表示符号的单个选择的任何适当值。例如,发音系统106可以将argmax函数应用于输出矢量240,以选择由输出矢量240中的值之一表示的符号,例如,并且使用任何适当的方法来断开连接。在一些实施方式中,例如,当使用整流线性激活函数例如,而不是soft-max时,输出矢量的值可能不表示概率分布。例如,当输出发音和重音模式层238使用整流线性激活函数时,输出矢量240可以表示网络中该层的激活。第三递归神经网络200c、或发音系统106的另一组件可以使用激活来确定输出矢量240的最可能标签。在一些示例中,发音系统106可以使用任何适当的技术将输出矢量240中的值转换为概率分布。例如,发音系统106可以对输出矢量240中的值进行归一化或者对输出矢量240中的值取幂,然后对取幂值进行归一化。由输出发音和重音模式层238生成的输出数据240包括发音和重音模式数据144,如图1B所示。例如,递归神经网络120可以使用格式化的拼写数据132“hirepadpadpadpad”来生成发音和重音模式数据144“hai1.er0padpad“。在一些示例中,递归神经网络120可以生成包括矢量的序列的输出数据240,例如,给出上面的单词“hire”的示例的八个输出矢量,并且向发音规则模块138或输出模块142提供矢量的序列。发音规则模块138或输出模块142可以使用矢量的序列来确定每个输出矢量的最可能标签以及该单词例如“hire”的发音和重音模式。输出模块142可以格式化例如,用于字典生成模块、文本到语音模块114、用户设备102、或这些中的两个或更多个的组合的最可能标签。例如,输出模块142可以从输出数据的序列中的每个矢量选择最可能标签,例如,具有最高概率值的标签。输出模块142使用来自输出数据的序列中的每个矢量的最可能标签来创建字符串或另一数据结构以表示输入单词的重音模式。下面的表1包括用于发音生成模块116的一些示例输入序列和输出序列,两者都具有填充。在一些实施方式中,递归神经网络120可以向发音规则模块138而不是输出模块142提供数据。发音规则模块138将指定于特定语言或通用于任何语言的规则应用于递归神经网络120的输出以确保发音生成模块116的输出不违反规则。规则可以指示输出数据的有效重音模式。例如,发音规则模块138可以包括指定于特定语言或语言的群组group的规则,其指示每个单词中应当包括恰好一个主重音位置,另一不允许将重音放置在发音的最终音节上的规则,或任何其他适当类型的规则。当处理对应语言的数据时,发音规则模块138确定来自递归神经网络120的输出中的最可能值是否与规则对准。例如,发音规则模块138可以对输出序列中包括的所有矢量执行波束搜索,以确定输出序列中的最佳路径,使得最佳路径指示用于从序列中的矢量中的每一个选择的标签,无论标签是否是最可能标签或是具有非零可能性的其他标签。在一些示例中,发音规则模块138可以将来自递归神经网络120的输出约束为仅语言的有效重音模式。发音规则模块138可以使用有限状态转换器FST140的网络,在其中两个节点之间的每个转变表示特定重音值。有限状态转换器140的网络可以不允许无效重音序列,诸如从主重音值到另一个主重音值的转变。为了识别最适合单词的重音模式,发音规则模块138可以使用来自递归神经网络120的输出来评估通过有限状态转换器140的网络的不同路径。例如,发音规则模块138可以根据由递归神经网络120的输出指示的概率分布执行波束搜索以识别具有最高可能性的路径。沿着该路径的转变可以被确定为具有最高概率、最低成本或满足其他标准的可以表示被认为最适合该单词的重音模式。发音规则模块138可以使用任何适当的技术来约束来自递归神经网络120的输出。在一些实施方式中,递归神经网络120的输出例如,长短期记忆层136的输出可以为加权FST。发音规则模块138可以将来自递归神经网络120的加权FST与包括在发音规则模块138中的有限状态转换器140的网络相交,并挑选最可能的路径作为最终重音模式。发音规则模块138可以选择给定来自长短期记忆层136的输出的最可能的重音模式,其也是有效重音模式。发音规则模块138向输出模块142提供输出。例如,发音规则模块138将最终重音模式提供给输出模块142。输出模块142可以格式化例如,用于目的地的最终重音模式,将最终重音模式提供给发音系统106的另一组件或另一系统、或两者。例如,输出模块142可以将最终重音模式存储在字典数据库中,并将最终重音模式提供给文本到语音模块114。在一些实施方式中,发音系统106可以使用字典生成模块112生成字典,例如,当在离线模块中时。例如,发音生成模块116可以生成对于多个单词的发音、重音模式、或两者。字典生成模块112可以将重音模式、发音、或两者存储在数据库中以供稍后使用。发音系统106可以稍后将来自数据库的一些词典数据提供给用户设备102,例如,当在线时。在一些实施方式中,用户设备102可以包括发音生成模块116。例如,用户设备102可以接收对电子邮件消息执行文本到语音过程的请求。用户设备102可以将来自电子邮件消息的所有单词提供给发音生成模块116,或者仅提供未包括在用户设备102上存储的本地发音词典中的单词。用户设备102使用包括从发音生成模块116接收的重音模式的发音信息来生成包括电子邮件消息中包括的单词的合成话语的音频信号,并将音频信号提供给扬声器以用于呈现。例如,用户设备102可以包括文本到语音模块,其使用从发音生成模块116接收的、无论是否包括在用户设备102或发音系统106上的重音模式,以生成单词的合成话语,并将合成话语提供给扬声器以进行回放。在一些实施方式中,设备可以确定单词的重音模式不包括在词典中并且作为响应将单词提供给发音生成模块116。例如,用户设备102可以确定单词“hire”的重音模式不包括在用户设备102的存储器中存储的本地发音字典中,并且将单词“hire”提供给例如,包括在用户设备102或发音系统106上的发音生成模块116。作为响应,用户设备102接收单词的重音模式,并且可选地接收单词的发音。用户设备102可以使用该单词的重音模式和发音来生成包括该单词的合成话语的音频信号。在一些实施方式中,发音系统106可以从用户设备102接收单词,例如,作为单词数据108。发音系统106确定单词不包括在发音词典中或者用于单词的重音模式以其他方式不可用,并且作为响应,将单词或表示单词的数据提供给发音生成模块116。例如,发音系统106可以将单词的发音、单词的拼写、或两者提供给发音生成模块116。发音系统106从发音生成模块116接收例如,发音生成模块116使用表示该单词的数据生成的单词的重音模式。发音系统106将重音模式提供给用户设备102作为重音模式数据110。用户设备可以使用重音模式数据110作为文本到语音过程的一部分或者作为自动语音识别过程的一部分。在一些实施方式中,发音系统106训练递归神经网络120。例如,图2A-图2C示出了在前向通路期间移动通过对应的递归神经网络200a-c的数据的方向。递归神经网络200a-c在所有箭头的相反方向上执行反向传播作为训练过程的一部分。发音系统106可以随机初始化递归神经网络120的权重。例如,权重可以在-0.01和0.01之间包括端点随机生成。发音系统106可以利用分布式异步梯度下降来训练递归神经网络120,例如,学习速率为0.00005。在一些示例中,发音系统106可以在最佳保持设置准确度在预定时间段例如,至少三小时内没有改变之后停止训练。发音系统106可以使用交叉熵损失,其中每个输入是输入标签的独热编码,并且目标是相关联的重音标记,例如,重音值。例如,发音系统106可以对第一递归神经网络200a使用交叉熵损失,其中每个输入是音位的独热编码,并且目标是相关联的重音标记。在一些示例中,发音系统106可以对第二递归神经网络200b使用交叉熵损失,其中每个输入是音位的独热编码和拼写标签的独热编码并且目标是相关联的重音标记,例如,重音值。发音系统106可以对第三递归神经网络200c使用连接时间分类connectionisttemporalclassification,CTC目标函数。例如,发音系统106可以使用CTC目标函数,因为输入拼写和输出音位序列与重音值之间的对准是未知的。在一些实施方式中,发音系统106可以使用从发音字典得到的示例来训练递归神经网络120。例如,训练集中的每个示例可以表示不同的单词并且包括输入的标签,例如,拼写标签、发音标签、或两者,以及从字典条目确定的目标输出。目标输出可以对应于输入类型。例如,当输入类型仅是单词的拼写时,目标输出可以是单词的发音和单词的重音模式。当输入是单词的发音或单词的发音和拼写时,目标输出可以是单词的重音模式。在一些实施方式中,发音系统106可以使用丢失技术dropouttechnique训练递归神经网络120,例如,以提高鲁棒性。例如,发音系统106可以使用丢失技术训练递归神经网络120以减少神经网络中的过度拟合。利用该技术,可以随机选择网络的部分以“丢失”或不能传播用于一个或多个训练操作的信号。用户设备102可以包括个人计算机、移动通信设备、智能电话、平板电脑和可以通过网络104传送和接收数据的其他设备。网络104诸如局域网localareanetwork,LAN、广域网wideareanetwork,WAN、因特网或其组合连接用户设备102和发音系统106。发音系统106是在一个或多个位置中的一个或多个计算机上实施为计算机程序的系统的示例,其中实施了下面描述的系统、组件和技术。在一些实施方式中,发音系统106的一个或多个模块可以执行参考另一个模块描述的动作。例如,格式化模块130可以接收拼写数据126并生成格式化的拼写数据132,例如,在不从输入模块124接收拼写数据126的情况下。本文描述的模型可以以许多种方式使用。在一些实施方式中,文本到语音处理在服务器上完成。客户端通过网络将合成话语的文本传送到服务器,并且服务器使用以上讨论的模型之一来确定发音信息。根据模型,生成的发音信息可以指示单词的重音、单词中的音素和或单词的音节边界。然后,服务器使用发音信息生成合成话语的音频数据,并通过网络将音频数据提供给客户端。在一些实施方式中,本文讨论的模型的输出可以用于生成发音字典,例如,将单词映射到发音的数据。可以将发音字典提供给客户端设备并存储以供稍后用于生成合成TTS话语。在客户端设备上运行的TTS引擎可以在本地存储的发音字典中查找单词,并使用所检索的对应发音信息来生成单词的合成话语。在一些实施方式中,当发音词典不包括单词的发音时,本文讨论的模型可以用于确定TTS引擎的发音信息。例如,存储在客户端设备处的发音字典,无论是手动生成还是使用神经网络的输出生成的,都可能受到限制,并且通常由于空间约束不包括所有可能单词的发音信息。当客户端设备确定单词在本地发音字典中没有对应发音时,客户端设备可以使用本地存储和执行的神经网络模型为该缺失单词生成发音。因此,客户端设备可以使用本地存储的发音字典来查找常用单词的发音,同时使用本地存储的发音模型来根据需要生成不太常用的单词的发音。客户端设备可以通过网络周期性地从服务器接收和存储更新的发音模型和更新的发音词典。作为另一示例,当客户端设备确定单词没有在发音字典中列出的发音时,客户端设备可以向服务器系统传送请求,该服务器系统可以使用如上所述的发音字典或发音模型来确定适当的发音信息,然后响应请求将发音信息传送到客户端设备。图3是用于生成指示单词的发音的重音模式的发音数据的过程300的流程图。例如,过程300可以由发音系统106使用,例如,来自环境100的包括一个或多个计算机的服务器。服务器确定指示单词拼写的拼写数据302。例如,服务器可以从用户设备或从字典生成模块接收拼写数据,例如,作为生成对于字典中的每个单词的重音模式的过程的一部分。服务器提供拼写数据作为对训练的递归神经网络的输入,训练的递归神经网络被训练以至少基于指示单词的拼写的数据来指示单词发音的特征304。例如,服务器生成表示单词的拼写的独热矢量,并将独热矢量作为输入的拼写数据提供给训练的递归神经网络。在一些示例中,训练的递归神经网络可以是长期短期记忆递归神经网络。例如,长短期记忆递归神经网络可以是任何适当的网络,诸如以上参考图2A-图C描述的那些网络。服务器基于训练递归神经网络而作为输入的数据的类型向递归神经网络提供数据。在一些实施方式中,服务器可以利用拼写数据向训练的递归神经网络提供发音数据。在一些示例中,服务器可以接收发音数据而不是拼写数据,并且仅将发音数据提供给训练的递归神经网络。服务器接收指示由训练的递归神经网络响应于提供拼写数据作为输入而生成的单词的发音的重音模式的输出306。服务器可以接收指示具有重音模式的发音的输出。服务器使用训练的递归神经网络的输出来生成指示单词的发音的重音模式的发音数据308。例如,当输出仅是重音模式时,服务器可以将重音模式与发音数据组合。在一些示例中,服务器从训练的递归神经网络接收表示重音模式和发音两者的矢量作为输出。服务器使用矢量生成指示单词的重音模式的发音数据。服务器可选地将一个或多个约束应用于输出以生成指示单词的发音的重音模式的发音数据310。例如,作为生成发音数据的过程的一部分,服务器可以将约束应用于训练的递归神经网络的输出。在一些示例中,服务器可以使用有限状态转换器将约束应用于输出。服务器将发音数据提供给文本到语音系统或自动语音识别系统312。例如,服务器将指示该词的重音模式的发音数据提供给文本到语音系统,该文本到语音系统生成单词的合成话语的音频信号。在一些示例中,服务器将指示单词的重音模式的发音数据提供给自动语音识别系统以供在语音识别期间使用。服务器接收使用发音数据生成的音频数据314。例如,响应于将发音数据提供给文本到语音系统,服务器可以从文本到语音系统接收音频数据。服务器可以将音频数据提供给用户设备以用于合成语音生成过程,例如,其使用扬声器呈现音频数据。在一些实施方式中,过程300可以包括附加的步骤、更少的步骤、或者步骤中的一些可以被划分成多个步骤。例如,过程300可以包括步骤302至308,而没有步骤310至314中的一个或多个。在一些实施方式中,用户设备可以执行过程300的部分或全部。例如,用户设备可以确定拼写数据,将拼写数据提供给服务器,以及接收发音数据。用户设备可以将发音数据提供给文本到语音系统或自动语音识别系统。用户设备可以从文本到语音系统接收音频数据,例如,在用户设备向文本到语音系统提供发音数据的示例中。在一些实施方式中,系统例如,用户设备、发音系统、或两者可以使用发音生成系统,例如,以及过程300中的至少一些步骤,来生成出现在语言的词典中的“load”或“foreign”单词或用于添加到语言的词典中的新单词的发音。例如,系统可以使用过程300来生成新音乐家的姓名、新产品的名称、人们在对话中构成的单词、或者这些单词中的两个或更多个的发音。例如,用户设备可以包括具有来自语言的单词的重音模式的发音字典。当用户设备检测到未包括在字典中的单词例如,是来自不同语言的单词作为文本到语音过程的一部分时,用户设备可以将单词的数据传送到发音生成系统。作为响应,用户设备接收例如用户设备可以在文本到语音过程中使用的单词的重音模式和发音。在一些实施方式中,系统可以使用上述方法作为发音字典创建程序的一部分来减少在发音字典中创建新条目所需的工作量。当系统接收表示例如来自用户或来自文档的新单词的输入时,系统可以使用上述方法来生成建议的发音或建议的发音的一部分并提供建议的发音用于呈现,例如给用户。在一些实施方式中,系统可以从用户接收发音数据并使用接收到的发音数据生成重音模式。例如,系统可以接收编码用户的话语的音频信号,例如单词“hire”。系统可以使用任何适当的方法来使用编码话语的音频信号生成发音,例如,“haistress.erstress”。系统将发音“haistress.erstress”提供给发音系统以使得发音系统生成单词的重音模式,例如,重音模式“EE1EE0”。系统可以使用单词的发音以稍后生成该单词的合成话语,并提供合成话语用于呈现,例如给用户或另一用户。本说明书中描述的主题和功能操作的实施例可以在包括本说明书中公开的结构及其结构等同物的数字电子电路、有形体现的计算机软件或固件、计算机硬件、或者它们中的一个或多个的组合中实施。本说明书中描述的主题的实施例可以被实施为一个或多个计算机程序,即在有形非暂时性程序载体上编码的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。可替代地或额外地,程序指令可以在人工生成的传播信号上编码,例如,机器生成的电、光或电磁信号,该人工生成的传播信号信号被生成以编码用于发送到合适的接收器装置的信息以便以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或更多个的组合。术语“数据处理装置”指的是数据处理硬件并且涵盖用于处理数据的所有类型的装置、设备和机器,包括例如可编程处理器、计算机、或多个处理器或计算机。该装置还可以是或进一步包括专用逻辑电路,例如,FPGAfieldprogrammablegatearray,现场可编程门阵列或ASICapplication-specificintegratedcircuit,专用集成电路。除了硬件之外,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统、或者它们中的一个或多个的组合。计算机程序也可以被称为或描述为程序、软件、软件应用、模块、软件模块、脚本、或代码,可以用任何形式的编程语言包括编译或者解释性语言、或声明性或过程性语言编写,并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。计算机程序可以但不必对应于文件系统中的文件。程序可以被存储在保存其他程序或数据的文件的一部分中,例如,存储在标记语言文档中、专用于所讨论的程序的单个文件中、或者多个协调文件中例如,存储一个或多个模块、子程序或代码的部分的文件的一个或多个脚本。可以部署计算机程序以在位于一个站点上或分布在多个站点上并通过通信网络互连的一个计算机或多个计算机上执行。本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以实施为专用逻辑电路,例如,FPGA现场可编程门阵列或ASIC专用集成电路。适合于执行计算机程序的计算机包括,例如,通用或专用微处理器或两者、或任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或可操作地耦合以从用于存储数据的一个或多个大容量存储设备接收数据或将数据传输到用于存储数据的一个或多个大容量存储设备,例如,磁性、磁光盘或光盘。但是,计算机不需要这样的设备。此外,计算机可以被嵌入在另一设备中,例如,移动电话、个人数字助理personaldigitalassistant,PDA、移动音频或视频播放器、游戏机、全球定位系统GlobalPositioningSystem,GPS接收器或便携式存储设备。例如,通用串行总线universalserialbus,USB闪存驱动器,仅举几例。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备包括例如半导体存储器设备,例如EPROM、EEPROM和闪速存储器设备、磁盘例如,内部硬盘或可移动磁盘、磁光盘、和CD-ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。为了提供与用户的交互,本说明书中描述的主题的实施例可以在具有用于向用户显示信息的显示设备例如,CRTcathoderaytube,阴极射线管或LCDliquidcrystaldisplay,液晶显示器监视器和用户可通过其向计算机提供输入的键盘以及指示设备例如,鼠标或轨迹球的计算机上实施。其他种类的设备也可以被用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。另外,计算机可以通过向用户使用的设备传送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从网络浏览器接收的请求将网页发送到用户设备上的网络浏览器。本说明书中描述的主题的实施例可以在包括后端组件例如,作为数据服务器、或者包括中间件组件例如,应用服务器、或者包括前端组件例如,具有图形用户界面或网络浏览器的客户端计算机,用户可以通过该图形用户界面或网络浏览器与本说明书中描述的主题的实施方式进行交互、或者一个或多个这样的后端、中间件或前端组件的任意组合的计算系统中实施。系统的组件可以通过任何形式的数字数据通信或数字数据通信的介质互连,例如,通信网络。通信网络的示例包括局域网LAN和广域网WAN,例如,因特网。计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系由于在各自的计算机上运行并且具有彼此间的客户端-服务器关系的计算机程序而产生。在一些实施例中,服务器将数据例如,HTML页面发送到用户设备,例如,用于向用户显示数据和从用户接收用户输入,该用户与充当客户端的用户设备交互。可以在服务器处从用户设备接收在用户设备处生成的数据,例如,用户交互的结果。图4是可用于实施本文档中描述的系统和方法的、作为客户端或服务器或多个服务器的计算设备400、450的框图。计算设备400意图表示各种形式的数字计算机,诸如膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、大型机mainframe和其他适当的计算机。计算设备450意图表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能手机、智能手表、头戴式设备和其他类似的计算设备。这里示出的组件,它们的连接和关系以及它们的功能仅仅是示例性的,并不意味着限制本文档中描述和或要求保护的实施方式。计算设备400包括处理器402、存储器404、存储设备406、连接到存储器404和高速扩展端口410的高速接口408、以及连接到低速总线414和存储设备406的低速接口412。组件402、404、406、408、410和412中的每一个使用各种总线互连,并且可以适当地安装在公共主板上或以其他适当的方式安装。处理器402可以处理用于在计算设备400内执行的指令,包括存储在存储器404中或存储设备406上的指令,以在外部输入输出设备上显示GUI的图形信息,诸如耦合到高速接口408的显示器416。在其他实施方式中,可以适当地使用多个处理器和或多个总线连同多个存储器和存储器的类型。并且,可以连接多个计算设备400,其中每个设备提供必要操作的部分例如,作为服务器库serverbank、刀片服务器的群组、或多处理器系统。存储器404存储计算设备400内的信息。在一个实施方式中,存储器404是计算机可读介质。在一个实施方式中,存储器404是易失性存储器单元。在另一实施方式中,存储器404是非易失性存储器单元。存储设备406能够为计算设备400提供大容量存储。在一个实施方式中,存储设备406是计算机可读介质。在各种不同的实施方式中,存储设备406可以是软盘设备、硬盘设备、光盘设备或磁带设备、闪速存储器或其他类似的固态存储器设备、或包括在存储区域网络或其他配置中的设备阵列。在一个实施方式中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含指令,在执行该指令时,执行一种或多种方法,诸如上述方法。信息载体是计算机或机器可读介质,诸如存储器404、存储设备406、或处理器402上的存储器。高速控制器408管理计算设备400的带宽密集型操作,而低速控制器412管理较低带宽密集型操作。这种职责分配只是示例性的。在一个实施方式中,高速控制器408被耦合到存储器404、显示器416例如,通过图形处理器或加速器,并耦合到高速扩展端口410,该高速扩展端口410可以接受各种扩展卡未示出。在该实施方式中,低速控制器412被耦合到存储设备406和低速扩展端口414。可以包括各种通信端口例如,USB、蓝牙、以太网、无线以太网的低速扩展端口例如,通过网络适配器被耦合到一个或多个输入输出设备,诸如键盘、指示设备、扫描仪、或诸如交换机或路由器的网络设备。计算设备400可以以许多不同的形式来实施,如图中所示。例如,它可以被实施为标准服务器420,或者在这样的服务器的群组中实施多次。它还可以被实施为机架服务器系统424的一部分。此外,它可以在诸如膝上型计算机422的个人计算机中实施。可替换地,来自计算设备400的组件可以与移动设备未示出诸如设备450中的其他组件组合。这些设备中的每一个可以包含计算设备400、450中的一个或多个,并且整个系统可以由彼此通信的多个计算设备400、450组成。计算设备450包括处理器452、存储器464、诸如显示器454的输入输出设备、通信接口466、和收发器468以及其他组件。设备450还可以被设置有存储设备,诸如微驱动器或其他设备,以提供额外的存储。组件450、452、464、454、466和468中的每一个使用各种总线互连,并且若干组件可以适当地安装在公共主板上或以其他适当的方式安装。处理器452可以处理用于在计算设备450内执行的指令,包括存储在存储器464中的指令。处理器还可以包括单独的模拟和数字处理器。例如,处理器可以提供用于设备450的其他组件的协调,诸如对用户界面的控制、设备450运行的应用、以及通过设备450的无线通信。处理器452可以通过控制接口458和耦合到显示器454的显示器接口456与用户通信。显示器454可以是例如TFTLCD显示器或OLED显示器、或其他适当的显示技术。显示器接口456可以包括用于驱动显示器454以向用户呈现图形和其他信息的适当的电路。控制接口458可以从用户接收命令并将它们转换以提交给处理器452。此外,可以提供与处理器452通信的外部接口462,以便能够启用设备450与其他设备的近区域通信。外部接口462可以提供例如有线通信例如,经由对接过程或无线通信例如,经由蓝牙或其他此类技术。存储器464存储计算设备450内的信息。在一个实施方式中,存储器464是计算机可读介质。在一个实施方式中,存储器464是多个易失性存储器单元。在另一实施方式中,存储器464是多个非易失性存储器单元。还可以提供扩展存储器474并通过扩展接口472连接到设备450,扩展接口472可以包括例如SIMM卡接口。这样的扩展存储器474可以为设备450提供额外的存储空间,或者还可以存储设备450的应用或其他信息。具体地,扩展存储器474可以包括实行或补充上述过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器474可以被提供作为设备450的安全模块,并且可以用准许安全使用设备450的指令来编程。此外,可以经由SIMM卡提供安全应用以及附加信息,诸如以不受到黑客攻击的方式在SIMM卡上放置识别信息。存储器可以包括例如闪速存储器和或MRAM存储器,如下所述。在一个实施方式中,计算机程序产品有形地体现在信息载体中。该计算机程序产品包含指令,在执行该指令时执行一种或多种方法,诸如上述方法。信息载体是计算机或机器可读介质,诸如存储器464、扩展存储器474、或处理器452上的存储器。设备450可以通过通信接口466无线通信,该通信接口466可以在必要时包括数字信号处理电路。通信接口466可以提供各种模式或协议下的通信,诸如GSM语音呼叫、SMS、EMS或MMS消息、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等。这种通信可以例如通过射频收发器468而发生。另外,可以发生短程通信,诸如使用蓝牙、WiFi或其他这种收发器未示出。另外,GPS接收器模块470可以向设备450提供附加的无线数据,其可以由在设备450上运行的应用适当地使用。设备450还可以使用音频编解码器460可听地通信,该音频编解码器460可以从用户接收语音信息并将其转换为可用的数字信息。音频编解码器460同样可以例如,在设备450的听筒handset中为用户生成可听声音,诸如通过扬声器。这种声音可以包括来自话音vioce电话呼叫的声音,可以包括录制的声音例如,话音消息、音乐文件等,并且还可以包括由在设备450上操作的应用生成的声音。计算设备450可以以许多不同的形式来实施,如图中所示。例如,它可以被实施为蜂窝电话480。它还可以被实施为智能手机482、个人数字助理或其他类似移动设备的一部分。本文描述的系统和技术的各种实施方式可以在数字电子电路、集成电路,专门设计的ASIC专用集成电路、计算机硬件、固件、软件、和或其组合中实现。这些各种实施方式可以包括在可编程系统上可执行和或可解释的一个或多个计算机程序中的实施方式,该可编程系统包括至少一个可编程处理器其可以是特殊的或通用的,该可编程处理器耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,以及发送数据和指令到存储系统、至少一个输入设备和至少一个输出设备。这些计算机程序也称为程序、软件、软件应用或代码包括用于可编程处理器的机器指令,并且可以以高级过程和或面向对象的编程语言、和或在汇编机器语言来实施。如本文所使用的,术语“机器可读介质”、“计算机可读介质”指的是用于向包括接收机器指令作为机器可读信号的机器可读介质的可编程处理器提供机器指令和或数据的任何计算机程序产品、装置和或设备例如,磁盘、光盘、存储器、可编程逻辑设备ProgrammableLogicDevice,PLD。术语“机器可读信号”指的是用于向可编程处理器提供机器指令和或数据的任何信号。为了提供与用户的交互,本文描述的系统和技术可以在具有用于向用户显示信息的显示设备例如,CRT阴极射线管或LCD液晶显示器监视器和用户可以通过其向计算机提供输入的键盘以及指示设备例如,鼠标或轨迹球的计算机上实施。其他种类的设备也可以被用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈例如,视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声学、语音、或触觉输入。本文描述的系统和技术可以在包括后端组件例如,作为数据服务器、或包括中间件组件例如,应用服务器、或者包括前端组件例如,具有图形用户界面或网络浏览器的客户端计算机,用户可以通过该图形用户界面或网络浏览器与这里描述的系统和技术的实施方式进行交互、或者一个或多个这样的后端、中间件或前端组件的任意组合的计算系统中实施。系统的组件可以通过任何形式的数字数据通信或数字数据通信的介质互连,例如,通信网络。通信网络的示例包括局域网“LAN”和广域网“WAN”,以及因特网。计算系统可包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系由于在各自的计算机上运行并且具有彼此之间的客户端-服务器关系的计算机程序而产生。虽然本说明书包含很多具体实施细节,但是这些不应被解释为对要求保护的范围的限制,而是作为指定于对特定实施例的特征的描述。在单独的实施例的上下文中在本说明书中描述的某些特征也可以在单个实施例中组合来实施。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独地或以任何合适的子组合来实施。此外,尽管上面的特征可以描述为以某些组合来运作并且甚至最初如此声明,但是在一些情况下可以从组合中去除来自要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变化。类似地,虽然在附图中以特定顺序描绘了操作,但是这不应该被理解为要求以所示的特定顺序或按相继顺序执行这样的操作,或者执行所有示出的操作,以实现期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中都需要这种分离,并且应当理解的是,所描述的程序组件和系统通常可以被集成在单个软件产品中或封装到多个软件产品中。已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或相继顺序来实现期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。

权利要求:1.一种由一个或多个计算机执行的方法,该方法包括:由所述一个或多个计算机确定指示单词的拼写的拼写数据;由所述一个或多个计算机将所述拼写数据作为输入提供给训练的递归神经网络,所述训练的递归神经网络被训练以至少基于指示所述单词的拼写的数据来指示单词发音的特征;由所述一个或多个计算机接收指示由所述训练的递归神经网络响应于提供所述拼写数据作为输入而生成的单词的发音的重音模式的输出;由所述一个或多个计算机使用所述训练的递归神经网络的输出来生成指示所述单词的发音的重音模式的发音数据;以及由所述一个或多个计算机将所述发音数据提供给文本到语音系统或自动语音识别系统。2.如权利要求1所述的方法,其中:将所述拼写数据作为输入提供给所述训练的递归神经网络包括将所述拼写数据作为输入提供给训练的长短期记忆递归神经网络;并且接收指示由所述训练的递归神经网络生成的单词的发音的重音模式的输出包括接收指示由所述训练的长短期记忆递归神经网络响应于提供所述拼写数据作为输入而生成的单词的发音的重音模式的输出。3.如权利要求1或2所述的方法,其中,由所述一个或多个计算机使用所述训练的递归神经网络的输出以生成指示所述单词的发音的重音模式的发音数据包括使用所述输出来生成指示至少一个主重音位置的发音。4.如权利要求1或2所述的方法,其中,由所述一个或多个计算机使用所述训练的递归神经网络的输出以生成指示所述单词的发音的重音模式的发音数据包括使用所述输出来生成指示具有重音和音节分割以及重音值的单词的音素的序列的发音。5.如前述权利要求中任一项所述的方法,包括由所述一个或多个计算机确定指示所述单词的至少一个重音位置的发音数据,其中:由所述一个或多个计算机将所述拼写数据作为输入给提供所给所述训练的递归神经网络包括将所述拼写数据和所述发音数据作为输入提供给所述训练的递归神经网络;并且接收指示由所述训练的递归神经网络生成的单词的发音的重音模式的输出包括接收指示由所述训练的递归神经网络响应于提供所述拼写数据和所述发音数据作为输入而生成的单词的发音的重音模式的输出。6.如权利要求1-4中任一项所述的方法,其中:由所述一个或多个计算机将所述拼写数据作为输入提供给所述训练的递归神经网络包括将对于所述拼写数据的多个输入矢量作为输入提供给所述训练的递归神经网络,所述多个输入矢量中的每一个矢量指示来自所述拼写数据或填充符的特定字符;并且接收指示由所述训练的递归神经网络生成的单词的发音的重音模式的输出包括接收每个指示一组符号上的概率分布的多个输出矢量,所述多个输出矢量的组合指示由所述训练的递归神经网络生成的单词的发音的重音模式。7.如权利要求6所述的方法,其中:提供所述多个输入矢量包括将预定数量的输入矢量提供给所述训练的递归神经网络作为输入;并且接收所述多个输出矢量包括从所述训练的递归神经网络接收预定数量的输出矢量作为输出。8.如前述权利要求中任一项所述的方法,其中,由所述一个或多个计算机使用所述训练的递归神经网络的输出以生成指示所述单词的发音的重音模式的发音数据包括将一个或多个约束应用于所述输出以生成指示所述单词的发音的重音模式的发音数据。9.如权利要求8所述的方法,其中,将所述一个或多个约束应用于所述输出以生成指示所述单词的发音的重音模式的发音数据包括:在所述训练的递归神经网络的输出上使用波束搜索来确定所述输出中具有满足所述一个或多个约束的最高可能性的路径;以及使用具有满足所述一个或多个约束的最高可能性的路径来生成指示所述单词的发音的重音模式的发音数据。10.如权利要求8所述的方法,其中,将所述一个或多个约束应用于所述输出以生成指示所述单词的发音的重音模式的发音数据包括由有限状态转换器的网络将所述一个或多个约束应用于所述输出以生成指示所述单词的发音的重音模式的发音数据。11.如前述权利要求中任一项所述的方法,包括:从所述文本到语音系统接收响应于由所述一个或多个计算机将所述发音数据提供给所述文本到语音系统而使用所述发音数据生成的音频数据,其中由所述一个或多个计算机将所述发音数据提供给所述文本到语音系统或自动语音识别系统包括由所述一个或多个计算机将所述发音数据提供给文本到语音系统。12.一种系统,包括:数据处理装置;以及非暂时性计算机可读存储介质,其与所述数据处理装置进行数据通信,并存储可由所述数据处理装置执行的指令,并且在这种执行时使得所述数据处理装置执行包括以下操作的操作:确定指示单词的拼写的拼写数据;将所述拼写数据作为输入提供给训练的递归神经网络,所述训练的递归神经网络被训练以至少基于指示所述单词的拼写的数据来指示单词发音的特征;接收指示由所述训练的递归神经网络响应于提供所述拼写数据作为输入而生成的单词的发音的重音模式的输出;使用所述训练的递归神经网络的输出以生成指示所述单词的发音的重音模式的发音数据;以及将所述发音数据提供给文本到语音系统或自动语音识别系统。13.如权利要求12所述的系统,其中:将所述拼写数据作为输入提供给所述训练的递归神经网络包括将所述拼写数据作为输入提供给训练的长短期记忆递归神经网络;并且接收指示由所述训练的递归神经网络生成的单词的发音的重音模式的输出包括接收指示由所述训练的长短期记忆递归神经网络响应于提供所述拼写数据作为输入而生成的单词的发音的重音模式的输出。14.如权利要求12或13所述的系统,其中,使用所述训练的递归神经网络的输出以生成指示所述单词的发音的重音模式的发音数据包括使用所述输出以生成指示至少一个主重音位置的发音。15.如权利要求12或13所述的系统,其中,使用所述训练的递归神经网络的输出以生成指示所述单词的发音的重音模式的发音数据包括使用所述输出以生成指示具有重音和音节分割以及重音值的单词的音素的序列的发音。16.如权利要求12-15中任一项所述的系统,所述操作包括确定指示所述单词的至少一个重音位置的发音数据,其中:将所述拼写数据作为输入提供给所述训练的递归神经网络包括将所述拼写数据和所述发音数据作为输入提供给所述训练的递归神经网络;并且接收指示由所述训练的递归神经网络生成的单词的发音的重音模式的输出包括接收指示由所述训练的递归神经网络响应于提供所述拼写数据和所述发音数据作为输入而生成的单词的发音的重音模式的输出。17.如权利要求12-15中任一项所述的系统,其中:将所述拼写数据作为输入提供给所述训练的递归神经网络包括将对于所述拼写数据的多个输入矢量作为输入提供给所述训练的递归神经网络,所述多个输入矢量中的每一个输入矢量指示来自所述拼写数据或填充符的特定字符;并且接收指示由所述训练的递归神经网络生成的单词的发音的重音模式的输出包括接收多个输出矢量,每个输出矢量指示一组符号上的概率分布,所述多个输出矢量的组合指示由所述训练的递归神经网络生成的单词的发音的重音模式。18.如权利要求17所述的系统,其中:提供所述多个输入矢量包括将预定数量的输入矢量提供给所述训练的递归神经网络作为输入;并且接收所述多个输出矢量包括从所述训练的递归神经网络接收预定数量的输出矢量作为输出。19.如权利要求12-18中任一项所述的系统,其中,使用所述训练的递归神经网络的输出以生成指示所述单词的发音的重音模式的发音数据包括将一个或多个约束应用于所述输出以生成指示所述单词的发音的重音模式的发音数据。20.一种存储可由数据处理装置执行的指令的非暂时性计算机可读存储介质,并且在这种执行时使得所述数据处理装置执行包括以下操作的操作:确定指示单词的拼写的拼写数据;将所述拼写数据作为输入提供给训练的递归神经网络,所述训练的递归神经网络被训练以至少基于指示所述单词的拼写的数据来指示单词发音的特征;接收指示由所述训练的递归神经网络响应于提供所述拼写数据作为输入而生成的单词的发音的重音模式的输出;使用所述训练的递归神经网络的输出以生成指示所述单词的发音的重音模式的发音数据;以及将所述发音数据提供给文本到语音系统或自动语音识别系统。

百度查询: 谷歌有限责任公司 用单词重音预测发音的系统和方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。