CN103650033A - 使用可变长度语境的语音识别 - Google Patents

使用可变长度语境的语音识别 Download PDF

Info

Publication number
CN103650033A
CN103650033A CN201280031754.2A CN201280031754A CN103650033A CN 103650033 A CN103650033 A CN 103650033A CN 201280031754 A CN201280031754 A CN 201280031754A CN 103650033 A CN103650033 A CN 103650033A
Authority
CN
China
Prior art keywords
phoneme
data
training sequence
linguistic context
cycle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201280031754.2A
Other languages
English (en)
Other versions
CN103650033B (zh
Inventor
C·I·西普里安
徐鹏
F·佩雷拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN103650033A publication Critical patent/CN103650033A/zh
Application granted granted Critical
Publication of CN103650033B publication Critical patent/CN103650033B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/34Adaptation of a single recogniser for parallel processing, e.g. by use of multiple processors or cloud computing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0631Creating reference templates; Clustering

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Debugging And Monitoring (AREA)

Abstract

用于使用可变长度的语境来识别语音的方法、系统和装置,包括编码在计算机存储介质上的计算机程序。接收语音数据和标识该语音数据的候选转录的数据。访问所述候选转录的语音表达。提取针对所述语音表达中的特定音素的多个测试序列。所述多个测试序列中的每个测试序列包括围绕所述特定音素的不同的语境音素集。接收指示声学模型包括与所述多个测试序列中的一个或多个测试序列相对应的数据的数据。从所述一个或多个测试序列之中选择包括最高数目的语境音素的测试序列。基于来自所述语音模型的对应于选定的测试序列的数据来生成候选转录的得分。

Description

使用可变长度语境的语音识别
相关申请的交叉引用
本申请要求于2011年6月30日提交的美国专利申请序列号61/503,334和于2012年3月9日提交的美国专利申请序列号61/608,753的权益。上述两个申请的内容均通过引用整体并入本文。
背景技术
语音识别系统使用声学模型来转录话语。通常使用一组包括记录的话语的训练数据来训练声学模型。通常,声学模型包括关于构成训练数据中话语的声音的统计数据。
发明内容
分布式计算技术可用于训练声学模型。用于训练声学模型的数据可包括各自代表不同语音语境的语音元素的序列。可将标识所述序列的数据分布至多个处理模块,所述多个处理模块各自被分配用于训练所述声学模型的不同部分。为了促进对声学模型的训练,可将针对包括共同语音元素序列的序列的数据传送至相同的处理模块,从而允许处理模块高效地训练声学模型的分配的一部分。
本说明书中所描述的主题的一个创新方面体现在包括以下行动的方法之中,这些行动包括:接收语音数据和该语音数据的转录;访问所述转录的语音表达;从所述语音表达中提取针对所述语音表达中的特定音素的训练序列,每个所述训练序列包括围绕所述特定音素的不同的语境音素集;基于出现在每个所述训练序列中的音素序列来标识分区键;从多个处理模块之中选择标识的分区键所分配到的处理模块,所述处理模块被指定用于训练对应于所述标识的分区键的声学模型的一部分;以及向选定的处理模块传送(i)标识所述训练序列的数据和(ii)对应于包括最多语境音素的所述训练序列的所述语音数据的一部分。
这个方面的其他实施方式包括对应的系统、装置,以及编码在计算机存储设备上的配置用于执行所述方法的所述行动的计算机程序。可以凭借安装在一个或多个计算机的系统上的、在操作中使得系统执行所述行动的软件、固件、硬件或者其组合来配置该系统。可以凭借具有当由数据处理装置执行时使得该装置执行所述行动的指令来配置一个或多个计算机程序。
这些实施方式和其他实施方式可各自可选地包括一个或多个以下特征。例如,访问所述转录的所述语音表达包括访问包含语境无关音素的语音表达。接收语音数据包括接收指示语音特性的特征向量。传送所述语音数据的至少一部分包括传送针对比所述训练序列集中的所有训练序列更少的训练序列的语音数据实例。传送所述语音数据的所述至少一部分包括传送对应于包括最多语境音素的所述训练序列的所述语音数据,而不向所述选定的处理模块传送针对其他训练序列的附加语音数据。在所述选定的处理模块处接收标识所述训练序列的所述数据和对应于包括最多语境音素的所述训练序列的所述语音数据的所述部分。在所述选定的处理模块处针对每个所述训练序列而访问接收到的语音数据的不同子集。基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于出现在每个所述训练序列中的两个或更多个连续音素的序列来标识所述分区键。基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于包含所述特定音素之前的一个语境音素和所述特定音素之后的一个语境音素的序列来标识所述分区键。基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括标识针对每个所述训练序列的分区键,其中针对每个所述训练序列标识相同的分区键。
这些实施方式和其他实施方式可各自可选地包括一个或多个以下特征。例如,所述训练序列是各自包含中央三音素的第一训练序列。基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于所述第一训练序列中所包括的所述中央三音素来标识所述分区键。向所述处理模块而不向所述多个处理模块中的任何其他处理模块传送标识包含与所述第一训练序列中所包括的中央三音素相同的中央三音素的第二训练序列的数据,所述第二训练序列是从第二语音数据的转录的语音表达中提取的。提取针对所述语音表达中的所述特定音素的所述训练序列包括至少标识:第一序列,其包括所述特定音素之前的一个语境音素或所述特定音素之后的一个语境音素;第二序列,其包括所述特定音素之前的两个语境音素或所述特定音素之后的两个语境音素;以及第三序列,其包括所述特定音素之前的三个语境音素或所述特定音素之后的三个语境音素。提取针对所述语音表达中的所述特定音素的所述训练序列包括提取所述语音表达中的连续音素序列。
这些实施方式和其他实施方式可各自可选地包括一个或多个以下特征。例如,在所述选定的处理模块处接收标识所述训练序列的所述数据。在所述选定的处理模块处将所述语音数据的所述部分与针对所述训练序列的其他实例的语音数据聚合。在所述选定的处理模块处基于针对所述训练序列中的第一训练序列的聚合语音数据而生成针对所述第一训练序列的模型。将生成的模型存储在分布式关联数组中,所述生成的模型存储在与所述标识的分区键相关联的所述分布式关联数组的分区中。生成针对所述第一训练序列的所述模型包括生成依赖于所述第一训练序列中所包括的所述语境音素序列的语境依赖性高斯混合模型,所述高斯混合模型代表所述第一训练序列的中央音素的隐马尔可夫模型状态的输出分布。在所述分布式关联数组中存储所述生成的模型包括在所述分布式关联数组中存储所述生成的模型以使得所述生成的模型与唯一地对应于所述第一训练序列的键相关联。在所述选定的处理模块处确定所述聚合语音数据包括针对少于所述训练序列的第二训练序列的阈值数目的实例的数据,以及响应于确定所述聚合语音数据包括针对少于所述第二训练序列的所述阈值数目的实例的数据,不生成针对所述第二训练序列的模型。
本说明书中所描述的主题的另一创新方面体现在包括以下行动的方法之中,这些行动包括:接收语音数据和指示该语音数据的候选转录的数据;访问所述候选转录的语音表达;从所述语音表达中提取针对所述语音表达中的特定音素的多个测试序列,所述多个测试序列中的每个测试序列包括围绕所述特定音素的不同的语境音素集;接收指示声学模型包括与所述多个测试序列中的一个或多个测试序列相对应的数据的数据;从所述声学模型所包括的数据所针对的所述一个或多个测试序列之中选择包括最高数目的语境音素的测试序列;访问来自所述声学模型的对应于选定的测试序列的数据;以及基于来自所述声学模型的对应于所述选定的测试序列的访问的数据来生成所述候选转录的得分。
这个方面的其他实施方式包括对应的系统、装置,以及编码在计算机存储设备上的配置用于执行所述方法的所述行动的计算机程序。可以凭借安装在一个或多个计算机的系统上的、在操作中使得系统执行所述行动的软件、固件、硬件或者其组合来配置该系统。可以凭借具有当由数据处理装置执行时使得该装置执行所述行动的指令来配置一个或多个计算机程序。
这些实施方式和其他实施方式可各自可选地包括一个或多个以下特征。例如,选择包括最高数目的语境音素的所述测试序列包括:选择包括少于预定最大数目的语境音素的所述测试序列中之一。基于来自所述声学模型的对应于所述选定的测试序列的所述访问的数据来生成所述候选转录的得分包括:基于所述选定的测试序列包括少于所述预定最大数目的语境音素而确定处罚;以及基于所述处罚来调整所述候选转录的第一得分从而生成经调整得分,所述经调整得分与所述第一得分相比指示所述候选转录是对所述语音数据的准确转录的更低的可能性。基于所述选定的测试序列包括少于所述预定最大数目的语境音素而确定所述处罚包括:基于所述选定的测试序列中语境音素的数目与所述语境音素的预定最大数目之间的差异来确定所述处罚的量值。
这些实施方式和其他实施方式可各自可选地包括一个或多个以下特征。例如,提取针对所述特定音素的多个测试序列包括:提取包括所述特定音素之前和之后的非对称数目的语境音素的一个或多个非对称测试序列。提取针对所述特定音素的多个测试序列包括:提取包括所述特定音素之前和之后的对称数目的语境音素的一个或多个对称测试序列,每个所述对称测试序列各自包括比所述一个或多个非对称测试序列中的每个非对称测试序列更少的语境音素。提取针对所述特定音素的多个测试序列包括至少提取:第一序列,其包括所述特定音素之前的一个语境音素或所述特定音素之后的一个语境音素;第二序列,其包括所述特定音素之前的两个语境音素或所述特定音素之后的两个语境音素;以及第三序列,其包括所述特定音素之前的三个语境音素或所述特定音素之后的三个语境音素。提取针对所述特定音素的多个测试序列包括提取至少五个测试序列,其中所述至少五个测试序列相应地包括出现在所述特定音素之前和之后的一个、两个、三个、四个或五个语境位置内的任何语境音素。
这些实施方式和其他实施方式可各自可选地包括一个或多个以下特征。例如,接收指示所述声学模型包括针对所述多个测试序列中的所述一个或多个测试序列的数据的数据包括:针对每个所述测试序列请求来自所述声学模型的对应于所述测试序列的数据;接收来自所述声学模型的与所述声学模型中所存在的数据所针对的所述一个或多个测试序列中的每个测试序列相对应的数据;以及基于接收对应于所述一个或多个测试序列的所述数据而确定所述一个或多个测试序列被所述模型所识别。访问来自所述声学模型的对应于所述选定的测试序列的所述数据包括:基于出现在所述多个测试序列中的每个内测试序列的音素序列来标识分区键;标识对应于所述分区键的分布式关联数组的分区;以及从标识的分区中获得与所述声学模型所包括的数据所针对的所述多个测试序列中的每个测试序列相对应的数据。访问来自所述声学模型的对应于所述选定的测试序列的所述数据包括:访问描述与所述选定的测试序列的中央音素相对应的高斯混合模型的数据。访问所述转录的所述语音表达包括访问包含语境无关音素的语音表达。接收所述语音数据包括接收指示语音特性的特征向量。基于来自所述声学模型的对应于所述选定的测试序列的所述访问的数据来生成所述候选转录的所述得分包括使用不同的声学模型来调整分配给所述候选转录的得分。
这些实施方式和其他实施方式可各自可选地包括一个或多个以下特征。例如,执行的操作可包括:从所述语音表达中提取针对所述语音表达中不同于所述特定音素的第二音素的多个第二测试序列,所述多个第二测试序列中的每个第二测试序列包括围绕所述第二音素的不同的语境音素集;接收指示所述声学模型包括针对所述多个第二测试序列中的一个或多个第二测试序列的数据的数据;以及从所述声学模型所包括的数据所针对的所述一个或多个第二测试序列之中选择包括最高数目的语境音素的第二测试序列。生成所述候选转录的所述得分包括基于来自所述声学模型的对应于所述选定的测试序列的数据和来自所述声学模型的对应于选定的第二测试序列的数据来生成所述候选转录的所述得分。
有利的实现可包括一个或多个以下特征。可以训练识别许多不同大小的语音语境的声学模型。对声学模型的训练过程可使用大量的输入数据。可以增强声学模型的准确度。
在附图和以下描述中阐明了本说明书中所描述的主题的一个或多个实施方式的细节。主题的其他特征、方面和优点将从描述、附图和权利要求中变得显而易见。
附图说明
图1是图示用于训练声学模型的系统的示例的示图。
图2是图示由映射器处理模块所进行的处理的示例的示图。
图3是图示图1中的映射器处理模块与化简器处理模块之间的交互的示例的示图。
图4是图示用于训练声学模型的过程的示例的流程图。
图5是图示可使用可变长度的语音语境来进行语音识别的系统的示例的示图。
图6是图示由映射器所进行的用来评估话语的候选转录的处理的示图。
图7是图示候选转录评分的示图。
图8是图示使用可变长度语音语境来识别语音的过程的流程图。
各个示图中的相似参考号码和标示指示出相似元素。
具体实施方式
声学模型可用于使用依赖于语境的子词建模单元(例如,音素)来向声帧分配得分。由声学模型所产生的得分可用于标识一组声帧的转录,或者用于评估特定转录为正确的可能性。在一些实现中,每个子词建模单元或音素由隐马尔可夫模型(hidden Markov model,HMM)来建模,通常具有三个状态。每个状态可使用高斯混合模型(Gaussian Mixture Model,GMM)来向一个或多个多维声帧分配可能性得分。通常,GMM的每个混合组份使用对角协方差矩阵。
如以下进一步描述,可以使用多种不同长度的语音语境来训练声学模型。例如,可以用相应地包括中央音素之前和/或之后的一个、两个、三个或更多个音素的训练序列来训练声学模型。
许多典型的声学模型使用100到1000小时之间的训练数据而得到训练。典型的训练过程通常无法有利地利用多于1000小时的训练数据。此外,处理较大量训练数据的计算成本对于许多训练方法是不切实际的。然而,使用以下描述的技术,可以使用数千小时的训练数据、数万小时的训练数据、十万小时的训练数据或更多的训练数据来训练声学模型。以下描述的分布式计算框架可促进使用大训练数据集所需的处理。
此外,典型的声学模型一般包括少于一百万个高斯分布。在一些实现中,如以下所述那样训练的声学模型可包括多于一百万个高斯分布或者多于一千万个高斯分布,来作为各个GMM的组份。这些高斯分布可用于对大量语境的语境依赖性HMM状态进行建模,从而有利地利用存在于大训练数据集中的大量多种语境。声学模型包括针对包含不同长度的语境在内的语境的许多不同变化的GMM。作为结果,以下所述技术可提供包括与典型声学模型中所存储的相比针对更大和更多变的语境量的语境依赖性GMM的声学模型。在一些情况下,以下描述的声学模型中的更大和更多变的语境依赖性GMM集可产生比使用典型声学模型所达到的语音识别准确度更高的语音识别准确度。
可以使用分布式计算技术来训练声学模型(例如,更新现有声学模型或创建新的声学模型)。在一种分布式计算系统中,分配不同的处理模块来训练声学模型的不同部分。对每个处理模块分配对应于所要训练的声学模型部分的一个或多个分区键。
在分布式系统中,可接收语音数据和对语音数据的转录。可以访问所述转录的语音表达,并且可从该语音表达中提取训练序列。训练序列可包括如下序列——其包含所述语音表达之中围绕特定音素的不同语境音素集。基于出现在每个训练序列中的音素序列(诸如出现在每个训练序列中的三个音素的中央序列)来标识分区键。基于分区键,从多个处理模块中选择处理模块。向选定的处理模块传送标识训练序列的数据和标识语音数据的一部分的数据。选定的处理模块可使用接收到的数据来训练(例如,更新或生成)与分区键相关联的声学模型的一部分。
图1是图示用于训练声学模型的系统100的示例的示图。系统100包括多个处理模块,其中一些模块被称为映射器120a-120d而其他模块被称为化简器130a-130d。映射器120a-120d访问来自一个或多个数据存储设备110的输入数据,并生成被图示为训练数据集122的相关键值对(key-value pair)。化简器130a-130d各自接收键值对的不同子集,并使用接收到的数据来生成或更新声学模型140。在训练之后,声学模型140可由语音识别系统150用来生成语音的转录。例如,语音识别系统150可通过网络170从计算设备160接收语音数据,并向该计算设备160提供转录。
计算设备160例如可以是台式计算机、膝上型计算机、蜂窝电话、智能电话、个人数字助理(PDA)、平板计算机、可穿戴计算机、导航系统,或者另一计算设备。由语音识别系统150所进行的操作可通过单个计算机系统来进行,或者可分布于多个计算机系统之间。语音识别系统访问存储在一个或多个数据存储设备上的声学模型140,所述数据存储设备可直接连接或者通过网络170而连接。网络170可以是有线网络或无线网络,或者是两者的组合。网络170可包括一个或多个公用网络或专用网络,并可包括因特网。
系统100中的处理模块可使用映射化简(MapReduce)过程来执行声学模型140的分布式训练。在该过程中,映射器120a-120d各自对不同的输入数据集执行映射操作,从而产生键值对作为映射输出。将键值对发送至化简器130a-130d,所述化简器130a-130d组合与相同的键相关联的值,以产生每个键的最终输出值。每个化简器130a-130d可负责整体键集的不同的非重叠子集。换言之,可将每个键分配给单一化简器130a-130d,以便由相同的化简器130a-130d来处理与相同的键相关联的数据。从映射器120a-120d到化简器130a-130d的数据分布可被称为混洗(shuffling),并可造成每个化简器从每个映射器接收该化简器所负责的键值对。
进一步详细而言,用于训练声学模型140的输入数据111包括语音数据112和转录数据113。语音数据112可包括包含话语在内的记录的音频,以及/或者描述话语的数据,诸如描述语音特性的特征向量。在一些实现中,使用数百、数千或数万小时的语音样本来训练声学模型140。转录数据113可包括语音数据112中所包括的话语的转录。在一些实现中,选择用于训练声学模型140的语音数据112和对应的转录数据113,以便使转录至少具有最小置信水平。例如,当对应的转录的置信度得分指示出语音识别器对转录至少具有最小置信度(例如,70%、80%或90%)时,可选择语音样本用于在训练中使用。
输入数据111的不同部分由不同的映射器120a-120d来处理。在一些实现中,可将输入数据111组织成数据部分或“块”,并且每个映射器120a-120d处理输入数据111的不同部分。在一些实现中,系统100可包括一个或多个主处理模块(未示出),所述主处理模块分配和/或跟踪由每个映射器120a-120d所处理的输入数据111的一部分。
基于输入数据111,映射器120a-120d生成键值对作为映射器输出,其中每个键值对标识用于训练声学模型140的训练序列。相关键值对的组被图示为数据集122。虽然如此,但每个键值对可独立地向化简器130a-130d传送。数据集122可例如包括如下键值对——其各自标识出具有话语的特定实例中的特定音素周围的不同量的语音语境的训练序列。每个数据集122中的键值对标识出具有共同的特定特性(诸如出现在每个相关训练序列中的中央音素序列)的相关训练序列。
映射器120a-120d在数据集122中输出键值对,并且在混洗阶段中将键值对分布到各个化简器140a-140b。如以下进一步所述,定义用于混洗的分区键,以便将给定数据集122中的每个键值对传送至相同的化简器130a-130d。例如,与训练序列相关联的分区键可基于训练序列中的中央音素序列。由于每个相关训练序列具有相同的中央序列,因此每个键值对关联于相同的分区键,并从而被分配给相同的化简器130a-130d(例如,分配用来处理与该分区键相关联的数据的化简器)。
每个化简器130a-130d被分配有一个或多个分区键,并接收与其被分配的一个或多个分区键相关联的所有的键值对。在一些实现中,将每个分区键确切地分配给一个化简器130a-130d,以便向单一化简器130a-130d传送并由其处理每个数据集122中的键值对。每个化简器130a-130d负责生成对应于其被分配的一个或多个分区键的声学模型140的特定分区140a-140d。基于每个化简器130a-130d所接收的键值对,每个化简器130a-130d聚合训练序列并训练声学模型140的分配的分区140a-140d(例如,通过对每个分配的分区键的聚合数据进行统计分析)。存储化简器输出的声学模型分区140a-140d可以是分布的(例如,分区的)关联数组的区段。
在声学模型140的训练之后,语音识别系统150可使用与用以训练声学模型140的分区键相同的分区键来访问声学模型140中的数据。当从计算设备160接收到音频数据162时,语音识别系统150可使用声学模型140来评估音频数据162的候选转录(例如,假设)。对于给定的候选转录,可基于该候选转录的语音特性来选择一组分区键。继而从关联数组中检索与选定的分区键相关联的声学模型数据。针对每个分区键的数据可从在声学模型140的训练期间由被分配有该分区键的化简器130a-130d所训练的分区140a-140d获得。语音识别系统150使用声学模型数据来评价候选转录为正确的可能性。语音识别系统150继而向计算设备160提供一个或多个被确定为最有可能是音频数据162的正确转录的假设164。
图2是图示由映射器处理模块所执行的处理的示例的示意图。作为示例,图示了图1的映射器120a处理特定输入以生成训练数据集122之一。映射器120a-120d中的每个映射器能够用其他输入数据来执行类似的处理以生成其他数据集122。每个映射器120a-120d能够以如下所述方式来对样本语音数据的词级区段执行处理。
图1的映射器120a访问特定话语(诸如用户所提交的语音查询)的语音数据112a。映射器120a还访问标识语音数据112a的转录113a的数据,该数据在图示的示例中指示出转录113a包括“action”项。在一些实现中,映射器120a接收各自包括多个记录的输入数据块。每个记录可包括话语的语音波形、话语的词级转录以及其他元素。
在一些实现中,为了防止以错误数据来训练声学模型140,映射器120a确保满足转录的最小阈值置信度得分,该最小阈值置信度得分指示出转录可能是正确的。当转录不满足最小置信度阈值时,不进一步处理转录和关联数据,并且映射器继续处理其他输入数据。
映射器120a标识转录113a的语音表达220(202)。映射器120可从发音词典中获得转录113a到代表转录113a的发音的语音元素(诸如语境无关的(CI)音素)序列的映射。例如,对于词语“<S>action</S>”,获得语音表达220“sil ae k sh ih n sil”。符号“<S>”和“</S>”表示句子边界,其发音为长静音,在语音表达220中指示为“sil”。在一些实现中,CI音素能够以词界符号来增音,该词界符号在语音表达中占据它们自己的位置。
映射器120a将语音表达220与转录113a对准(204)。例如,映射器120a在语音数据的语音帧112a与转录113a之间生成语境依赖性状态级维特比对准(Viterbi alignment)。可使用H C L来获得所述对准,其中L、C和H相应地表示发音词典、语境依赖关系树以及HMM至状态的有限状态转换器(FST)。在一些实现中,对准涉及标识对应于语音表达中每个语境依赖性HMM状态的语音帧,其中语境为当前音素和周围音素。对准可包括确定与每个音素的每个HMM状态相对应的音频数据的开始时间索引和结束时间索引。
映射器120a从语音表达220中提取训练序列230a-230c(206)。每个训练序列230a-230c被称为M-音素——其为标识音素序列的建模单元。M表示围绕序列内中央音素的语境音素的整数数目。每个训练序列230a-230c或M-音素描述对应于语境依赖性HMM状态的声学特征的不同连续区段。每个训练序列230a-230c可包括来自语音表达220的连续部分的不同语境音素集。
具有不同M值的M-音素包括延伸至来自语音表达220的中央音素的左侧和右侧的不同数目的语境音素。作为示例,5阶M音素(例如,5音素)包括中央音素之前的5个音素和该中央音素之后的5个音素,因而描述语音表达220中的11个连续音素的序列。作为另一示例,3阶M音素(例如,3音素)包含中央音素之前的3个音素和该中央音素之后的3个音素,因此描述7个音素的序列。1阶M音素(或1音素)包括总共3个音素,并因此被称为“三音素”(其不同于长度为7个音素的3音素)。当语音表达220足够长时,可提取任何整数M值的M音素。
为了提取一组训练序列230a-230c,映射器120a选择中央音素,该中央音素代表每个训练序列230a-230c以之为中心的中央位置。对于中央音素,映射器120a提取M值范围从1到预定最大值的M音素。所述最大值标识所要提取的最高阶M音素。M的最大值例如可以是3、4、5或7,或者另一M值。在一些实现中,当生成声学模型140时,M的最大值对于所有的映射器120a-120d和所有的输入数据可以是一致的。
映射器120a提取针对最大M值的M音素,并且映射器120a还提取“回退”M音素,所述“回退”M音素各自包括较少的语境音素。映射器120a从最高阶M音素(例如,包括最大数目的语境音素的M音素)中提取具有较低M值的M音素,直到提取了1阶M音素。例如,如果最大M值为5,则回退M音素为4音素、3音素、2音素和1音素。
在图示的示例中,每个训练序列230a-230c是以相同中央音素“ih”为中心的不同M音素。映射器120a使用“3”作为最大M值,从而指示要将中央音素“ih”之前和之后的最多3个语境音素用于生成声学模型140。总共提取3个M音素(例如,集合M={1,2,3}的M音素)。集合中的最高阶M音素——包括最多音素的M音素——是训练序列230a,即,3音素。训练序列230b(2音素)和训练序列230c(1音素)是集合中的回退M音素。每个训练序列230a-230c包括语音表达230的共享区段——“sh__n”部分,其中“__”为标记中央音素“ih”的所在位置的占位符。如以下进一步所述,每个训练序列230a-230c是与语音数据112a的一部分相对应的训练数据实例。唯一地标识M音素的表达被称为M音素键。M音素键可以是训练序列230a-230c的字符串表达或标识训练序列230a-230c的另一格式。
在一些实现中,使用多个状态或单元来建模每个音素。例如,可通过HMM中的三个状态来建模音素。可通过状态“ih_1”、“ih_2”和“ih_3”来建模音素“ih”,其中状态“ih_1”、“ih_2”和“ih_3”相应地代表“ih”音素的开头、中间和末尾的特性。因此,可使用训练序列来建模音素内的特定状态,而非整个音素。虽然图示了仅对应于状态“ih_1”的一组训练序列230a-230c,但映射器120a可提取针对“ih”音素的其它状态以及针对语音表达220中的其它音素的状态的类似的训练序列集。
在一些情况下,围绕中央音素的语音语境的量可以不是对称的。在此类情况下,提取的M音素可包括不对称量的语境。例如,对于语音表达220,在音素“ih”之前有4个语境音素而在音素“ih”之后有2个语境音素。作为结果,训练序列230a在音素“ih”之前和之后具有不同数目的语境音素,并且代表6个音素的序列而不是对3音素所预期的7个音素的序列。为了提取训练序列,映射器120a可通过仅从不对称语音表达的较长端回退来提取不对称回退M音素。当达到对称量的语境时,映射器120a可继续进行对称回退。可以在不对称M音素中使用诸如“~”等符号来指示没有语境音素可用的空置语境位置。
映射器120a输出键值对240a-240c,所述键值对240a-240c各自标识训练序列230a-230c中之一,并可包括语音数据(208)。针对训练序列230a-230c中的每个训练序列生成和输出键值对240a-240c。训练序列230a-230c(或它们的其他编码表达)充当键值对240a-240c中的键。键值对240a-240c中的值可以是语音帧或其他语音数据,但该值还可以为空。
在一些实现中,仅在针对包括最高数目的音素(例如,最高阶M音素)的训练序列230a的键值对240a中包括语音帧。为了避免向化简器发送过量数据,在键值对240b、240c中不包括针对回退M音素的语音帧。作为结果,数据集122中的数据可包括:(i)键值对<M音素键,语音帧>,用于最长的训练序列;以及(ii)键值对<M音素键,<空>>,用于每个回退M音素。
虽然未针对单个回退M音素提供语音帧,但是可访问对应的语音帧作为针对最高阶M音素而提供的语音帧的子集。如果随每个键值对240a-240c传送语音帧,则语音帧将会被复制并传送M次,从而大幅增加对系统的带宽需求。通过仅随键值对240a-240c中之一来传送语音帧,并在化简器处缓存语音帧,减小了对带宽的需求。
各种技术可确保化简器能够访问每个训练序列230a-230c的语音帧。在混洗期间,向相同的化简器130a-130d传送每个键值对240a-240c以供处理。基于分区键来将每个键值对240a-240c路由至适当的化简器130a-130d(通过映射器120a和/或其他处理模块)。如以上所讨论,可确切地通过一个化简器130a-130d来处理与给定的分区键相关联的数据。分区键是中央三音素的函数,该中央三音素由每个训练序列230a-230c所共享。由于每个训练序列230a-230c具有相同的中央三音素“sh ih n”,因此针对每个训练序列230a-230c的键值对240a-240c被分配有相同的分区键,并因此由相同的化简器130a-130c所接收。所有包括相同中央三音素(例如,“sh ih n”)的键值对均由相同的化简器130a-130d来处理,不论是哪个映射器120a-120d产生了该键值对。
在图示的示例中,分区键是中央三音素的函数。作为备选,在一些实现中使用另一分区键系统。例如,可基于中央音素或基于2音素来确定分区键,从而导致化简器130a-130d之间的不同分工。
由于数据集122中仅一个键值对240a包括语音帧,因此接收键值对240a-240c的化简器缓存该语音帧。如以下进一步所述,化简器以从最长训练序列到最短训练序列的顺序来处理键值对240a-240c。因此,任何给定的M音素的键值对在任何其回退M音素的键值对之前由化简器来处理。化简器可缓存下至中央三音素的所有回退M音素的语音帧。
在一些实现中,为了促进训练序列的排序和语音帧的缓存,可在向化简器输出训练序列之前将每个所述训练序列重定键。例如,可将训练序列230a“ih_1/ae k sh__n sil~”定键为“ih_1/sh n k silae~”,以便保证在化简器处理“分区(ih_1/sh__n)”处以从最长语境到最短语境的顺序来处理相同中央三音素的数据。
除了输出针对“ih_1”(音素“ih”的第一状态)的数据集122之外,映射器120a还可提取训练序列并输出标识针对“ih_2”和“ih_3”(音素“ih”的其他状态)的训练序列的键值对。映射器120还能够生成以语音表达220中的其他音素作为中央音素的数据集122。例如,可以生成分别以“ae”、“k”、“sh”等作为中央音素的数据集122。在一些实现中,映射器120a针对语音表达220中每个音素的每个状态生成数据集122。映射器120a继而继续对附加输入数据重复所描述的操作。
图3是图示图1的映射器处理模块520a-520d与化简器处理模块530a-530d之间的交互的示例的示图。该示图还进一步详细图示了由化简器处理模块所执行的处理。在图示的示例中,三个映射器120a-120c相应地基于语音输入“<S>action<S>”、“<S>fashion<S>”和“<S>faction<S>”而生成键值对240a-240i。出于示例目的,所图示的键值对240a-240i各自标识以相同的中央音素“ih_1”为中心的训练序列(例如,M音素)。每个训练序列还包括由M音素键“ih_1/sh__n”所标识的相同的中央三音素序列。
在处理的混洗阶段期间,将映射器120a-120c的输出分布至化简器130a-130c。向化简器130a-130c中的每个化简器分配不同的分区键集。在混洗期间,每个化简器130a-130c随同其分区键集接收所有的训练序列。如以上所述,使用训练序列内的中央三音素来确定训练序列的分区键。由于训练序列全都包括相同的中央三音素,因此所述训练序列全都传送至相同的化简器。
在图示的示例中,向化简器130b分配分区键“ih_1/sh__n”。所有的训练序列都包括相同的中央三音素,并且因此而关联于相同的分区键“ih_1/sh__n”。作为结果,所有的训练序列都在混洗期间传送至相同的化简器130b。
在混洗期间,键值对标识可直接地或通过一个或多个其他设备间接地传送至化简器的训练序列。在一些实现中,映射器可确定来自一组化简器的特定化简器被分配用来处理每个训练序列。例如,映射器或另一处理设备可访问表格来确定向关联于给定键值对的分区键分配哪个化简器。可以使用向适当化简器路由键值对的其他方法。
在一些实现中,一个或多个混洗器处理模块对由映射器所输出的键值对240a-240i流进行排序,以便使键值对240a-240i以特定顺序,例如,以从最长训练序列到最短训练序列的顺序抵达化简器。例如,可对抵达化简器的键值流进行排序,以便以键的词典顺序(例如,M音素训练序列)来排序抵达化简器的键值对。以上所述的对训练序列的重定键可促进这种排序,以便能够使用标准字符串排序来获得适当的顺序。通过以这种方式来对键值对240a-240c进行排序,能够保证化简器在处理不包括语音帧的回退M音素的键值对之前,处理包括语音帧的最高阶M音素的键值对。
可独立地将每个键值对导引至适当的化简器。例如,可从键值对的键部分中标识关联于键值对的分区键,其标识特定训练序列或M音素。来自键部分的序列,诸如中央三音素,可用于确定该键值对的适当分区键。
化简器聚合键值对中的数据。在图示的示例中,化简器130b聚合接收到的键值对240a-240i中的数据,其中每个键值对代表训练序列的一个实例。化简器130b可通过向堆栈310添加训练序列来聚合数据。在堆栈310中,训练序列根据它们的长度来放置。例如,较短的训练序列(诸如“sh__n”)在堆栈中放置得比较长的序列(诸如“ae k sh__n~”)更低。
当化简器130b接收最高阶M音素的键值对(例如,包括语音帧的键值对240a)时,化简器将其放置在堆栈310的顶部。当最高阶M音素的键值对位于堆栈310的顶部时,回退M音素的键值对(例如,不包括语音帧的键值对240b、240c)随后抵达。回退M音素在堆栈310中放置在最高阶M音素的下方,并且引用针对最高阶M音素而提供的语音帧。作为结果,尽管未个别地随回退M音素提供语音帧,但回退M音素仍关联于堆栈310中的对应语音帧。
堆栈310中的每个条目可代表唯一的训练序列或语音语境。换言之,可将相同训练序列的不同实例的数据累积并存储在堆栈310中的单一条目内。当化简器130a累积来自映射器120a-120d的数据时,接收到针对音素序列的多个键值对。换言之,接收到代表出现在不同语音样本中的相同语音语境的实例的数据。作为示例,化简器130b接收标识相同训练序列“sh__n”的三个键值对240c、240f、240i。每个键值对240c、240f、240i或训练序列“sh__n”的实例相应地对应于作为语音帧“frames_A”、“frames_B”和“frames_C”的子集的不同语音帧。
在混洗之后,并且在已将来自键值对240a-240i的数据聚合于堆栈310中之后,化简器130b使用聚合数据来生成声学模型140的一部分。化简器130b从堆栈移除顶部条目,并使用对应于训练序列的语音帧来估计针对训练序列的高斯混合模型(GMM)(例如,高斯分布的线性组合)。所产生的GMM可以是语境依赖性的、特定于状态的GMM。例如,使用给定的序列而生成的GMM可对训练序列的中央音素的特定HMM状态的输出分布加以建模。由于GMM是基于各自与训练序列中的语音语境(例如,语境音素的序列)相对应的语音帧而生成的,因此GMM依赖于该语音语境。
化简器130b的输出可以是数组条目<M音素,GMM>的形式,其可存储于分布式关联数组中。化简器130b继而从堆栈310的顶部移除下一条目,并估计该条目所代表的训练序列的GMM。化简器130b基于堆栈310中的每个条目而继续生成声学模型数据,其中每个条目代表不同的语音语境。将成对的训练序列和GMM写入到分布式关联数组。在一些实现中,分布式关联数组是不可变持续B树,诸如SS表。
如以上所述,可由多个HMM状态来代表每个音素(例如,可由HMM状态“ih_1”、“ih_2”和“ih_3”来代表“ih”)。在一些实现中,声学模型140中所存储的每个GMM可对特定音素的特定HMM状态的输出分布加以建模。GMM以HMM状态(例如,“ih_1”)的标识为条件,并且还以周围的语音语境(例如,M音素中的语境音素)为条件。相应地,由周围的语音语境、中央音素的标识以及中央音素的特定HMM状态来标识每个GMM。每个GMM可例如在GMM中存储多个高斯组份以及每个组份的权重。可以使用对角协方差高斯分布、全协方差高斯分布,或者其他表达。此外,每个GMM可具有与用于训练模型和/或使用模型来识别语音的特征向量的维数相等的维数。例如,如果使用39维特征向量来描述语音特性,则可使用39维GMM来存储39个特征维度中每个特征维度的数据。
在一些实现中,当至少接收到训练序列的最小数目的实例时,化简器仅在声学模型140中生成条目。例如,化简器130b确定已针对训练序列累积的语音帧集的数目。如果帧的数目大于或等于最小阈值,则化简器130b产生训练序列的GMM,并向关联数组输出<M音素,GMM>条目。如果帧的数目小于最小阈值,则从模型中忽略训练序列。以这种方式,避免了针对输入数据中很少出现的训练序列来训练声学模型140。在一些实现中,基于在训练期间与音素的特定HMM状态对准的语音帧的数目来确定给定的GMM中高斯组份的数目。例如,可以使用对数线性规则,作为帧的数目n的函数来调整GMM的大小:
log(混合组份的数目)=log(β)+α·log(n),
其中β和α是经验得出的常数,其被选择用于设置GMM中高斯混合组份的适当数目。β可代表混合组份的默认数目,而α可控制所包含的附加混合组份的程度。通常,α具有小于1的值。使用本文所描述的训练技术,可以使用大量高斯混合组份来建模给定的HMM状态和语音语境。在一些实现中,可在对HMM状态加以建模的语境依赖性GMM中包括50个、100个、500个或1000个或者更多个高斯混合组份。
在一些实现中,当给定的训练序列的语音帧集的数目超过阈值时,化简器使用该语音帧集的子集。例如,当训练序列的训练数据实例的数目超过阈值时,化简器可使用蓄水池抽样技术(erserviorsampling technique)来基于训练数据实例的真子集而产生GMM。
为了使用经训练的声学模型140,系统可查阅GMM来寻找感兴趣的特定语音语境。对于音素的测试序列,基于样本序列中的中央三音素来确定适当的分区键。分区键标识存储用于测试序列(以及用于所有其他包括相同中央三音素的语音语境)的数据的分布数组的特定分区。在分布数组的标识的分区内,如果在数组中存在针对测试序列的对应GMM,则样本序列本身可充当用以查找该对应GMM的键。
图4是图示用于训练声学模型的过程400的示例的流程图。简单而言,接收语音数据和该语音数据的转录。访问所述转录的语音表达。从所述语音表达中提取训练序列。标识分区键。选择分区键所分配到的处理模块。向选定的处理模块传送标识训练序列的数据和语音数据的一部分。
进一步详细而言,接收语音数据和该语音数据的转录(402)。该语音数据可包括指示语音特性的特征向量。可针对多个语音帧中的每个语音帧接收特征向量,其中每个语音帧例如代表10毫秒的语音。可在映射器处理模块处接收语音数据和转录。
访问转录的语音表达(404)。该语音表达可以是语境无关的音素的序列。
从语音表达中提取训练序列(406)。针对语音表达中的特定音素提取训练序列。例如,该特定音素可以是每个训练序列中的中央音素。每个训练序列可包括围绕特定音素的不同的语境音素集。例如,每个训练序列可以是如上文所述的具有不同整数M值的M音素。提取的序列可例如至少包括包含特定音素之前的一个语境音素和特定音素之后的一个语境音素的第一序列、包含特定音素之前的两个语境音素和特定音素之后的两个语境音素的第二序列、以及包含特定音素之前的三个语境音素和特定音素之后的三个语境音素的第三序列。每个训练序列可以是语音表达中连续音素的序列。
基于出现在每个训练序列中的音素序列来标识分区键(408)。可基于出现在每个训练序列中的两个或更多个连续音素的序列来标识分区键。分区键可基于包括特定音素之前的至少一个语境音素和特定音素之后的至少一个语境音素的序列。用于标识分区键的音素序列可以是中央三音素,其可由所有的训练序列所共享。在一些实现中,针对每个训练序列标识分区键,并且针对每个训练序列标识相同的分区键。
从多个处理模块之中选择标识出的分区键所分配到的处理模块(410)。选定的处理模块被指定用于训练与标识出的分区键相对应的声学模型的一部分。
向选定的处理模块传送标识训练序列的数据和语音数据的一部分(412)。所述数据可以向选定的处理模块传送而不向被分配用于生成声学模型的一部分的任何其他处理模块传送。所传送的语音数据的所述部分可以是与包括最多语境音素的训练序列相对应的一部分。
为了传送语音数据的所述部分,可针对比所有的训练序列更少的训练序列而传送语音数据的实例。所传送的语音数据的所述部分可以是与包括最多语音音素的训练序列相对应的语音数据。在一些实现中,不针对其他训练序列传送语音数据的附加实例。换言之,仅能够随训练序列中的最长训练序列来传送语音数据。
过程400可包括在选定的处理模块处接收标识训练序列的数据和与包括最多语境音素的训练序列相对应的语音数据的一部分。在选定的处理模块处,可针对每个训练序列而访问所接收到的语音数据的不同子集。
在一些实现中,训练序列是各自包括相同中央三音素的第一训练序列。基于第一训练序列中所包括的中央三音素来标识分区键。还可从第二语音数据的第二语音表达中提取包括所述中央三音素的第二训练序列。可向标识第一训练序列的数据所传送到的同一处理模块传送标识第二训练序列的数据。例如,可基于中央三音素来标识针对一个或多个第二训练序列的分区键,并且该分区键可与针对第一训练序列标识的分区键相同。
在一些实现中,过程400包括在选定的处理模块处接收标识训练序列的数据和语音数据的一部分。在选定的处理模块处,可将针对训练序列的语音数据与针对训练序列的其他实例的语音数据聚合。可基于针对第一训练序列的聚合语音数据来生成针对训练序列中的第一训练序列的模型。该模型可以是语境依赖性的、特定于状态的GMM。例如,该模型可以是依赖于第一训练序列中所包括的语境音素序列的语境依赖性GMM,其中该GMM对第一训练序列的中央音素的HMM状态的输出分布加以建模。
生成的模型可存储在分布式关联数组中。例如,生成的模型可存储在与标识出的分区键相关联的分布式关联数组的分区中。生成的模型可与唯一地对应于第一训练序列的键联合存储在分布式关联数组中。例如,键可关联于针对第一训练序列的模型,并且在分布式关联数组中该键不与针对任何其他训练序列的任何模型相关联。
在一些实现中,选定的处理模块确定聚合语音数据包括针对比训练序列中的第二训练序列的实例的阈值数目更少的实例的数据。响应于所述确定,选定的处理模块不生成针对第二训练序列的模型。
图5是图示可使用可变长度的语音语境来执行语音识别的系统500的示例的示图。系统500可使用识别不同长度的语音语境的声学模型(诸如声学模型140)来识别语音。系统500包括被称为映射器520a-520d的多个处理模块。系统500还包括控制模块510,以及通过网络570而与计算设备560通信的语音识别系统550。
计算设备560例如可以是台式计算机、膝上型计算机、蜂窝电话、智能电话、个人数字助理(PDA)、平板计算机、可穿戴计算机、导航系统,或者另一计算设备。由语音识别系统550所进行的操作可通过单个计算机系统来进行,或者可分布于多个计算机系统之间。语音识别系统访问存储在一个或多个数据存储设备上的声学模型540,所述数据存储设备可直接连接或者通过网络570而连接。网络570可以是有线网络或无线网络,或者是两者的组合。网络570可包括一个或多个公用网络或专用网络,并可包括因特网。
系统500可使用不同量的语音语境来评价话语的候选转录。将具有不同数目的语音单元的测试序列与声学模型140所识别的语境相比较。使用由声学模型140所识别的最大量的语音语境来对候选转录进行排名。在对候选转录的评估期间,“回退”以使用较小语境会受到处罚。这反映出对声学模型140中相对较小的语音语境的匹配表明比对声学模型140中较大语音语境的匹配更低的准确度可能性。
例如,接收语音数据和标识该语音数据的候选转录的数据。可以访问该候选转录的语音表达。可以针对该语音表达中的特定音素提取多个测试序列。该多个测试序列中的每个测试序列可包括围绕特定音素的不同语境音素集。可以接收指示出声学模型包括与所述多个测试序列中的一个或多个相对应的数据的数据。可以从一个或多个测试序列之中选择包括最高数目的语境音素的测试序列。可基于来自对应于选定的测试序列的声学模型的数据来生成候选转录的得分。
在图5中图示的示例中,计算设备560记录含有由计算设备560的用户502所讲的话语562“fashion”的音频。计算设备560将诸如波形或其他编码音频形式的包括话语562的语音帧564发送至语音识别系统550。
语音识别系统550可包括从语音帧564中提取语音参数的前端模块。例如,语音识别系统550可提取一系列语音帧552,其中每个帧为特征向量,代表在大约10毫秒的输入语音期间出现的语音特性。可以使用任何适当的特征提取算法,例如包括提取梅尔频率倒谱分量(mel-frequency cepstral component,MFCC)的算法。
语音识别系统550执行“第一轮”语音识别来标识话语562的候选转录。语音识别系统550可使用不同于声学模型140的声学模型。例如,用于所述第一轮的声学模型可以是本地存储的而不是分布的,并且可使用固定量的语音语境(例如,3音素)而不是可变量的语音语境。在一些实现中,使用与用以训练声学模型140的训练数据或训练技术不同的训练数据或训练技术来训练用于第一轮识别的声学模型。
第一轮识别阶段产生候选转录554a-554c,其中每个候选转录被分配有对应的得分555a-555c。每个得分555a-555c可例如指示该得分所分配到的候选转录是话语562的正确转录的可能性。例如,得分555a-555c可以是由声学模型输出用于第一轮识别的置信度得分,其指示候选转录为正确的模型置信度。候选转录554a-554c根据得分555a-555c来排名。
语音识别系统550使用声学模型140来选择候选转录554a-554c的子集用于“第二轮”语音识别。例如,可以选择候选转录554a-554c的最高排名的子集(例如,候选转录554a-554c的据信最有可能是正确的集合)。在一些实现中,语音识别系统550选择N个最高排名的候选转录554a-554c,其中N为整数,诸如5、10或20。还可以使用其他N值。
语音识别系统550向执行第二轮语音识别的分布式计算框架输出语音帧552和识别数据553,所述识别数据553标识候选转录554a-554c和对应的得分555a-555c。例如,语音识别系统550可将识别数据553传送至控制模块510,诸如映射化简实现的主处理模块。控制模块510向映射器520a-520d分配识别任务,并协调第二轮识别的输出。
在一些实现中,控制模块510分配映射器520a-520d来识别语音序列中的不同话语。例如,控制模块510从由用户502所讲的多个词语的序列向映射器520a提供第一词语的语音帧和候选转录,向映射器520b提供第二词语的语音帧和候选转录,并以此类推。因此,可由不同的映射器502a-502d来处理用户502所说的一系列话语。类似地,当识别来自多个用户的语音时,各个映射器502a-502d可识别不同用户的话语。
在图示的示例中,控制模块510分配单一映射器,例如映射器520a,来评估所有的候选转录554a-554c。由于所有对应于话语562的候选转录554a-554c均在相同的映射器520a处得到评估,因此无需在多个映射器520a-520d之间复制语音帧552,这节省了带宽并促进了对大量数据的高效处理。
如以下关于图6所进一步详细描述,映射器520a确定针对每个候选转录554a-554c的语音表达,并提取语音单元的测试序列。例如,对于给定的候选转录,测试序列可包括针对候选转录的语音表达中的每个音素的每个HMM状态的最高阶M音素和对应的回退M音素。映射器520a在最高排名的候选转录集合中提取针对每个候选转录554a-554c的测试序列。
使用提取的测试序列,映射器520a从声学模型140中获得声学模型数据。可通过分布式数组管理服务542来访问声学模型140。服务542可以是存储器中键值服务系统(例如,SS表服务),其具有S个服务器模块(未示出),其中每个服务器模块存储声学模型140中的数据的S分之一。例如,所述S个服务器模块中的每个服务器模块可在RAM中存储分区140a-140d中的一个或多个分区。
响应于请求,如果在声学模型140中存在针对该语音序列的数据,则服务542可查找对应于给定的测试序列的声学模型数据(例如,声学模型140中所存储的GMM)。映射器520a发送标识提取的测试序列的批处理请求。作为响应,服务542从声学模型140的各个分区140a-140d中检索针对测试序列的声学模型数据。
为了标识从中获得针对给定测试序列的数据的适当分区,服务542使用与用以训练声学模型140的分区键相同的分区键。例如,标识测试序列的分区键是该序列的HMM状态标识和中央三音素的函数。作为示例,对于测试序列“ih_1/ae k sh__n sil~”,分区键可以是“ih_1/sh__n”,或者是该序列的另一表达。服务542标识对应于分区键的适当分区140a-140d。在标识的分区中,可使用唯一地指定与测试序列相对应的声学模型140的一部分的键(例如,基于完整测试序列“ih_1/ae k sh__n sil~”的键)来获得针对该测试序列的声学模型数据。对于每个测试序列,服务542将对应的声学模型数据提供给请求该数据的映射器520a。
映射器520a使用声学模型数据来调整候选转录554a-554c的得分555a-555c。例如,对于每个候选转录,映射器520a可基于接收到的来自声学模型140的数据来生成得分,该得分指示出候选转录是对语音帧552并从而是对话语562的正确转录的可能性。可将基于来自声学模型140的数据的得分与来自第一轮识别的得分555a-555c相结合来产生经调整的得分575a-575c。根据经调整的得分575a-575c对候选转录554a-554c进行重新排名。
如以下进一步所述,使用针对声学模型140所识别的最大语音语境的模型数据来执行候选转录的评估。当获得针对作为最高阶M音素(其代表最大量的语音语境)的测试序列的声学模型数据时,使用该声学模型数据来生成经调整得分。然而,当针对最高阶M音素的声学模型数据不可用时,映射器520a使用针对具有最高数目的语境音素的回退M音素的声学模型数据来生成经调整得分。因此,对于给定的候选转录,用以评价不同HMM状态的声学模型数据可具有与不同长度的语音语境相对应的输出分布。所使用的一些GMM可能是基于主体音素之前和/或之后的5个音素而得到训练,所使用的其他GMM可能是使用中央音素之前和/或之后的4个音素而得到训练,并以此类推。尽管如此,通过使用针对最大量的语音语境的声学模型数据,系统可提高识别的准确度。
在对候选转录554a-554c重新排名之后,映射器520a向控制模块510发送标识经更新排名的识别器数据578,控制模块510将该识别器数据578发送至语音识别系统550。语音识别系统550使用经更新排名来选择一个或多个候选转录554a-554c以将其提供给计算设备560。在图示的示例中,提供候选转录554b“fashion”作为话语562的转录。虽然第一轮语音识别将候选转录554a“action”视为最有可能的转录,但使用声学模型140的第二轮对排名加以调整从而指示出候选转录554b“fashion”才最有可能是正确的。
一般而言,使用较高数目的语境音素来评估转录可产生比使用较低数目的语境音素更为准确的结果。相应地,使用可识别多种长度的语音语境的声学模型140可提供比仅识别固定长度的语音语境的系统更好的识别准确度。与使用仅使用固定长度语音语境的声学模型的技术相比,使用回退M音素的声学模型在准确度上的提高可在较低的词语错误率(WER)方面量化。
图6是图示由映射器所进行的用来评估话语的候选转录的处理的示图。在图示的示例中,图5的映射器520a接收上文所述的识别器数据553和语音帧552。映射器520a评估话语562的N个最高排名候选转录554a-554c。
映射器520a标识针对候选转录554a的语音表达620(602)。如上文所述,映射器520a可例如从发音词典中获得语音表达620。
映射器520a将语音帧564与候选转录554a对准(604)。如上文所述,映射器520a可在组成H C L之后生成语境依赖性状态级维特比对准,其中L、C和H相应地表示发音词典、语境依赖关系树和HMM至状态FST。
映射器520a从语音表达620中提取测试序列630(606)。如上文所述,测试序列630可以是M音素。例如,对于语音表达620中的每个音素的每个HMM状态,可提取最高阶M音素,并且还可提取回退M音素直至中央三音素。M的最大值可与用于训练声学模型140的M最大值相同。在图示的示例中,M的最大值是3,但亦可使用诸如2、4、5、7等其他值。
如上文所述,当音素周围的语音语境不对称时,映射器520a提取包括该音素之前和之后的非对称数目的语境音素的测试序列。符号“~”表示非对称M音素中的空置语境位置。举例而言,与仅使用较低阶M音素并忽略来自具有最长语境的一端的一个或多个语境音素相比,提取非对称M音素作为测试序列630允许在声学模型140中匹配更大量的语境。使用非对称M音素对于识别出现在或靠近于词语或句子边界的音素(其中音素一侧的语音语境可能有限)可特别有帮助。映射器520a可通过仅从中央音素的包括最大数目的语境音素的一侧回退直至在中央音素周围存在对称数目的语境音素来提取非对称测试序列。映射器520a可继而从全部两侧回退,此后生成具有在中央音素周围的对称数目的语境音素的测试序列。
在一些实现中,映射器520a获得语音表达(602),将该语音表达与语音帧564对准(604),并提取针对每个候选转录554a-554c的测试序列(606)。例如,映射器520a从语音表达中提取针对候选转录554b“fashion”的测试序列631。还提取针对候选转录554c和映射器520a所接收的任何其他候选转录的测试序列。在一些实现中,映射器520a向池或集合640添加针对所有候选转录554a-554c的测试序列630、631。针对每个话语(例如,每个词语)对集合640进行一次初始化。
映射器520a获取集合640中的测试序列630、631的声学模型数据(608)。例如,映射器520a向分布式数组管理服务542发送标识集合640中的测试序列630、631的数据作为批处理请求。具体而言,映射器520a可向服务542的主处理模块发起远程过程调用,标识出集合640中的测试序列630、631。主处理模块继而尝试查找对应于集合640中每个测试序列的GMM。
主处理模块对每个测试序列应用分区函数,从而获得测试序列的相应分区键。如果声学模型140中存在对应于测试序列的GMM,则分区键标识出哪些分区140a-140d将含有该GMM的数据。分区140a-140d中的数据可由各自被分配有不同分区键的不同服务器模块来供应。主处理模块标识被分配给经标识分区键的服务器模块,并从每个服务器模块请求针对与其被分配的一个或多个分区键相关联的测试序列的GMM数据。当由服务器模块所处理的一个或多个分区140a-140d包括针对测试序列的GMM条目(例如,针对唯一地对应于该测试序列的键的条目)时,服务器模块将GMM数据提供给主处理模块,该主处理模块将GMM数据提供给映射器520a。当服务器模块的一个或多个分区140a-140d不包括针对测试序列的条目时,不返回针对该测试序列的数据。
映射器520a从接收到的声学模型数据中选择对应于最长测试序列(例如,包括最高数目的语境音素的测试数据)的声学模型数据(612)。作为示例,针对候选转录554a的测试序列630包括针对“ih_1”HMM状态的3音素630a、2音素630b和1音素630c。如果接收到针对测试序列630a-630c中每个测试序列的声学模型数据,则使用接收到的针对3音素630a的数据来对“ih_1”HMM状态评分,而不使用针对2音素630b和1音素630c的数据。然而,如果未接收到针对3音素630a的声学模型数据,则使用接收到的针对具有次最高数目的语境音素的测试序列(2音素630b)的数据。通过选择针对具有最高数目的语境音素的测试序列的声学模型数据,映射器520a确保使用声学模型140所识别的最大量的语音语境。
映射器520a继而使用选定的声学模型数据来调整候选转录554a-554c的得分555a-555c。关于图7进一步详细描述了声学模型数据的选择和得分555a-555c的调整。
图7是图示候选转录的评分的示图。图7包括表700,并且每个行702a-702f对应于不同的测试序列704。表700还指示每个测试序列704的阶706,或者换言之,测试序列704中所包括的在中央音素之前和之后的语境位置的数目。
当映射器520a请求针对测试序列704的声学模型数据时,分布式数组管理服务542可提供针对比所有的测试序列704更少的测试序列的声学模型数据。换言之,可能存在一些代表未被声学模型140所识别的语音语境的测试序列704,并因此没有对应的数据可用。当针对最高阶训练序列(例如,在图示的示例中针对M阶=3)的声学模型数据不可用时,映射器520a回退以使用针对代表较小量的语音语境的训练序列的数据。
作为示例,行702a-702c各自包括与候选转录554a“action”的语音表达中的“ih_1”HMM状态相对应的训练序列704。然而,表700指示没有针对行702a中的3音素(包括最高数目的语境音素)可用的声学模型数据。作为结果,使用针对回退测试序列中之一的声学模型数据。具体而言,针对行702b中的2音素的声学模型数据是可用的,因此使用针对该测试序列的声学模型数据来生成“ih_1”HMM状态的得分。
作为另一示例,行702d-702f各自包括与候选转录554b“fashion”的语音表达中的“ih_1”HMM状态相对应的训练序列704。由于针对最高阶测试序列(行702d中的3音素)的声学模型数据是可用的,因此选择针对该行的声学模型数据。
映射器利用选定的声学模型数据来为每个候选转录的语音表达中的每个HMM状态分配HMM状态得分708。HMM状态得分708可指示出在给定测试序列704中的语音语境的情况下,HMM状态准确地代表对应的语音帧的可能性。检索到的针对测试序列704的声学模型数据可包括描述针对特定HMM状态而训练的GMM的数据和由训练序列704所指示的语音语境。
为了处罚对较低阶训练序列的使用,可针对具有少于最大M值的阶706的训练序列而产生每帧回退成本。针对回退训练序列的处罚710可通过以下公式来分配:
处罚=C x(Mmax–o),
其中C是每一回退音素的单位成本,Mmax的量是M的最大值,并且o是测试序列的阶。相应地,丢弃或回退的音素越多(因而由测试序列所代表的语境位置越少),则处罚710越高。在一些实现中,不处罚包括非对称数目的语境音素的测试序列。将非对称测试序列的阶o计算为中央音素之前的语境音素的数目和中央音素之后的语境音素的数目的最大值。
在图示的示例中,将C值设置为0.2,并且Mmax的值为3。对于行702b中的2音素,相对于最高阶3音素而忽略掉一个语境音素或语境位置。作为结果,针对行702b的处罚710为0.2x(3-2),从而得到处罚0.2。相比之下,行702d中的3音素是最高阶训练序列,并且由于未忽略语境音素,因此不招致处罚。
映射器520a对HMM状态得分708施加处罚710以生成最终HMM状态得分712。处罚710可以例如通过从HMM状态得分708中减去处罚,或者通过以其他方式调整HMM状态得分708以指示出HMM状态为正确的置信度降低来施加。继而使用最终HMM状态得分712来生成候选转录的得分。所描述的技术可用于生成针对候选转录的语音表达中每个音素的每个HMM状态的最终HMM状态得分。
在一些情况中,声学模型数据对于给定的HMM状态和语音语境的任何测试序列均不可用。在这种情况下,映射器520a可依赖于在第一轮语音识别期间所产生的针对该HMM状态的早先得分。由于所述测试序列都未被声学模型140所识别,因此可对第一轮得分施加处罚。当映射器520a一路回退至使用第一轮声学模型时,可将阶o视为0,并且每音素回退成本可达到其最大值。
继而使用经组合的HMM状态得分集来生成每个候选转录的总体得分。在图示的示例中,将得分720分配给候选转录554a“action”的语音表达的不同HMM状态。对得分720的组合产生候选转录554a的分值为“0.5”的总体得分722。将得分730分配给候选转录554b“fashion”的语音表达的不同HMM状态。对得分730的组合产生候选转录554b的分值为“0.8”的总体得分732。在图示的示例中,候选转录554b的较高总体得分指示出,通过使用具有可变语音语境的声学模型140,转录“fashion”与“action”相比被认为更有可能是语音帧564的正确转录。
可将声学模型140的总体得分722、732与来自第一轮语音识别的得分555a-555c加以组合来确定用于对图5中的候选转录554a-554c进行排名的经调整得分575a-575c。通过在由第一轮声学模型所产生的得分555a-555c与使用第二轮声学模型140所产生的总体得分722、732之间的对数线性内插来计算每个候选转录554a-554c的经调整得分575a-575c。可使用以下公式来计算最终得分:
log P AM ( A | W ) = &lambda; &CenterDot; log P first pass ( A | W ) + ( 1.0 - &lambda; ) &CenterDot; log P sec ondpass ( A | W ) ,
其中A表示声学特征,W表示词语序列,而λ是设置第一轮和第二轮声学模型的影响的权重值。在图示的示例中,第一轮声学模型和第二轮声学模型的得分的权重相等。在对数概率空间中的加法导致在正则概率空间中的乘法。作为示例,候选转录554b的得分575b可具有由得分555b的值(例如,0.7)与得分732(例如,0.8)相乘而得出的值0.56。
在一些实现中,用于对候选转录进行排名的得分还基于一个或多个语言模型的输出。基于声学模型概率得分和语言模型概率得分的候选转录的组合得分可利用以下公式来计算:
logP(W|A)=1/lmw·logPAM(A|W)+logPLM(W),
其中A表示声学特征,W表示词语序列,而lmw是语言模型权重。可以使用同时反映出声学模型输出和语言模型输出的得分来选择被确定为最有可能是正确的一个或多个转录。
图8是图示使用可变长度的语音语境来识别语音的过程800的流程图。简单而言,过程800包括:接收语音数据和标识该语音数据的候选转录的数据,访问候选转录的语音表达,从语音表达中提取多个测试序列,接收指示出声学模型包括与所述多个测试序列中的一个或多个测试序列相对应的数据的数据,从所述声学模型所包括的数据所针对的所述一个或多个测试序列之中选择包括最高数目的语境音素的测试序列;访问来自所述声学模型的对应于选定的测试序列的数据,以及基于来自所述声学模型的对应于选定的测试序列的数据而生成候选转录的得分。
进一步详细而言,接收语音数据和标识该语音数据的候选转录的数据(802)。语音数据可包括指示语音特性的特征向量。可接收针对多个语音帧中的每个语音帧的特征向量,其中每个语音帧例如代表10毫秒的语音。可在分布式计算系统处接收语音数据和候选转录。
获取候选转录的语音表达(804)。语音表达可以是语境无关音素的序列。
从语音表达中提取多个测试序列(806)。所述多个测试序列是针对语音表达中的特定音素而提取的,并且所述多个测试序列中的每个测试序列包括围绕特定音素的不同的语境音素集。
例如,每个测试序列可以是如上文所述的具有不同的整数M值的M音素。提取的测试序列可例如至少包括包含特定音素之前的一个语境音素和/或特定音素之后的一个语境音素的第一序列,包含特定音素之前的两个语境音素和/或特定音素之后的两个语境音素的第二序列,以及包含特定音素之前的三个语境音素和/或特定音素之后的三个语境音素的第三序列。每个测试序列可以是语音表达中的连续音素序列。
可以提取包括特定音素之前和之后的非对称数目的语境音素的一个或多个非对称测试序列。此外,可以提取包括特定音素之前和之后的对称数目的语境音素的一个或多个对称测试序列。每个所述对称测试序列可包括比所述一个或多个非对称测试序列中的每个非对称测试序列更少的语境音素。换言之,当从最高阶M音素回退以生成回退M音素时,可仅从包括最多语境音素的特定音素的一侧移除语境音素。可从一侧移除语境音素直到在特定音素周围存在对称数目的音素,并可继而从语境音素的全部两侧忽略或回退语境音素。
在一些实现中,提取至少5个测试序列。所述至少5个测试序列包括相应地包含出现在特定音素之前和之后的一个、两个、三个、四个或五个语境位置内的任何语境音素的测试序列。在所述测试序列中,可将不包含语境音素的语境位置指示为空置。
接收指示出声学模型包括与所述多个测试序列中的一个或多个相对应的数据的数据(808)。为了接收该数据,可发送标识所述多个测试序列中的每个测试序列的请求。可以接收针对由声学模型所识别的所述一个或多个测试序列中的每个测试序列的,来自声学模型的数据。如果该数据存在于模型之中,则接收到的针对测试序列的声学模型数据可以是与该测试序列的特定HMM状态和语音语境相关联的GMM。
在一些实现中,从分布式关联数组中获得针对测试序列的数据。为了获得来自分布式关联数组的数据,可基于出现在所述多个测试序列中的每个测试序列内的音素序列来标识分区键。例如,针对测试序列的分区键可基于测试序列的中央三音素。可以使用与用于训练声学模型的分区函数相同的函数来访问来自分布式关联数组的数据。可基于分区键来标识分布式关联数组的分区。在一些实现中,确定分区键所分配到的服务器模块。可以从标识的分区,或者从分区键所分配到的标识的服务器模块获得对应于所述多个测试序列的数据。
从声学模型所包括的数据所针对的所述一个或多个测试序列之中选择包括最高数目的语境音素的测试序列(810)。换言之,选择由声学模型所识别的最长测试序列。选定的测试序列可以是包括预定最大数目的语境音素的测试序列,例如,所述多个测试序列的最高阶M音素。然而,在一些情况下,选择测试序列之中包括比预定最大数目更少的数目的语境音素的一个测试序列。当重复过程800的各部分来评估语音表达的不同音素时,针对不同音素而选择的测试序列可围绕它们相应的中央音素具有不同数目的语境音素。
访问来自声学模型的对应于选定的测试序列的数据(812)。访问的数据可包括定义高斯混合模型(GMM)(例如,对应于选定的测试序列的中央音素的GMM)的参数。GMM可定义针对特定音素的HMM状态的输出分布,所述输出分布以选定的测试序列中所包括的语境音素的特定序列为条件。访问的数据可以是接收到的指示出声学模型包括与所述多个测试序列中的一个或多个相对应的数据的数据。如上文所述,访问数据可包括从分布式关联数组访问数据。
基于来自声学模型的对应于选定的测试序列的数据来生成候选转录的得分(814)。该得分可以是指示候选转录是对于语音数据的准确转录的可能性的置信度得分或概率测量。得分可指示候选转录的特定部分是正确的,其中该特定部分是特定音素或子音素组分,诸如用于对特定音素建模的若干个HMM状态中之一。
当选定的测试序列包括少于预定最大数目的语境音素时,可确定处罚。可基于处罚来调整第一得分,诸如置信度得分或概率测量。与第一得分相比,经调整得分可指示候选转录是对语音数据的准确转录的较低可能性或置信度。可基于选定的测试序列中语境音素的数目与预定最大音素数目之间的差异来确定处罚的量值。例如,在语境音素的预定最大数目是3或更高的情况下,针对包括特定音素之前或之后的两个语境音素的测试序列的处罚可少于针对包括特定音素之前或之后的仅一个语境音素的测试序列的处罚。
在一些实现中,生成候选转录的得分包括使用不同的声学模型——诸如使用固定长度的语音语境的声学模型或者不依赖于语音语境的声学模型——来调整分配给候选转录的得分。
过程800可用于评估语音序列中的多个音素。例如,过程800可包括从语音表达中提取针对不同于特定音素的第二音素的多个第二测试序列。多个第二测试序列中的每个第二测试序列包括围绕第二音素的不同的语境音素集。接收指示声学模型包括所述多个第二测试序列中的一个或多个第二测试序列的数据。从声学模型所包括的数据所针对的所述一个或多个第二测试序列之中选择包括最高数目的语境音素的第二测试序列。访问来自对应于选定的第二测试序列的声学模型的数据。针对候选转录而生成的得分可基于来自对应于选定的第二测试序列的声学模型的数据以及来自对应于其他选定的测试序列的声学模型的数据。此外,或作为备选,生成针对第二音素或第二音素的HMM状态的得分。
可针对多个候选转录而重复过程800,并且可根据候选转录是对语音数据的正确转录的可能性或置信度,使用针对每个候选转录而生成的得分来排名或重新排名候选转录。
本发明的实施方式以及本说明书中所描述的所有功能操作可在数字电子电路中,或计算机软件、固件或硬件中(包括本说明书所公开的结构及其结构等同物),或在它们中的一个或多个组合中实现。本发明的实施方式可实现为一个或多个计算机程序产品,即,计算机可读介质上所编码的用于由数据处理装置进行处理或用于控制数据处理装置的操作的计算机程序指令的一个或多个模块。计算机可读介质可以是非暂时性计算机可读存储介质、机器可读存储设备、机器可读存储基板、存储器设备、产生机器可读传播信号的物质组合物,或者其中一个或多个的组合。术语“数据处理装置”包含用于处理数据的所有装置、设备和机器,举例而言包括可编程处理器、计算机或者多个处理器或计算机。除硬件之外,装置可包括为所考虑的计算机程序创造执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或者其中一个或多个的组合的代码。传播信号是人工生成的信号,例如,机器生成的电、光或电磁信号,其被生成用于编码信息以供向合适的接收器装置传输。
计算机程序(亦称程序、软件、软件应用、脚本或代码)能够以任何形式的编程语言(包括编译或解释语言)来编写,并且其能够以任何形式来部署——包括作为独立程序或作为模块、组件、子例程或者适于在计算机环境中使用的其他单元。计算机程序不一定对应于文件系统中的文件。程序可存储在保存其他程序或数据(例如,存储在标记语言文件中的一个或多个脚本)的文件的一部分中,在专用于所考虑的程序的单一文件中,或者在多个协调文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。可将计算机程序部署成在一个计算机上或者在位于一个地点或分布在多个地点之间并由通信网络互连的多个计算机上执行。
本说明书中所描述的过程和逻辑流程可由执行一个或多个计算机程序以通过对输入数据进行操作和生成输出而执行功能的一个或多个可编程处理器来执行。所述过程和逻辑流程还可以通过还可实现为例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)的专用逻辑电路来执行。
适于执行计算机程序的处理器举例而言包括通用微处理器和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。一般而言,处理器将从只读存储器或随机存取存储器或同时从这两者接收指令和数据。计算机的主要元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。一般而言,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),或者与该大容量存储设备可操作地耦合以从其接收数据或向其传输数据或者既接收又传输数据。然而,计算机不必具有此类设备。此外,计算机可嵌入另一设备,仅举几例而言,例如平板计算机、移动电话、个人数字助理(PDA)、移动音频播放器、全球定位系统(GPS)接收器。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质以及存储器设备,举例而言包括:半导体存储器设备,例如,EPROM、EEPROM和快闪存储器设备;磁盘,例如,内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可辅以或并入到专用逻辑电路。
为了提供与用户的交互,本发明的实施方式可实现于具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器))和可让用户向计算机提供输入的键盘或指点设备(例如,鼠标或轨迹球)的计算机上。还可使用其他种类的设备来提供与用户的交互;例如,向用户提供的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;并且能够以包括声学、语音或触觉输入在内的任何形式接收来自用户的输入。
本发明的实施方式可实现于如下计算系统之中,该计算系统包括后端组件,例如,数据服务器;或者包括中间件组件,例如,应用服务器;或者包括前端组件,例如,具有图形用户界面或网络浏览器的客户端计算机,用户可通过该图形用户界面或网络浏览器与本发明的实现进行交互;或者包括一个或多个此类后端、中间件或前端组件的任何组合。系统的组件可通过任何形式或介质的数字数据通信(例如,通信网络)来互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),例如,因特网。
计算机系统可包括客户端和服务器。客户端和服务器一般彼此远离并且通常经通信网络来交互。客户端与服务器的关系凭借运行于相应计算机上并彼此具有客户端-服务器关系的计算机程序而产生。
虽然本说明书含有许多细节,但不应将这些细节理解为对本发明或可要求保护的范围的限制,而是应当将其理解为对特定于本发明的特定实施方式的特征的描述。本说明书中在独立的实施方式背景下描述的某些特征还可在单一实施方式中相结合地实现。相反地,在单一实施方式背景下描述的某些特征还可独立地在多个实施方式中或在任何合适的子组合中实现。此外,虽然上文可能将特征描述为在某些组合中起作用,甚至最初如此声称,但是在一些情况下可从组合中摘除来自所声称的组合的一个或多个特征,并且所声称的组合可针对子组合或子组合的变体。
类似地,虽然在附图中以特定顺序描绘了操作,但不应将此理解为要求以所示的顺序或连续顺序来执行此类操作或者要求执行所有图示的操作来实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,不应将上文所述实施方式中各个系统组件的分离理解为在所有的实施方式中均要求此类分离,并且应当理解所述程序组件和系统一般可在单一软件产品中集成在一起,或者打包成多个软件产品。
在每个提及HTML文件的情况下,可以替代其他文件类型或格式。例如,可由XML、JSON、纯文本或其他类型的文件来替代HTML文件。此外,当提及表格或哈希表时,可以使用其他数据结构(诸如电子表格、关系数据库或结构化文件)。
因此,已对本发明的特定实施方式进行了描述。其他实施方式处于以下权利要求的范围之内。例如,权利要求中所陈述的行动能够以不同的顺序来执行并仍然达到期望的结果。

Claims (93)

1.一种系统,包括:
一个或多个计算机和存储指令的一个或多个存储设备,所述指令当由所述一个或多个计算机执行时,可操作用于使得所述一个或多个计算机执行如下操作,包括:
接收语音数据和标识所述语音数据的转录的数据;
访问所述转录的语音表达;
从所述语音表达提取针对所述语音表达中的特定音素的训练序列,每个所述训练序列包括围绕所述特定音素的不同的语境音素集;
基于出现在每个所述训练序列中的音素序列来标识分区键;
从多个处理模块之中选择标识的分区键被分配到的处理模块,所述处理模块被指定用于训练对应于所述标识的分区键的声学模型的一部分;以及
向选定的处理模块传送(i)标识所述训练序列的数据和(ii)对应于包括最多语境音素的所述训练序列的所述语音数据的一部分。
2.根据权利要求1的系统,其中访问所述转录的所述语音表达包括访问包含语境无关音素的语音表达。
3.根据权利要求1的系统,其中接收语音数据包括接收指示语音特性的特征向量。
4.根据权利要求1的系统,其中传送所述语音数据的至少一部分包括传送针对比所述训练序列集中的所有训练序列更少的训练序列的语音数据实例。
5.根据权利要求1的系统,其中传送所述语音数据的所述至少一部分包括传送对应于包括最多语境音素的所述训练序列的所述语音数据,而不向所述选定的处理模块传送针对其他训练序列的附加语音数据。
6.根据权利要求1的系统,其中所述操作还包括:
在所述选定的处理模块处接收标识所述训练序列的所述数据和对应于包括最多语境音素的所述训练序列的所述语音数据的所述一部分;以及
在所述选定的处理模块处针对每个所述训练序列而访问接收到的语音数据的不同子集。
7.根据权利要求1的系统,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于出现在每个所述训练序列中的两个或更多个连续音素的序列来标识所述分区键。
8.根据权利要求1的系统,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于包含所述特定音素之前的一个语境音素和所述特定音素之后的一个语境音素的序列来标识所述分区键。
9.根据权利要求1的系统,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括标识针对每个所述训练序列的分区键,其中针对每个所述训练序列标识相同的分区键。
10.根据权利要求1的系统,其中所述训练序列是各自包括中央三音素的第一训练序列;
其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于所述第一训练序列中所包括的所述中央三音素来标识所述分区键;以及
其中所述操作还包括向所述处理模块而不向所述多个处理模块中的任何其他处理模块传送标识包括与所述第一训练序列中所包括的中央三音素相同的中央三音素的第二训练序列的数据,所述第二训练序列是从第二语音数据的转录的语音表达提取的。
11.根据权利要求1的系统,其中提取针对所述语音表达中的所述特定音素的所述训练序列包括标识至少:
第一序列,其包括所述特定音素之前的一个语境音素和所述特定音素之后的一个语境音素,
第二序列,其包括所述特定音素之前的两个语境音素和所述特定音素之后的两个语境音素,以及
第三序列,其包括所述特定音素之前的三个语境音素和所述特定音素之后的三个语境音素。
12.根据权利要求1的系统,其中提取针对所述语音表达中的所述特定音素的所述训练序列包括提取所述语音表达中的连续音素序列。
13.根据权利要求1的系统,其中所述操作还包括:
在所述选定的处理模块处接收标识所述训练序列的所述数据;以及
在所述选定的处理模块处将所述语音数据的所述部分与针对所述训练序列的其他实例的语音数据聚合。
14.根据权利要求13的系统,其中所述操作还包括:
在所述选定的处理模块处基于针对所述训练序列中的第一训练序列的聚合的所述语音数据而生成针对所述第一训练序列的模型;以及
将生成的模型存储在分布式关联数组中,所述生成的模型被存储在与所述标识的分区键相关联的所述分布式关联数组的分区中。
15.根据权利要求14的系统,其中生成针对所述第一训练序列的所述模型包括生成依赖于所述第一训练序列中所包括的所述语境音素序列的语境依赖性高斯混合模型,所述高斯混合模型代表所述第一训练序列的中央音素的隐马尔可夫模型状态的输出分布。
16.根据权利要求14的系统,其中在所述分布式关联数组中存储所述生成的模型包括在所述分布式关联数组中存储所述生成的模型以使得所述生成的模型与唯一地对应于所述第一训练序列的键相关联。
17.根据权利要求13的系统,其中所述操作还包括:
在所述选定的处理模块处确定聚合的所述语音数据包括针对少于所述训练序列的第二训练序列的阈值数目的实例的数据;以及
响应于确定聚合的所述语音数据包括针对少于所述第二训练序列的所述阈值数目的实例的数据,不生成针对所述第二训练序列的模型。
18.一种计算机实现的方法,包括:
接收语音数据和标识所述语音数据的转录的数据;
访问所述转录的语音表达;
从所述语音表达提取针对所述语音表达中的特定音素的训练序列,每个所述训练序列包括围绕所述特定音素的不同的语境音素集;
基于出现在每个所述训练序列中的音素序列来标识分区键;
从多个处理模块之中选择标识的分区键被分配到的处理模块,所述处理模块被指定用于训练对应于所述标识的分区键的声学模型的一部分;以及
向选定的处理模块传送(i)标识所述训练序列的数据和(ii)对应于包括最多语境音素的所述训练序列的所述语音数据的一部分。
19.根据权利要求18的计算机实现的方法,其中访问所述转录的所述语音表达包括访问包含语境无关音素的语音表达。
20.根据权利要求18的计算机实现的方法,其中接收语音数据包括接收指示语音特性的特征向量。
21.根据权利要求18的计算机实现的方法,其中传送所述语音数据的至少一部分包括传送针对比所述训练序列集中的所有训练序列更少的训练序列的语音数据实例。
22.根据权利要求18的计算机实现的方法,其中传送所述语音数据的所述至少一部分包括传送对应于包括最多语境音素的所述训练序列的所述语音数据,而不向所述选定的处理模块传送针对其他训练序列的附加语音数据。
23.根据权利要求18的计算机实现的方法,还包括:
在所述选定的处理模块处接收标识所述训练序列的所述数据和对应于包括最多语境音素的所述训练序列的所述语音数据的所述部分;以及
在所述选定的处理模块处针对每个所述训练序列而访问接收到的语音数据的不同子集。
24.根据权利要求18的计算机实现的方法,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于出现在每个所述训练序列中的两个或更多个连续音素的序列来标识所述分区键。
25.根据权利要求18的计算机实现的方法,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于包含所述特定音素之前的一个语境音素和所述特定音素之后的一个语境音素的序列来标识所述分区键。
26.根据权利要求18的计算机实现的方法,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括标识针对每个所述训练序列的分区键,其中针对每个所述训练序列标识相同的分区键。
27.根据权利要求18的计算机实现的方法,其中所述训练序列是各自包括中央三音素的第一训练序列;
其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于所述第一训练序列中所包括的所述中央三音素来标识所述分区键;并且
其中所述计算机实现的方法还包括向所述处理模块而不向所述多个处理模块中的任何其他处理模块传送标识包括与所述第一训练序列中所包括的中央三音素相同的中央三音素的第二训练序列的数据,所述第二训练序列是从第二语音数据的转录的语音表达提取的。
28.根据权利要求18的计算机实现的方法,其中提取针对所述语音表达中的所述特定音素的所述训练序列包括标识至少:
第一序列,其包括所述特定音素之前的一个语境音素和所述特定音素之后的一个语境音素,
第二序列,其包括所述特定音素之前的两个语境音素和所述特定音素之后的两个语境音素,以及
第三序列,其包括所述特定音素之前的三个语境音素和所述特定音素之后的三个语境音素。
29.根据权利要求18的计算机实现的方法,其中提取针对所述语音表达中的所述特定音素的所述训练序列包括提取所述语音表达中的连续音素序列。
30.根据权利要求18的计算机实现的方法,还包括:
在所述选定的处理模块处接收标识所述训练序列的所述数据;以及
在所述选定的处理模块处将所述语音数据的所述部分与针对所述训练序列的其他实例的语音数据聚合。
31.根据权利要求30的计算机实现的方法,还包括:
在所述选定的处理模块处基于针对所述训练序列中的第一训练序列的聚合的所述语音数据而生成针对所述第一训练序列的模型;以及
将生成的模型存储在分布式关联数组中,所述生成的模型被存储在与所述标识的分区键相关联的所述分布式关联数组的分区中。
32.根据权利要求31的计算机实现的方法,其中生成针对所述第一训练序列的所述模型包括生成依赖于所述第一训练序列中所包括的所述语境音素序列的语境依赖性高斯混合模型,所述高斯混合模型代表所述第一训练序列的中央音素的隐马尔可夫模型状态的输出分布。
33.根据权利要求31的计算机实现的方法,其中在所述分布式关联数组中存储所述生成的模型包括在所述分布式关联数组中存储所述生成的模型以使得所述生成的模型与唯一地对应于所述第一训练序列的键相关联。
34.根据权利要求30的计算机实现的方法,还包括:
在所述选定的处理模块处确定聚合的所述语音数据包括针对少于所述训练序列的第二训练序列的阈值数目的实例的数据;以及
响应于确定聚合的所述语音数据包括针对少于所述第二训练序列的所述阈值数目的实例的数据,不生成针对所述第二训练序列的模型。
35.一种以计算机程序编码的计算机存储介质,所述程序包括指令,所述指令当由一个或多个计算机执行时使得所述一个或多个计算机执行如下操作,包括:
接收语音数据和标识所述语音数据的转录的数据;
访问所述转录的语音表达;
从所述语音表达提取针对所述语音表达中的特定音素的训练序列,每个所述训练序列包括围绕所述特定音素的不同的语境音素集;
基于出现在每个所述训练序列中的音素序列来标识分区键;
从多个处理模块之中选择标识的分区键被分配到的处理模块,所述处理模块被指定用于训练对应于所述标识的分区键的声学模型的一部分;以及
向选定的处理模块传送(i)标识所述训练序列的数据和(ii)对应于包括最多语境音素的所述训练序列的所述语音数据的一部分。
36.根据权利要求35的计算机存储介质,其中访问所述转录的所述语音表达包括访问包含语境无关音素的语音表达。
37.根据权利要求35的计算机存储介质,其中接收语音数据包括接收指示语音特性的特征向量。
38.根据权利要求35的计算机存储介质,其中传送所述语音数据的至少一部分包括传送针对比所述训练序列集中的所有训练序列更少的训练序列的语音数据实例。
39.根据权利要求35的计算机存储介质,其中传送所述语音数据的所述至少一部分包括传送对应于包括最多语境音素的所述训练序列的所述语音数据,而不向所述选定的处理模块传送针对其他训练序列的附加语音数据。
40.根据权利要求35的计算机存储介质,其中所述操作还包括:
在所述选定的处理模块处接收标识所述训练序列的所述数据和对应于包括最多语境音素的所述训练序列的所述语音数据的所述部分;以及
在所述选定的处理模块处针对每个所述训练序列而访问接收到的语音数据的不同子集。
41.根据权利要求35的计算机存储介质,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于出现在每个所述训练序列中的两个或更多个连续音素的序列来标识所述分区键。
42.根据权利要求35的计算机存储介质,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于包含所述特定音素之前的一个语境音素和所述特定音素之后的一个语境音素的序列来标识所述分区键。
43.根据权利要求35的计算机存储介质,其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括标识针对每个所述训练序列的分区键,其中针对每个所述训练序列标识相同的分区键。
44.根据权利要求35的计算机存储介质,其中所述训练序列是各自包括中央三音素的第一训练序列;
其中基于出现在每个所述训练序列中的所述音素序列来标识所述分区键包括基于所述第一训练序列中所包括的所述中央三音素来标识所述分区键;并且
其中所述操作还包括向所述处理模块而不向所述多个处理模块中的任何其他处理模块传送标识包括与所述第一训练序列中所包括的中央三音素相同的中央三音素的第二训练序列的数据,所述第二训练序列是从第二语音数据的转录的语音表达提取的。
45.根据权利要求35的计算机存储介质,其中提取针对所述语音表达中的所述特定音素的所述训练序列包括标识至少:
第一序列,其包括所述特定音素之前的一个语境音素和所述特定音素之后的一个语境音素,
第二序列,其包括所述特定音素之前的两个语境音素和所述特定音素之后的两个语境音素,以及
第三序列,其包括所述特定音素之前的三个语境音素和所述特定音素之后的三个语境音素。
46.根据权利要求35的计算机存储介质,其中提取针对所述语音表达中的所述特定音素的所述训练序列包括提取所述语音表达中的连续音素序列。
47.根据权利要求35的计算机存储介质,其中所述操作还包括:
在所述选定的处理模块处接收标识所述训练序列的所述数据;以及
在所述选定的处理模块处将所述语音数据的所述部分与针对所述训练序列的其他实例的语音数据聚合。
48.根据权利要求47的计算机存储介质,其中所述操作还包括:
在所述选定的处理模块处基于针对所述训练序列中的第一训练序列的聚合的所述语音数据而生成针对所述第一训练序列的模型;以及
将生成的模型存储在分布式关联数组中,所述生成的模型被存储在与所述标识的分区键相关联的所述分布式关联数组的分区中。
49.根据权利要求48的计算机存储介质,其中生成针对所述第一训练序列的所述模型包括生成依赖于所述第一训练序列中所包括的所述语境音素序列的语境依赖性高斯混合模型,所述高斯混合模型代表所述第一训练序列的中央音素的隐马尔可夫模型状态的输出分布。
50.根据权利要求48的计算机存储介质,其中在所述分布式关联数组中存储所述生成的模型包括在所述分布式关联数组中存储所述生成的模型以使得所述生成的模型与唯一地对应于所述第一训练序列的键相关联。
51.根据权利要求47的计算机存储介质,其中所述操作还包括:
在所述选定的处理模块处确定聚合的所述语音数据包括针对少于所述训练序列的第二训练序列的阈值数目的实例的数据;以及
响应于确定聚合的所述语音数据包括针对少于所述第二训练序列的所述阈值数目的实例的数据,不生成针对所述第二训练序列的模型。
52.一种系统,包括:
一个或多个计算机和存储指令的一个或多个存储设备,所述指令当由所述一个或多个计算机执行时,可操作用于使得所述一个或多个计算机执行如下操作,包括:
接收语音数据和指示所述语音数据的候选转录的数据;
访问所述候选转录的语音表达;
从所述语音表达提取针对所述语音表达中的特定音素的多个测试序列,所述多个测试序列中的每个测试序列包括围绕所述特定音素的不同的语境音素集;
接收指示声学模型包括与所述多个测试序列中的一个或多个测试序列对应的数据的数据;
从所述声学模型所包括的数据所针对的所述一个或多个测试序列之中选择包括最高数目的语境音素的所述测试序列;
访问来自所述声学模型的对应于选定的测试序列的数据;以及
基于来自所述声学模型的对应于所述选定的测试序列的访问的数据来生成所述候选转录的得分。
53.根据权利要求52的系统,其中选择包括最高数目的语境音素的所述测试序列包括:选择包括少于预定最大数目的语境音素的所述测试序列之一;并且
其中基于来自所述声学模型的对应于所述选定的测试序列的所述访问的数据来生成所述候选转录的所述得分包括:
基于所述选定的测试序列包括少于所述预定最大数目的语境音素而确定处罚;以及
基于所述处罚来调整所述候选转录的第一得分从而生成经调整得分,所述经调整得分与所述第一得分相比指示所述候选转
录是对所述语音数据的准确转录的更低的可能性。
54.根据权利要求53的系统,其中基于所述选定的测试序列包括少于所述预定最大数目的语境音素而确定所述处罚包括:基于所述选定的测试序列中语境音素的数目与所述语境音素的预定最大数目之间的差异来确定所述处罚的量值。
55.根据权利要求52的系统,其中提取针对所述特定音素的多个测试序列包括:提取包括所述特定音素之前和之后的非对称数目的语境音素的一个或多个非对称测试序列。
56.根据权利要求55的系统,其中提取针对所述特定音素的多个测试序列包括:提取包括所述特定音素之前和之后的对称数目的语境音素的一个或多个对称测试序列,每个所述对称测试序列各自包括比所述一个或多个非对称测试序列中的每个非对称测试序列更少的语境音素。
57.根据权利要求52的系统,其中提取针对所述特定音素的多个测试序列包括提取至少:
第一序列,其包括所述特定音素之前的一个语境音素或所述特定音素之后的一个语境音素,
第二序列,其包括所述特定音素之前的两个语境音素或所述特定音素之后的两个语境音素,以及
第三序列,其包括所述特定音素之前的三个语境音素或所述特定音素之后的三个语境音素。
58.根据权利要求52的系统,其中提取针对所述特定音素的多个测试序列包括提取至少五个测试序列,其中所述至少五个测试序列相应地包括出现在所述特定音素之前和之后的一个、两个、三个、四个或五个语境位置内的任何语境音素。
59.根据权利要求52的系统,其中接收指示所述声学模型包括针对所述多个测试序列中的所述一个或多个测试序列的数据的数据包括:
针对每个所述测试序列请求来自所述声学模型的对应于所述测试序列的数据;
接收来自所述声学模型的与所述声学模型中所存在的数据所针对的所述一个或多个测试序列中的每个测试序列对应的数据;以及
基于接收对应于所述一个或多个测试序列的所述数据而确定所述一个或多个测试序列被所述模型所识别。
60.根据权利要求52的系统,其中访问来自所述声学模型的对应于所述选定的测试序列的所述数据包括:
基于出现在所述多个测试序列中的每个测试序列中的音素序列来标识分区键;
标识对应于所述分区键的分布式关联数组的分区;以及
从标识的所述分区获得与所述声学模型所包括的数据所针对的所述多个测试序列中的每个测试序列对应的数据。
61.根据权利要求52的系统,其中访问来自所述声学模型的对应于所述选定的测试序列的所述数据包括:访问描述与所述选定的测试序列的中央音素相对应的高斯混合模型的数据。
62.根据权利要求52的系统,其中访问所述转系文本的所述语音表达包括访问包含语境无关音素的语音表达。
63.根据权利要求52的系统,其中接收所述语音数据包括接收指示语音特性的特征向量。
64.根据权利要求52的系统,其中基于来自所述声学模型的对应于所述选定的测试序列的访问的所述数据来生成所述候选转录的所述得分包括使用不同的声学模型来调整分配给所述候选转录的得分。
65.根据权利要求52的系统,其中所述操作还包括:
从所述语音表达提取针对所述语音表达中不同于所述特定音素的第二音素的多个第二测试序列,所述多个第二测试序列中的每个第二测试序列包括围绕所述第二音素的不同的语境音素集;
接收指示所述声学模型包括针对所述多个第二测试序列中的一个或多个第二测试序列的数据的数据;以及
从所述声学模型所包括的数据所针对的所述一个或多个第二测试序列之中选择包括最高数目的语境音素的所述第二测试序列;并且
其中生成所述候选转录的所述得分包括基于来自所述声学模型的对应于所述选定的测试序列的数据和来自所述声学模型的对应于选定的第二测试序列的数据来生成所述候选转录的所述得分。
66.一种计算机实现的方法,包括:
接收语音数据和指示所述语音数据的候选转录的数据;
访问所述候选转录的语音表达;
从所述语音表达提取针对所述语音表达中的特定音素的多个测试序列,所述多个测试序列中的每个测试序列包括围绕所述特定音素的不同的语境音素集;
接收指示声学模型包括与所述多个测试序列中的一个或多个测试序列对应的数据的数据;
从所述声学模型所包括的数据所针对的所述一个或多个测试序列之中选择包括最高数目的语境音素的测试序列;
访问来自所述声学模型的对应于选定的测试序列的数据;以及
基于来自所述声学模型的对应于所述选定的测试序列的访问的数据来生成所述候选转录的得分。
67.根据权利要求66的计算机实现的方法,其中选择包括最高数目的语境音素的所述测试序列包括:选择包括少于预定最大数目的语境音素的所述测试序列之一;并且
其中基于来自所述声学模型的对应于所述选定的测试序列的所述访问的数据来生成所述候选转录的所述得分包括:
基于所述选定的测试序列包括少于所述预定最大数目的语境音素而确定处罚;以及
基于所述处罚来调整所述候选转录的第一得分从而生成经调整得分,所述经调整得分与所述第一得分相比指示所述候选转录是对所述语音数据的准确转录的更低的可能性。
68.根据权利要求67的计算机实现的方法,其中基于所述选定的测试序列包括少于所述预定最大数目的语境音素而确定所述处罚包括:基于所述选定的测试序列中语境音素的数目与所述语境音素的预定最大数目之间的差异来确定所述处罚的量值。
69.根据权利要求66的计算机实现的方法,其中提取针对所述特定音素的多个测试序列包括:提取包括所述特定音素之前和之后的非对称数目的语境音素的一个或多个非对称测试序列。
70.根据权利要求69的计算机实现的方法,其中提取针对所述特定音素的多个测试序列包括:提取包括所述特定音素之前和之后的对称数目的语境音素的一个或多个对称测试序列,每个所述对称测试序列各自包括比所述一个或多个非对称测试序列中的每个非对称测试序列更少的语境音素。
71.根据权利要求66的计算机实现的方法,其中提取针对所述特定音素的多个测试序列包括提取至少:
第一序列,其包括所述特定音素之前的一个语境音素或所述特定音素之后的一个语境音素,
第二序列,其包括所述特定音素之前的两个语境音素或所述特定音素之后的两个语境音素,以及
第三序列,其包括所述特定音素之前的三个语境音素或所述特定音素之后的三个语境音素。
72.根据权利要求66的计算机实现的方法,其中提取针对所述特定音素的多个测试序列包括提取至少五个测试序列,其中所述至少五个测试序列相应地包括出现在所述特定音素之前和之后的一个、两个、三个、四个或五个语境位置内的任何语境音素。
73.根据权利要求66的计算机实现的方法,其中接收指示所述声学模型包括针对所述多个测试序列中的所述一个或多个测试序列的数据的数据包括:
针对每个所述测试序列请求来自所述声学模型的对应于所述测试序列的数据;
接收来自所述声学模型的与所述声学模型中所存在的数据所针对的所述一个或多个测试序列中的每个测试序列对应的数据;以及
基于接收对应于所述一个或多个测试序列的所述数据而确定所述一个或多个测试序列被所述模型所识别。
74.根据权利要求66的计算机实现的方法,其中访问来自所述声学模型的对应于所述选定的测试序列的所述数据包括:
基于出现在所述多个测试序列中的每个测试序列中的音素序列来标识分区键;
标识对应于所述分区键的分布式关联数组的分区;以及
从标识的所述分区获得与所述声学模型所包括的数据所针对的所述多个测试序列中的每个测试序列对应的数据。
75.根据权利要求66的计算机实现的方法,其中访问来自所述声学模型的对应于所述选定的测试序列的所述数据包括:访问描述与所述选定的测试序列的中央音素对应的高斯混合模型的数据。
76.根据权利要求66的计算机实现的方法,其中访问所述转录的所述语音表达包括访问包含语境无关音素的语音表达。
77.根据权利要求66的计算机实现的方法,其中接收所述语音数据包括接收指示语音特性的特征向量。
78.根据权利要求66的计算机实现的方法,其中基于来自所述声学模型的对应于所述选定的测试序列的所述访问的数据来生成所述候选转录的所述得分包括使用不同的声学模型来调整分配给所述候选转录的得分。
79.根据权利要求66的计算机实现的方法,还包括:
从所述语音表达提取针对所述语音表达中不同于所述特定音素的第二音素的多个第二测试序列,所述多个第二测试序列中的每个第二测试序列包括围绕所述第二音素的不同的语境音素集;
接收指示所述声学模型包括针对所述多个第二测试序列中的一个或多个第二测试序列的数据的数据;以及
从所述声学模型所包括的数据所针对的所述一个或多个第二测试序列之中选择包括最高数目的语境音素的第二测试序列;并且
其中生成所述候选转录的所述得分包括基于来自所述声学模型的对应于所述选定的测试序列的数据和来自所述声学模型的对应于选定的第二测试序列的数据来生成所述候选转录的所述得分。
80.一种以计算机程序编码的计算机存储介质,所述程序包括指令,所述指令当由一个或多个计算机执行时使得所述一个或多个计算机执行如下操作,包括:
接收语音数据和指示所述语音数据的候选转录的数据;
访问所述候选转录的语音表达;
从所述语音表达提取针对所述语音表达中的特定音素的多个测试序列,所述多个测试序列中的每个测试序列包括围绕所述特定音素的不同的语境音素集;
接收指示声学模型包括与所述多个测试序列中的一个或多个测试序列对应的数据的数据;
从所述声学模型所包括的数据所针对的所述一个或多个测试序列之中选择包括最高数目的语境音素的测试序列;
访问来自所述声学模型的对应于选定的测试序列的数据;以及
基于来自所述声学模型的对应于所述选定的测试序列的访问的数据来生成所述候选转录的得分。
81.根据权利要求80的计算机存储介质,其中选择包括最高数目的语境音素的所述测试序列包括:选择包括少于预定最大数目的语境音素的所述测试序列之一;并且
其中基于来自所述声学模型的对应于所述选定的测试序列的所述访问的数据来生成所述候选转录的所述得分包括:
基于所述选定的测试序列包括少于所述预定最大数目的语境音素而确定处罚;以及
基于所述处罚来调整所述候选转录的第一得分从而生成经调整得分,所述经调整得分与所述第一得分相比指示所述候选转录是对所述语音数据的准确转录的更低的可能性。
82.根据权利要求81的计算机存储介质,其中基于所述选定的测试序列包括少于所述预定最大数目的语境音素而确定所述处罚包括:基于所述选定的测试序列中语境音素的数目与所述语境音素的预定最大数目之间的差异来确定所述处罚的量值。
83.根据权利要求80的计算机存储介质,其中提取针对所述特定音素的多个测试序列包括:提取包括所述特定音素之前和之后的非对称数目的语境音素的一个或多个非对称测试序列。
84.根据权利要求83的计算机存储介质,其中提取针对所述特定音素的多个测试序列包括:提取包括所述特定音素之前和之后的对称数目的语境音素的一个或多个对称测试序列,每个所述对称测试序列各自包括比所述一个或多个非对称测试序列中的每个非对称测试序列更少的语境音素。
85.根据权利要求80的计算机存储介质,其中提取针对所述特定音素的多个测试序列包括提取至少:
第一序列,其包括所述特定音素之前的一个语境音素或所述特定音素之后的一个语境音素,
第二序列,其包括所述特定音素之前的两个语境音素或所述特定音素之后的两个语境音素,以及
第三序列,其包括所述特定音素之前的三个语境音素或所述特定音素之后的三个语境音素。
86.根据权利要求80的计算机存储介质,其中提取针对所述特定音素的多个测试序列包括提取至少五个测试序列,其中所述至少五个测试序列相应地包括出现在所述特定音素之前和之后的一个、两个、三个、四个或五个语境位置内的任何语境音素。
87.根据权利要求80的计算机存储介质,其中接收指示所述声学模型包括针对所述多个测试序列中的所述一个或多个测试序列的数据的数据包括:
针对每个所述测试序列请求来自所述声学模型的对应于所述测试序列的数据;
接收来自所述声学模型的与所述声学模型中所存在的数据所针对的所述一个或多个测试序列中的每个测试序列对应的数据;以及
基于接收对应于所述一个或多个测试序列的所述数据而确定所述一个或多个测试序列被所述模型所识别。
88.根据权利要求80的计算机存储介质,其中访问来自所述声学模型的对应于所述选定的测试序列的所述数据包括:
基于出现在所述多个测试序列中的每个测试序列中的音素序列来标识分区键;
标识对应于所述分区键的分布式关联数组的分区;以及
从标识的分区中获得与所述声学模型所包括的数据所针对的所述多个测试序列中的每个测试序列对应的数据。
89.根据权利要求80的计算机存储介质,其中访问来自所述声学模型的对应于所述选定的测试序列的所述数据包括:访问描述与所述选定的测试序列的中央音素对应的高斯混合模型的数据。
90.根据权利要求80的计算机存储介质,其中访问所述转录的所述语音表达包括访问包含语境无关音素的语音表达。
91.根据权利要求80的计算机存储介质,其中接收所述语音数据包括接收指示语音特性的特征向量。
92.根据权利要求80的计算机存储介质,其中基于来自所述声学模型的对应于所述选定的测试序列的所述访问的数据来生成所述候选转录的所述得分包括使用不同的声学模型来调整分配给所述候选转录的得分。
93.根据权利要求80的计算机存储介质,其中所述操作还包括:
从所述语音表达提取针对所述语音表达中不同于所述特定音素的第二音素的多个第二测试序列,所述多个第二测试序列中的每个第二测试序列包括围绕所述第二音素的不同的语境音素集;
接收指示所述声学模型包括针对所述多个第二测试序列中的一个或多个第二测试序列的数据的数据;以及
从所述声学模型所包括的数据所针对的所述一个或多个第二测试序列之中选择包括最高数目的语境音素的第二测试序列;并且
其中生成所述候选转录的所述得分包括基于来自所述声学模型的对应于所述选定的测试序列的数据和来自所述声学模型的对应于选定的第二测试序列的数据来生成所述候选转录的所述得分。
CN201280031754.2A 2011-06-30 2012-06-29 使用可变长度语境的语音识别 Active CN103650033B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161503334P 2011-06-30 2011-06-30
US61/503,334 2011-06-30
US201261608753P 2012-03-09 2012-03-09
US61/608,753 2012-03-09
PCT/US2012/045039 WO2013003772A2 (en) 2011-06-30 2012-06-29 Speech recognition using variable-length context

Publications (2)

Publication Number Publication Date
CN103650033A true CN103650033A (zh) 2014-03-19
CN103650033B CN103650033B (zh) 2016-10-26

Family

ID=46489493

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280031754.2A Active CN103650033B (zh) 2011-06-30 2012-06-29 使用可变长度语境的语音识别

Country Status (5)

Country Link
US (2) US8959014B2 (zh)
EP (2) EP2851895A3 (zh)
KR (1) KR101780760B1 (zh)
CN (1) CN103650033B (zh)
WO (1) WO2013003772A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108039168A (zh) * 2017-12-12 2018-05-15 科大讯飞股份有限公司 声学模型优化方法及装置
CN111354340A (zh) * 2018-12-20 2020-06-30 北京嘀嘀无限科技发展有限公司 数据标注准确度验证方法、装置、电子设备及存储介质
CN115376491A (zh) * 2022-07-06 2022-11-22 北京数美时代科技有限公司 一种语音置信度计算方法、系统、电子设备及介质

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9653070B2 (en) * 2012-12-31 2017-05-16 Intel Corporation Flexible architecture for acoustic signal processing engine
US8494853B1 (en) * 2013-01-04 2013-07-23 Google Inc. Methods and systems for providing speech recognition systems based on speech recordings logs
EP2948943B1 (en) * 2013-01-22 2021-08-25 Interactive Intelligence, INC. False alarm reduction in speech recognition systems using contextual information
US9646605B2 (en) * 2013-01-22 2017-05-09 Interactive Intelligence Group, Inc. False alarm reduction in speech recognition systems using contextual information
US9171542B2 (en) 2013-03-11 2015-10-27 Nuance Communications, Inc. Anaphora resolution using linguisitic cues, dialogue context, and general knowledge
US9269354B2 (en) * 2013-03-11 2016-02-23 Nuance Communications, Inc. Semantic re-ranking of NLU results in conversational dialogue applications
US9361884B2 (en) * 2013-03-11 2016-06-07 Nuance Communications, Inc. Communicating context across different components of multi-modal dialog applications
US9761225B2 (en) 2013-03-11 2017-09-12 Nuance Communications, Inc. Semantic re-ranking of NLU results in conversational dialogue applications
US9734820B2 (en) 2013-11-14 2017-08-15 Nuance Communications, Inc. System and method for translating real-time speech using segmentation based on conjunction locations
US9858919B2 (en) * 2013-11-27 2018-01-02 International Business Machines Corporation Speaker adaptation of neural network acoustic models using I-vectors
US9837070B2 (en) * 2013-12-09 2017-12-05 Google Inc. Verification of mappings between phoneme sequences and words
US8862467B1 (en) 2013-12-11 2014-10-14 Google Inc. Contextual speech recognition
US9858922B2 (en) 2014-06-23 2018-01-02 Google Inc. Caching speech recognition scores
US10472305B2 (en) * 2014-08-06 2019-11-12 Bp Corporation North America Inc. Heat integration in disproportionation or transalkylation processes
US9299347B1 (en) 2014-10-22 2016-03-29 Google Inc. Speech recognition using associative mapping
US10467220B2 (en) * 2015-02-19 2019-11-05 Medidata Solutions, Inc. System and method for generating an effective test data set for testing big data applications
WO2016132282A1 (en) * 2015-02-20 2016-08-25 Tata Consultancy Services Limited Anomaly detection system and method
WO2016134782A1 (en) * 2015-02-26 2016-09-01 Longsand Limited Obfuscating training data
CN106205601B (zh) * 2015-05-06 2019-09-03 科大讯飞股份有限公司 确定文本语音单元的方法及系统
US10503764B2 (en) * 2015-06-01 2019-12-10 Oath Inc. Location-awareness search assistance system and method
GB2544070B (en) * 2015-11-04 2021-12-29 The Chancellor Masters And Scholars Of The Univ Of Cambridge Speech processing system and method
WO2017086987A1 (en) * 2015-11-20 2017-05-26 Hewlett Packard Enterprise Development Lp In-memory data shuffling
US10744748B2 (en) * 2016-02-29 2020-08-18 The Industry & Academic Cooperation In Chungnam National University (Iac) Micro nanoporous membrane, preparing method thereof and microfluidic device using thereof
JP6495850B2 (ja) * 2016-03-14 2019-04-03 株式会社東芝 情報処理装置、情報処理方法、プログラムおよび認識システム
TWI610294B (zh) * 2016-12-13 2018-01-01 財團法人工業技術研究院 語音辨識系統及其方法、詞彙建立方法與電腦程式產品
KR102399535B1 (ko) 2017-03-23 2022-05-19 삼성전자주식회사 음성 인식을 위한 학습 방법 및 장치
US10446138B2 (en) 2017-05-23 2019-10-15 Verbit Software Ltd. System and method for assessing audio files for transcription services
US10867609B2 (en) * 2018-05-18 2020-12-15 Sorenson Ip Holdings, Llc Transcription generation technique selection
US11437025B2 (en) * 2018-10-04 2022-09-06 Google Llc Cross-lingual speech recognition
US11011156B2 (en) * 2019-04-11 2021-05-18 International Business Machines Corporation Training data modification for training model
US10614800B1 (en) * 2019-08-19 2020-04-07 Voicify, LLC Development of voice and other interaction applications
US11508365B2 (en) 2019-08-19 2022-11-22 Voicify, LLC Development of voice and other interaction applications
US10762890B1 (en) 2019-08-19 2020-09-01 Voicify, LLC Development of voice and other interaction applications
US11217245B2 (en) 2019-08-29 2022-01-04 Sony Interactive Entertainment Inc. Customizable keyword spotting system with keyword adaptation
US11488581B1 (en) * 2019-12-06 2022-11-01 Amazon Technologies, Inc. System and method of providing recovery for automatic speech recognition errors for named entities
US11657799B2 (en) * 2020-04-03 2023-05-23 Microsoft Technology Licensing, Llc Pre-training with alignments for recurrent neural network transducer based end-to-end speech recognition

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5625749A (en) * 1994-08-22 1997-04-29 Massachusetts Institute Of Technology Segment-based apparatus and method for speech recognition by analyzing multiple speech unit frames and modeling both temporal and spatial correlation
CN1211026A (zh) * 1997-09-05 1999-03-17 中国科学院声学研究所 汉语普通话大词汇连续语音识别技术
CN1233803A (zh) * 1998-04-29 1999-11-03 松下电器产业株式会社 利用判定树生成拼写单词的发音和对其评分的方法和设备
US20020087314A1 (en) * 2000-11-14 2002-07-04 International Business Machines Corporation Method and apparatus for phonetic context adaptation for improved speech recognition

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4819271A (en) 1985-05-29 1989-04-04 International Business Machines Corporation Constructing Markov model word baseforms from multiple utterances by concatenating model sequences for word segments
US4759068A (en) * 1985-05-29 1988-07-19 International Business Machines Corporation Constructing Markov models of words from multiple utterances
US4817156A (en) 1987-08-10 1989-03-28 International Business Machines Corporation Rapidly training a speech recognizer to a subsequent speaker given training data of a reference speaker
US5033087A (en) * 1989-03-14 1991-07-16 International Business Machines Corp. Method and apparatus for the automatic determination of phonological rules as for a continuous speech recognition system
US5268990A (en) 1991-01-31 1993-12-07 Sri International Method for recognizing speech using linguistically-motivated hidden Markov models
JPH0772840B2 (ja) * 1992-09-29 1995-08-02 日本アイ・ビー・エム株式会社 音声モデルの構成方法、音声認識方法、音声認識装置及び音声モデルの訓練方法
GB9223066D0 (en) 1992-11-04 1992-12-16 Secr Defence Children's speech training aid
US5729656A (en) * 1994-11-30 1998-03-17 International Business Machines Corporation Reduction of search space in speech recognition using phone boundaries and phone ranking
US6038533A (en) 1995-07-07 2000-03-14 Lucent Technologies Inc. System and method for selecting training text
JP2871561B2 (ja) 1995-11-30 1999-03-17 株式会社エイ・ティ・アール音声翻訳通信研究所 不特定話者モデル生成装置及び音声認識装置
US5937384A (en) 1996-05-01 1999-08-10 Microsoft Corporation Method and system for speech recognition using continuous density hidden Markov models
US5758024A (en) * 1996-06-25 1998-05-26 Microsoft Corporation Method and system for encoding pronunciation prefix trees
US6151575A (en) * 1996-10-28 2000-11-21 Dragon Systems, Inc. Rapid adaptation of speech models
US6108627A (en) * 1997-10-31 2000-08-22 Nortel Networks Corporation Automatic transcription tool
US5953701A (en) 1998-01-22 1999-09-14 International Business Machines Corporation Speech recognition models combining gender-dependent and gender-independent phone states and using phonetic-context-dependence
US6141641A (en) 1998-04-15 2000-10-31 Microsoft Corporation Dynamically configurable acoustic model for speech recognition system
US6243680B1 (en) * 1998-06-15 2001-06-05 Nortel Networks Limited Method and apparatus for obtaining a transcription of phrases through text and spoken utterances
CA2748396A1 (en) 1999-10-19 2001-04-26 Sony Electronics Inc. Natural language interface control system
US7310600B1 (en) * 1999-10-28 2007-12-18 Canon Kabushiki Kaisha Language recognition using a similarity measure
US7085720B1 (en) * 1999-11-05 2006-08-01 At & T Corp. Method for task classification using morphemes
US6681206B1 (en) * 1999-11-05 2004-01-20 At&T Corporation Method for generating morphemes
DE10040063A1 (de) 2000-08-16 2002-02-28 Philips Corp Intellectual Pty Verfahren zur Zuordnung von Phonemen
US20020087317A1 (en) * 2000-12-29 2002-07-04 Lee Victor Wai Leung Computer-implemented dynamic pronunciation method and system
US7113903B1 (en) * 2001-01-30 2006-09-26 At&T Corp. Method and apparatus for providing stochastic finite-state machine translation
US7035789B2 (en) 2001-09-04 2006-04-25 Sony Corporation Supervised automatic text generation based on word classes for language modeling
US6985861B2 (en) 2001-12-12 2006-01-10 Hewlett-Packard Development Company, L.P. Systems and methods for combining subword recognition and whole word recognition of a spoken input
US20050256715A1 (en) 2002-10-08 2005-11-17 Yoshiyuki Okimoto Language model generation and accumulation device, speech recognition device, language model creation method, and speech recognition method
US7467087B1 (en) * 2002-10-10 2008-12-16 Gillick Laurence S Training and using pronunciation guessers in speech recognition
US7149688B2 (en) 2002-11-04 2006-12-12 Speechworks International, Inc. Multi-lingual speech recognition with cross-language context modeling
KR100486735B1 (ko) 2003-02-28 2005-05-03 삼성전자주식회사 최적구획 분류신경망 구성방법과 최적구획 분류신경망을이용한 자동 레이블링방법 및 장치
US7650331B1 (en) 2004-06-18 2010-01-19 Google Inc. System and method for efficient large-scale data processing
JP4301102B2 (ja) * 2004-07-22 2009-07-22 ソニー株式会社 音声処理装置および音声処理方法、プログラム、並びに記録媒体
US20060031069A1 (en) * 2004-08-03 2006-02-09 Sony Corporation System and method for performing a grapheme-to-phoneme conversion
US7584098B2 (en) 2004-11-29 2009-09-01 Microsoft Corporation Vocabulary-independent search of spontaneous speech
EP2527990B1 (en) 2006-02-17 2020-01-15 Google LLC Using distributed models for machine translation
JP4997601B2 (ja) 2006-11-30 2012-08-08 独立行政法人産業技術総合研究所 音声データ検索用webサイトシステム
JP5229216B2 (ja) 2007-02-28 2013-07-03 日本電気株式会社 音声認識装置、音声認識方法及び音声認識プログラム
US7831587B2 (en) * 2007-05-10 2010-11-09 Xerox Corporation Event hierarchies and memory organization for structured data retrieval
US8620662B2 (en) * 2007-11-20 2013-12-31 Apple Inc. Context-aware unit selection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5625749A (en) * 1994-08-22 1997-04-29 Massachusetts Institute Of Technology Segment-based apparatus and method for speech recognition by analyzing multiple speech unit frames and modeling both temporal and spatial correlation
CN1211026A (zh) * 1997-09-05 1999-03-17 中国科学院声学研究所 汉语普通话大词汇连续语音识别技术
CN1233803A (zh) * 1998-04-29 1999-11-03 松下电器产业株式会社 利用判定树生成拼写单词的发音和对其评分的方法和设备
US20020087314A1 (en) * 2000-11-14 2002-07-04 International Business Machines Corporation Method and apparatus for phonetic context adaptation for improved speech recognition

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108039168A (zh) * 2017-12-12 2018-05-15 科大讯飞股份有限公司 声学模型优化方法及装置
CN108039168B (zh) * 2017-12-12 2020-09-11 科大讯飞股份有限公司 声学模型优化方法及装置
CN111354340A (zh) * 2018-12-20 2020-06-30 北京嘀嘀无限科技发展有限公司 数据标注准确度验证方法、装置、电子设备及存储介质
CN115376491A (zh) * 2022-07-06 2022-11-22 北京数美时代科技有限公司 一种语音置信度计算方法、系统、电子设备及介质
CN115376491B (zh) * 2022-07-06 2023-08-18 北京数美时代科技有限公司 一种语音置信度计算方法、系统、电子设备及介质

Also Published As

Publication number Publication date
KR20140041735A (ko) 2014-04-04
US20130006623A1 (en) 2013-01-03
EP2851895A3 (en) 2015-05-06
EP2851895A2 (en) 2015-03-25
KR101780760B1 (ko) 2017-10-10
EP2727103B1 (en) 2014-12-31
US8959014B2 (en) 2015-02-17
CN103650033B (zh) 2016-10-26
US20130006612A1 (en) 2013-01-03
WO2013003772A2 (en) 2013-01-03
US8494850B2 (en) 2013-07-23
EP2727103A2 (en) 2014-05-07
WO2013003772A3 (en) 2013-02-28

Similar Documents

Publication Publication Date Title
CN103650033A (zh) 使用可变长度语境的语音识别
US11646019B2 (en) Minimum word error rate training for attention-based sequence-to-sequence models
US11676579B2 (en) Deep learning internal state index-based search and classification
CN110033760B (zh) 语音识别的建模方法、装置及设备
EP2453436B1 (en) Automatic language model update
US9336771B2 (en) Speech recognition using non-parametric models
CN101076851B (zh) 口语识别系统以及用于训练和操作该系统的方法
US8374865B1 (en) Sampling training data for an automatic speech recognition system based on a benchmark classification distribution
CN110517693B (zh) 语音识别方法、装置、电子设备和计算机可读存储介质
US20050010412A1 (en) Phoneme lattice construction and its application to speech recognition and keyword spotting
CA2486128C (en) System and method for using meta-data dependent language modeling for automatic speech recognition
CN107437417B (zh) 基于循环神经网络语音识别中语音数据增强方法及装置
US10096317B2 (en) Hierarchical speech recognition decoder
US10872601B1 (en) Natural language processing
CN1391211A (zh) 对识别系统中的参数进行训练的方法和系统
US7953594B2 (en) Speech recognition method and apparatus using lexicon group tree
Thomson et al. N-best error simulation for training spoken dialogue systems
Yusuf et al. Low resource keyword search with synthesized crosslingual exemplars
US10402492B1 (en) Processing natural language grammar
CN109273004A (zh) 基于大数据的预测性语音识别方法及装置
Ma et al. Finding speaker identities with a conditional maximum entropy model
Tian et al. On text-based language identification for multilingual speech recognition systems
CN114783413A (zh) 重打分语言模型训练和语音识别方法、装置、系统及设备
CN115620725A (zh) 语音识别系统的优化方法、电子设备和存储介质
CA2507260A1 (en) Device and method of predicting symbols in correlated symbol sequences

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Google limited liability company

Address before: American California

Patentee before: Google Inc.

CP01 Change in the name or title of a patent holder