CN108510983B - 用于序列标注的自动单元选择和目标分解的***和方法 - Google Patents
用于序列标注的自动单元选择和目标分解的***和方法 Download PDFInfo
- Publication number
- CN108510983B CN108510983B CN201810160192.0A CN201810160192A CN108510983B CN 108510983 B CN108510983 B CN 108510983B CN 201810160192 A CN201810160192 A CN 201810160192A CN 108510983 B CN108510983 B CN 108510983B
- Authority
- CN
- China
- Prior art keywords
- gram
- word
- ctc
- computer
- loss function
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000000354 decomposition reaction Methods 0.000 title abstract description 30
- 238000007635 classification algorithm Methods 0.000 claims abstract description 9
- 238000012549 training Methods 0.000 claims description 57
- 238000010276 construction Methods 0.000 claims description 30
- 230000015572 biosynthetic process Effects 0.000 claims description 23
- 238000005755 formation reaction Methods 0.000 claims description 23
- 238000013518 transcription Methods 0.000 claims description 18
- 230000035897 transcription Effects 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 12
- 239000000470 constituent Substances 0.000 claims description 11
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 230000000306 recurrent effect Effects 0.000 claims description 9
- 230000002123 temporal effect Effects 0.000 claims description 9
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000007704 transition Effects 0.000 claims description 4
- 230000002441 reversible effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 210000005266 circulating tumour cell Anatomy 0.000 abstract description 24
- 230000006870 function Effects 0.000 description 29
- 238000002474 experimental method Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000013519 translation Methods 0.000 description 6
- 239000012634 fragment Substances 0.000 description 5
- 210000004027 cell Anatomy 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000000670 limiting effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241001672694 Citrus reticulata Species 0.000 description 1
- 210000004460 N cell Anatomy 0.000 description 1
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 235000009499 Vanilla fragrans Nutrition 0.000 description 1
- 244000263375 Vanilla tahitensis Species 0.000 description 1
- 235000012036 Vanilla tahitensis Nutrition 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 235000008790 seltzer Nutrition 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/04—Segmentation; Word boundary detection
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/187—Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/197—Probabilistic grammars, e.g. word n-grams
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0631—Creating reference templates; Clustering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0635—Training updating or merging of old and new templates; Mean values; Weighting
- G10L2015/0636—Threshold criteria for the updating
Landscapes
- Engineering & Computer Science (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)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Machine Translation (AREA)
Abstract
本文中描述了用于序列标注的自动单元选择和目标分解的***和方法。实施例包括一种新的损失函数,被称为Gram链结式时间分类算法(CTC)损失函数,这种损失函数扩展了流行的CTC损失函数标准以减轻以前的限制。在保留CTC优势的同时,Gram‑CTC自动学习最佳的基本单元(构词)集,以及最适合的目标序列分解。与CTC不同的是,Gram‑CTC的实施例允许模型在每个时间步输出可变数量的字符,这使得模型能够捕获更长期的依赖性并提高计算效率。还表明,Gram‑CTC的实施例在多种数据规模下的大型词汇表语音识别任务方面的性能和效率方面均改进了CTC,并且采用Gram‑CTC的实施例的***能够在标准语音基准上表现优于现有技术。
Description
相关申请的交叉引用
本申请根据美国法典第35条119(e)款要求于2017年2月24日提交的、标题为“用于序列标注的自动单元选择和目标分解的***和方法(SYSTEMS AND METHODS FORAUTOMATIC UNIT SELECTION AND TARGET DECOMPOSITION FOR SEQUENCE LABELING)”、将Hair Hair Liu、Zhenyao Zhu和Sanjeev Satheesh列为发明人的、美国临时专利申请序列号为62/463,503(案卷号28888-2107P)的文献的优先权。上述专利文献的全部内容通过引用并入本文。
技术领域
本公开总体上涉及可以提供改进的计算机性能、特征和用途的用于计算机学习的***和方法。
背景技术
计算设备在人们的生活中扮演着越来越复杂和不可或缺的角色。有趣的是,尽管计算设备执行实质上更复杂和不同的任务,但是外行人员使用这样的计算设备所需的技能水平往往变得更简单,从而使得它们更容易为普通人群使用。为了实现提供复杂服务但以易于使用的方式提供这些服务的计算设备,要求计算设备变得更加智能。提高计算设备的学习能力,使得其能够提供更稳健的服务,并为人们提供更容易、更直观的方式与计算设备进行交互。
已配置计算设备学习的一个任务是序列预测任务。大多数现有的序列标注模型依赖于将目标序列固定分解成一系列基本单元。这些方法至少有两个主要的缺点:1)基本单元的集合是固定的,诸如语音识别中的单词、字符或音素的集合;和2)目标序列的分解是固定的。这些缺点通常导致建模序列的次优性能。
因此,所需要的是允许自动单元选择和目标分解以供序列标注的***和方法,通过这些***和方法改进了计算设备的功能和用途。这样的***和方法可以用于提供或改进计算设备服务,举例来说,诸如自动语音识别(ASR)、手写识别、机器翻译和图像描述,这进而有助于改进计算设备的性能、用途以及与其的交互。
发明内容
本公开的实施方式提供用于训练用于语音转录的转录模型的计算机实现的方法、训练用于语音转录的循环神经网络(RNN)模型的计算机实现的方法和包括一个或多个指令序列的非临时性计算机可读介质或媒质。
在本公开的一个方面中,训练用于语音转录的转录模型的计算机实现的方法包括:将一系列话语输入到所述转录模型中,其中所述一系列话语和相关联的标签采样自训练集;建立包括一元构词和高阶构词的构词集;采用跨步来处理输入的一系列话语,其中步长大小取决于所述构词集的最大构词;从所述转录模型为所述一系列话语中的每个话语预测一个或多个单元,所述一个或多个单元选自建立的构词集;以及实施Gram链结式时间分类算法(Gram-CTC)损失函数以测量针对给定所述相关联的标签的每个话语所预测的一个或多个单元的误差,所述Gram-CTC损失函数自动选择有用的构词并用所选择的构词分解所述输入的一系列话语,所述Gram-CTC损失函数的实施涉及正向反向转换;计算所述损失函数相对于所述转录模型的参数的导数;以及使用所述导数通过反向传播来更新所述转录模型。
在本公开的一个方面中,训练用于语音转录的循环神经网络(RNN)模型的计算机实现的方法包括:向所述RNN模型输入多个话语和相关联的标签,其中所述多个话语和相关联的标签采样自训练集,所述RNN模型包括一个或多个卷积层和一个或多个递归层;通过所述RNN模型的所述一个或多个递归层,预测建立的构词集当中的一个或多个单元;获得所述RNN模型的输出层中的所预测的单元的概率分布;以及实施Gram链结式时间分类算法(Gram-CTC)损失函数以测量针对给定所述相关联的标签的所述多个话语所预测的单元的误差,所述Gram-CTC损失函数自动选择有用的构词,并用所选择的构词分解所述话语;计算所述损失函数相对于所述RNN模型的参数的导数;以及使用所述导数通过反向传播来更新所述RNN模型。
在本公开的一个方面中,提供了一种包括一个或多个指令序列的非临时性计算机可读介质或媒质,所述一个或多个指令序列在由一个或多个微处理器执行时使得执行以下步骤,包括:接收多个话语序列,其中每个话语序列和相关联的标签采样自训练集;将对应于所述话语序列的预测的单元的概率分布输出到Gram链结式时间分类算法(Gram-CTC)损失函数;所述Gram-CTC损失函数自动在一元构词和选择的高阶构词之中选择有用的构词,以用所选择的构词分解所述话语序列;以及实施Gram-CTC损失函数算法以测量针对给定所述相关联的标签的每个话语所预测的一个或多个字符的误差,所述Gram-CTC损失函数的实施涉及正向反向转换。
附图说明
将参考本发明的实施例,在附图中可示出这些示例。这些图旨在说明性的而非限制性的。尽管在这些实施例的上下文中总体描述了本发明,但是应理解,并非旨在将本发明的范围限于这些特定的实施例。图中的项目不是按比例的。
图示(“图”)1描绘了根据本公开的实施例的标签‘CAT’的状态和正向反向转换的图解。
图2描绘了根据本公开的实施例的用于迭代构词选择的方法。
图3(a)比较了根据本专利文件的实施例的自动构词(gram)精化之前(305)和之后(310)的训练曲线。
图3(b)描绘了根据本专利文件的实施例的具有和不具有联合训练的模型的训练曲线。
图3(c)描绘了根据本公开的实施例的典型的联合训练模型架构。
图4描绘了根据本公开的实施例的利用CTC、Gram-CTC或两者的加权组合进行端对端训练的模型结构。
图5描绘了根据本公开的实施例的利用Gram-CTC函数训练深度学习模型的方法。
图6描绘了根据本公开的实施例的对来自Switchboard数据集的话语执行的CTC和Gram-CTC实施例的最大解码结果(无折叠)。
图7描绘了根据本文件的实施例的计算设备/信息处理***的简化框图。
具体实施方式
在以下描述中,出于解释的目的,阐述了具体细节以便理解本发明。然而,对于本领域技术人员显而易见的是,可以在没有这些细节的情况下实践本发明。另外,本领域技术人员将认识到,下面描述的本发明的实施例可以以各种方式来实现,诸如通过过程、装置、***、设备或有形计算机可读介质上的方法来实现。
图中所示的组件或模块是对本发明的示例性实施例的说明,意在避免使本发明模糊。还应当理解,在整个讨论中,可能将组件描述为分离的功能单元,这些功能单元可能包括子单元,但是本领域技术人员将认识到,各种组件或其部分可以分成单独的组件或者可以集成在一起,包括集成在单一的***或组件内。应当注意,本文中讨论的功能或操作可以实现为组件。组件可以在软件、硬件或其组合中实现。
另外,附图中组件或***之间的连接并不旨在限于直接连接。相反,中间组件可以修改、重新格式化或者以其他方式改变这些组件之间的数据。此外,可以使用更多或更少的连接。还应当注意,术语“耦合”、“连接”或“通信地耦合”应理解为包括直接连接、通过一个或多个中间设备的间接连接,以及无线连接。
在说明书中对“一个实施例”、“优选实施例”,“实施例”或“多个实施例”的引用意味着结合该实施例描述的特定特征、结构、特性或功能包括在本发明的至少一个实施例中并且可以包括在多于一个实施例中。此外,说明书中各处出现的上述短语不一定都指相同的一个或多个实施例。
说明书中各处使用的某些术语仅用于说明,不应解释为限制。服务、功能或资源不限于单个服务、功能或资源;使用这些术语可以指相关服务、功能或资源的分组,这些服务、功能或资源可能是分布或聚合的。
术语“包括”和“包含”应理解为开放式术语,后面的任何列表都是示例,并不意在限于所列出的项目。本文中使用的任何标题仅用于组织目的,不应用来限制说明书或权利要求书的范围。本专利文件中提及的每个参考文献均通过引用整体并入本文。
另外,本领域技术人员应认识到:(1)可以可选地执行某些步骤;(2)步骤可以不限于本文中列出的特定顺序;(3)某些步骤可以以不同的顺序执行;(4)某些步骤可以同时进行。
A.引言
近年来,对序列预测任务的兴趣激增。链结式时间分类算法(CTC)损失和序列到序列(序列到序列)模型为多种应用提供了强大的方法,如自动语音识别(ASR)、机器翻译和解析。这些方法可以基于:1)固定和精心挑选的一组基本单元,如单词、音素或字符;和2)将目标序列固定地和预定地分解成这些基本单元。虽然这两个前提大大简化了问题,尤其是训练过程,但它们也是严格和不必要的约束,通常导致次优的解决方案。CTC模型尤其受到目标空间中固定的基本单元的不利影响,因为它们建立在该空间中连续输出之间的独立性假设上,这是一个在实践中经常被违反的假设。
固定的基本单元集的问题之一是,事先确定最佳的基本单元集是非常困难的,如果不是不可能的话。例如,在英语ASR中,如果使用单词作为基本单元,则必须处理大型词汇表的softmax函数,以及罕见单词和数据稀疏性问题。另一方面,如果使用字符作为基本单元,则模型被迫学习英语拼写和发音的复杂规则。例如,声音“oh”可以用以下任何一种方式来拼写,具体取决于它出现的单词:{o,oa,oe,ow,ough,eau,oo,ew}。虽然CTC可以容易地将经常共同出现的构词模型化在一起,但是当转录看不见的单词时,不可能赋予许多可能的拼写以相等的概率。一些语音识别***模型化音素、子音素单元和多元音素(senone)来解决这些问题。类似地,一些最先进的神经机器翻译***使用预先分割的单词片段,旨在发现两种情况下均最佳的组合。
实际上,对于许多任务来说,字符组通常是粘结单元。对于ASR任务,可以将单词分解为可以与声音相关联的字符组(如‘tion’和‘eaux’)。对于机器翻译任务,将单词分解为根词和扩展词可能有价值(从而可以在‘paternal’与‘paternity’之间明确地共享意义)。由于在训练数据中已可获得这种信息,因此让模型自行解决可能更好。同时,又出现另一个重要问题:如何将目标序列分解为基本单元?这与基本单元自动选择的问题相关联,因此也最好让模型确定。最近,在序列到序列框架下在这些方向上有一些有趣的尝试。例如,已经提出了潜在序列分解,来根据输入序列和输出序列两者函数对具有可变长度单元的目标序列进行分解。
本文提供的是Gram-CTC的实施例---Gram-CTC可以认为是CTC的严格来说更一般的版本的---以自动从训练数据中寻找最佳的称为构词(gram)的基本单元的集合,并自动将目标序列分解为构词序列。就像交叉熵训练的序列预测可以看作是具有固定对齐的CTC损失的特例一样,CTC可以看作是具有固定的目标序列分解的Gram-CTC的特例。由于它是一种损失函数,因此它可以应用于许多序列到序列任务,使得能够自动选择构词和分解目标序列,而无需修改底层网络。针对多种规模的数据的广泛实验验证了Gram-CTC的实施例能够在性能和效率方面改进CTC,并且使用Gram-CTC,模型在标准语音基准上表现优于现有技术。
B.相关工作
以前用于文本预测任务(例如,自动语音识别、手写识别、机器翻译和图像字幕)的基本文本单元通常可以分为两类:人工制作的和基于学习的。
1.人工制作的基本单元
固定集合的字符(字形)集、单词片段、单词和音素已被广泛用作文本预测的基本单元,但它们都有缺点。
-分词模型移除了学习拼写的组件,从而允许旨在减少词错误率(WER)的直接优化。然而,这些模型可能因为需要处理大型词汇表、超出词汇表单词和数据稀疏问题而受到影响。
-使用字符带来更小的词汇表(例如,英语为26,中文为数千),但与使用单词或单词片段相比,它需要长得多的上下文,并对将字符组成单词提出了挑战,这对于像英语这样的语言来说噪声很大。
-单词片段处于单词与字符的中间位置,在词汇表大小与上下文大小之间提供了一个良好的平衡点,而使用单词片段的性能对单词片段集的选择及其分解非常敏感。
-对于ASR任务来说,使用音素在过去的几十年中很流行,因为它使语音建模变得容易,并且已报告用音素模型取得了良好的结果。然而,它引入了在解码期间将音素映射到单词的不确定性,这对于重音语音数据变得不太稳健。
使用这些前面提到的对文本序列的固定的确定性分解定义了一个先验,对于端到端学习来说这不一定是最优的。
2.基于学习的基本单元
最近,已经尝试学***上翻译和查询罕见单词的字符组成。已经提出了潜在序列分解框架以根据输入序列和输出序列两者的函数来分解具有可变长度的基本单元的目标序列。
C.Gram-CTC的实施例
在这一节中,提供了所提出的Gram-CTC算法的实施例。
1.CTC
CTC是序列到序列学习中非常流行的一种方法,因为它不需要输入与输出之间的对齐信息,而获得对齐信息通常是昂贵的,如果不是不可能的话。
由于没有对齐信息,CTC使所有可能的对齐变得不再重要。也就是说,它试图最大化p(l|x)=∑πp(π|x),其中x是输入,π表示有效的对齐。例如,如果输入的大小是3,而输出是‘hi’,其长度是2,则有三种可能的对齐,‘-hi’、‘h-i’和‘hi-’,其中‘-’表示空白。
2.从CTC到Gram-CTC
在CTC中,基本单元是固定的,这在某些应用中可能是不可取的。在本公开中,通过考虑一系列称为构词的基本单元来一般化CTC,这在许多应用中通常是更可取的。
令G为目标序列的基本单元集C的n元构词,τ为G中最长的构词的长度。Gram-CTC网络具有包含|G|+1个单元的softmax输出层,即G中所有的构词和一个附加符号,空白,的概率。
为了简化问题,可以假定这是因为如果那么对于一些目标序列来说没有有效分解。由于Gram-CTC将在训练过程中找出目标序列的理想的构词分解,这个条件是无害的,并且保证了对于每个目标序列至少有一个有效分解。
正如CTC的情况一样,这里G′T的元素可以称为路径,并将它们记为π,其中路径表示输入与输出之间可能的对齐。不同的是,对于目标序列中的每个单词,可以将其分解为不同的构词序列。例如,对于CTC(假设这里是单向CTC)来说,hello这个单词只能分解为序列[‘h’,‘e’,‘l’,‘l’,‘o’],但如果‘he’和‘ll’在G中,则它也可以分解为序列[‘he’,‘ll’,‘o’]。
在实施例中,对于每个π,使用折叠函数以与CTC相同的方式将其映射到目标序列,其中折叠函数1)从路径移除所有重复的标签,并且2)移除所有的空白。注意,本质上,是这些规则决定了图1中相邻时间步的状态之间的转换。
图1是根据本公开的实施例的标签‘CAT’的状态和正向反向转换的图解。这里G是英文字母的所有一元构词和二元构词的集合。标签l=‘CAT’的所有有效状态S的集合列在左边。原始(vanilla)(或简单)CTC和Gram-CTC两者共同的状态和转换集合是黑色的,而Gram-CTC特有的那些则是灰色的。一般来说,任何折叠回l的扩展是一个有效的转换。例如,(‘CAT’,1)可以从(‘CAT’,1),(‘CA’,2),(‘CA’,1)和(‘CA’,0)转换而来,而不可以从(‘CAT’,0)或(‘CAT’,2)转换而来。
这是一个多对一的映射,将其记为B。这里可以采用其他规则,本公开中提出的一般思想并不取决于这些特定的规则。因此,对于目标序列l,B–1(l)表示映射到l的所有路径。然后,这得到
这个等式允许在无需任何使用CTC损失的对齐信息的情况下训练序列标注模型,因为它在训练过程中使所有可能的对齐变得不再重要。Gram-CTC使用相同的效果来不仅使对齐,而且使目标序列的分解变得不再重要。
在实施例中,对于每个目标序列1,集合B–1(l)具有比在原始CTC中多O(τ2)个路径。这是因为每个时间步有O(τ)倍的有效状态,每个状态可以具有从前一个时间步中的O(τ)状态的一个有效转换。因此,原始CTC方法可以认为是Gram-CTC在G=C且τ=1时的特例。虽然算法的复杂性的二次增大是不寻常的,但可以断言,在神经网络本身占用大部分计算时间的情况下,典型神经网络的整体训练时间是微不足道的。此外,该算法一般化地扩展到任意的G,并且不需要所有可能的n元构词达到长度τ。
3.正向反向方法的实施例
为了高效地计算p(l|x),在一个实施例中,还采用动态编程方法。所有动态规划的本质是识别问题的状态,以便通过重用先前状态的解决方案来解决未来状态。在实施例中,状态包含识别不完整路径π的所有有效扩展所需的全部信息,使得折叠函数将最终使整个π折叠回l。对于Gram-CTC的实施例,这可以通过折叠路径π的除最后一个元素之外的所有元素来完成。因此,状态是一个元组(l1:i,j),其中第一项是折叠后的路径,表示目标标签序列的前缀,j∈{0,…,τ}为用于制作前缀的最后一个构词(li–j+1:i)的长度。注意,j=0是有效的,意味着使用了空白。构词li–j+1:i用表示,状态(l1:i,j)记为为了可读性,进一步将缩短为并将缩短为对于状态s,其对应的构词记为sg,sg的第一个字符和最后一个字符的位置分别记为b(s)和e(s)。在动态编程中,处理的是状态序列,对于一个状态序列,其对应的构词序列是唯一的,记为ζo。
图1部分示出了目标序列‘CAT’的动态编程过程。这里,假设G包含所有可能的一元构词和二元构词。因此,对于‘CAT’中的每个字符,有三种可能的状态与之相关联:1)当前字符,2)以当前字符结尾的二元构词,以及3)当前字符之后的空白。开头还有一个空白。总共有10个状态。
对于一个目标序列l,将任何s∈S的正向变量αt(s)定义为在时间t以状态s结束的所有有效路径前缀的总概率。
遵循这个定义,可以用以下规则进行初始化
和递归
目标序列l的总概率以下面的方式表达:
类似地,反向变量βt(s)可以定义为:
对于βt(s)的初始化和递归,可以有:
以及
4.反向传播的实施例
类似于CTC,有以下表达式:
其中lab(l,k)为相应的构词为k的S中的状态集。这是因为可能有多个状态对应于同一构词。
D.方法实施例
在这一节中,描述了在实施例实践中已经发现有助于Gram-CTC高效且有效地工作的其他技术。
1.迭代构词选择实施例
虽然Gram-CTC可以自动选择有用的构词,但用较大的G进行训练是很有挑战性的。可能构词的总数通常很大。例如,英语中有26个字符,那么二元构词的总数是262=676,三元构词的总数是263=17576,……,这个数字呈指数式增长,很快变得难以处理。然而,没有必要考虑很多显然是无用的构词,比如“aaaa”。在一些实施例中,大部分无用的构词被从巨大语料库的统计中消除。图2描绘了根据本公开的实施例的用于迭代构词选择的方法。在步骤205中,首先使用所有的一元构词和二元构词(29个一元构词和262=676个二元构词,总共705个构词)训练Gram-CTC模型。在步骤210中,训练后的模型在另一个语音数据集上解码以得到构词使用率的统计。通过在大型语音数据集上应用(解码)训练后的模型,获得构词使用率的真实统计。在步骤215中,选择使用率在阈值以上的构词。最终,选择高频构词与所有一元构词一起作为最终构词集G。也就是说,对每个构词在语料库中的频率进行计数,并且丢弃那些具有罕见频率的构词。例如,前100个二元构词和所有29个一元构词(自动精化的构词)一起用于第二轮训练。然后,在步骤220中,在所有剩余的构词上训练Gram-CTC模型。表1显示了迭代构词选择对WSJ(无LM)的影响。
表1:不同构词选择方法在“华尔街日报”(WSJ)数据集上的结果
图3(a)示出了其相应的训练曲线300。图3(a)比较了根据本专利文件的实施例的构词自动精化之前(305)和之后(310)的训练曲线。它们看起来非常相似,但是构词数在精化之后大大减少,这使得训练更快,并且由于更小的构词稀疏度而可能使训练更稳健。更多细节可以在E.2节中找到。
2.与原始CTC联合训练的实施例
在实施例中,Gram-CTC解决了分解和对齐任务,这是相对于CTC,模型更难学习的任务。这常常表现为不稳定的训练曲线,这可能迫使降低学习速率,而这进而导致模型折叠到更差的最佳值。为了克服这个困难,同时用Gram-CTC和原始CTC损失来训练模型可能有益。
典型的联合训练模型如图3(c)所示,相应的训练曲线如图3(b)(340)所示。具体而言,图3(b)描绘了根据本专利文件的实施例的具有350和不具有345联合训练的模型的训练曲线。对应于训练曲线350的模型与原始CTC一起联合训练,这样的模型在训练过程中通常更加稳定。图3(c)描绘了根据本公开的实施例的典型的联合训练模型架构380。注意,在实施例中,原始CTC损失385通常最好在比Gram-CTC损失390低几级上应用。联合训练的一些效果在下面的实验章节的表4和表5中示出。
E.实验
应当注意,这些实验和结果以说明的方式提供,并且在特定的条件下使用特定的一个或多个实施例来进行;因此,无论是这些实验还是其结果均不用于限制本专利文件的公开范围。
Gram-CTC损失的实施例在ASR任务上进行了测试,但应当注意,CTC和目前介绍的Gram-CTC都是用于其他序列标注任务的通用技术。对于所有的实验,模型说明和训练程序与Amodei等人在深度语音2:英语和普通话的端到端语音识别,arXiv预印本arXiv:1512.02595,2015中描述的实施例相同。图4示出了用于训练程序的示例性模型结构。模型400是具有2个二维卷积输入层410的循环神经网络(RNN),接着是K个正向(Fwd)或双向(Bidi)门控递归层415,每个N个单元,以及完全连接层420,之后是softmax层。简而言之,这样的模型被写成“2x2D Conv-KxN GRU”。该网络用CTC、Gram-CTC或两者的加权组合进行了端到端的训练525。前面的章节介绍了这种组合。
图5描绘了根据本公开的实施例的用Gram-CTC函数训练RNN模型的方法。
在步骤505中,将话语序列输入到循环神经网络(RNN)模型中,其中从训练集中采样话语和相关联的标签。在所有的实验中,音频数据都以16kHz采样。以10ms的跳跃大小和20ms的窗口大小来提取线性快速傅立叶变换(FFT)特征,并将其归一化以使得每个输入特征具有零均值和单位方差。网络输入因此是从0-8kHz范围的频谱幅度图,每10ms帧具有161个特征。在每个阶段,随机选择40%的话语向其中添加背景噪音。所使用的优化方法是具有涅斯捷罗夫动量的随机梯度下降。学习超参数(批大小、学习速率、动量等)在不同的数据集之间是不同的,并且通过优化保留集来针对每个模型进行调整。典型值是10–3的学习速率和0.99的动量。
1.数据和设置
华尔街日报(WSJ)。这个语料库主要包括阅读语音,带有从“华尔街日报”新闻文本的机器可读语料中提取的文本,并包含大约80个小时的语音数据。使用训练si284数据集的标准配置进行训练,dev93用于验证,eval92用于测试。这是一个相对“干净”的任务,经常用于模型原型。
Fisher-Switchboard。这是一个常用的英语会话电话语音(CTS)语料库,其中包含2300小时的CTS数据。继之前的工作之后,在NIST 2000CTS测试集上进行评估,该测试集包括Switchboard(SWB)和CallHome(CH)子集。
10K语音数据集。大规模的ASR实验在10,000小时的噪音大的内部数据集上进行。这个数据集包含从各种情景收集的语音,如不同的背景噪音、远场、不同的口音等等。由于其固有的复杂性,这是一个非常具有挑战性的任务,因此可以验证所提出的方法在实际应用中的有效性。
2.构词选择
在步骤510中,建立构词集来训练RNN模型。采用WSJ数据集来演示Gram-CTC的不同构词选择策略,因为它是一个广泛使用的数据集,而且也足够小,可以用于快速的想法验证。然而,由于它较小,由于数据稀疏的问题,无法在这里使用大构词。因此,在WSJ上自动精化的构词集对于其他较大的数据集并非最优,在较大的数据集中,可以有效地使用较大的构词,但精化的程序是相同的。
在一个实施例中,首先使用所有的一元构词和二元构词(29个一元构词和262=676个二元构词,总共705个构词)训练模型,然后用获得的模型在另一个语音数据集上对模型解码以获得构词使用率的统计。第二轮训练中使用了前100个二元构词以及所有29个一元构词(自动精化的构词)。为了便于比较,表1提供了最佳精选构词的结果以及一元构词的结果。
可以在表1中发现一些有趣的观察结果。首先,自动精化的构词的性能比所有一元构词和所有二元构词的组合要稍好一些。这可能是因为WSJ如此之小以至于构词学习在这里受到数据稀疏性问题的不利影响(类似于分词模型)。自动精化的构词只包含一个较小的二元构词子集,因此更稳健。这也是为什么在实施例中只尝试二元构词,而不包括高阶构词。其次,最佳精选的构词的表现比自动精化的构词差。这是所希望的。精选构词是费时的,特别是当考虑高阶构词时。迭代构词选择的方法不仅速度快,而且通常更好。第三,Gram-CTC在自动精化的构词上的性能只比一元构词上的CTC稍好。这是因为Gram-CTC本身很难训练,因为它需要学习分解和对齐两者。WSJ太小,无法提供足够的数据来训练Gram-CTC。
3.大步幅序列标注
在循环神经网络中使用大的全局步幅可以大大提高其整体效率,因为它有效地减少了用于循环计算的时间步,从而加快了正向推理和反向传播的过程。然而,可以使用的最大跨度受限于使用的构词集。(一元构词)CTC通常必须以高时间分辨率(小步幅)工作,以便有足够数量的帧来输出每个字符。这是非常低效的,因为已知相同的声学特征可能对应于不同长度的构词(例如,{‘i’,‘igh’,‘eye’})。构词越大,就有可能使用更大的步幅。
在步骤515中,在处理输入话语序列时采用跨步(striding),步长取决于在步骤410中建立的构词集的最大构词。在Amodei等人的深度语音2(DS2)中,在实施例中采用不重叠的二元构词输出以允许在卷积中有更大的步幅。这就强加了一个人为的约束,迫使模型不仅要学习每个单词的拼写,而且要学习如何将单词拆分成二元构词。例如,在实施例中,part被拆分为[pa,rt],但是单词apart被迫分解为[ap,ar,t]。Gram-CTC通过允许模型将单词分解成更大的单元、分解成最方便或有意义的分解而去除了这一约束。比较结果显示,这种改变使得Gram-CTC工作起来比二元构词CTC好得多,如表2所示。
表2:不同模型步幅下的性能
在表2中,在两个步幅2和4上比较训练后模型的性能和训练效率。对于Gram-CTC,使用来自前一节的自动精化的构词集。正如预期的那样,与步幅2相比,使用步幅4几乎将每个阶段的训练时间减半。从步幅2到步幅4,一元构词CTC的性能迅速下降。这是因为小构词本身就需要更高的时间分辨率。至于Gram-CTC,从步幅2到步幅4,其性能略有下降,尽管在使用其他数据集的实验中,Gram-CTC在步幅4时更好。一个可能的解释是,WSJ太小,Gram-CTC无法很好地学习大构词。相比之下,二元构词CTC的性能在两种步幅下都不是那么好。
4.解码示例
在步骤520中,RNN模型为输入话语序列的每个话语输出一个或多个预测的字符。该一个或多个预测的字符选自所建立的构词集。在步骤525中,实现链结式时间分类算法(CTC)损失函数以获得为给定相关联的标签的每个话语的预测的一个或多个字符的损失。CTC损失函数实现涉及正向反向转换,如图1、C.1节和C.2节所述。然后使用获得的损失来计算损失相对于RNN模型参数的导数,并通过反向传播来更新RNN模型,这在C.3中进行了描述。
图6示出了根据本专利文件的实施例的针对9个话语的CTC和Gram-CTC实施例的解码结果600。在每个时间步,预测的字符(通过CTC)或构词(通过Gram-CTC)用“|”分隔。由于Gram-CTC模型是用CTC模型的双倍步幅来训练的,因此为了更好地观察,将构词置于字符的双倍宽度。“_”表示空白。
在所描绘的实施例中,为CTC设置的标签是所有字符的集合,为Gram-CTC设置的标签是包含所有一元构词和一些高频率高阶构词的自动精化的构词集。在所描绘的实施例中,Gram-CTC使用步幅4,而CTC使用步幅2。从图6中可以发现:
1)Gram-CTC确实自动发现了许多直观和有意义的构词,如‘the’、‘ng’和‘are’。
2)它也把句子分解成在发音上有意义的片段。这种分解类似于语音分解,但是粒度更大并且可能更自然。
3)由于Gram-CTC每次预测一块字符(构词),所以每次预测使用更大的上下文,并且这些预测块中的这些字符是依赖性的,因此可能更准确。一个例子是图6中最后一句中的‘will’一词。
4)由于网络的输出是所有的构词的概率,因此解码过程几乎与CTC相同,仍然是端到端的。这使得这种分解优于语音分解。
总之,Gram-CTC结合了针对字符的CTC和针对音素的CTC的优点。
5.与其他方法的比较
a)WSJ数据集
这里使用的模型是带有CTC或者Gram-CTC损失的[2x2D conv,3x1280Bidi GRU]。结果如表3所示。
表3:与以前公布的WSJ语音数据集上端对端训练结果的比较
其中:
[1]=Yajie Miao,Mohammad Gowayyed和Florian Metze:“Eesen:使用深度RNN模型和基于WFST的解码进行端到端的语音识别”,其可从自动语音识别和理解(ASRU),2015年IEEE研讨会,第167-174页,IEEE,2015获得,其全部内容通过引用并入本文;
[2]=Dzmitry Bahdanau,Jan Chorowski,Dmitriy Serdyuk,Yoshua Bengio等人:“端到端的基于注意力的大型词汇表语音识别”,其可从2016年IEEE国际声学、语音和信号处理会议(ICASSP),第4945-4949页,IEEE,2016获得,其全部内容通过引用并入本文;
[3]=Yu Zhang,William Chan和Navitep Jaitly:“用于端到端语音识别的甚深卷积网络”,其可从arXiv预印本:arxiv:1610.03022,2016获得,其全部内容通过引用并入本文;
[4]=William Chan,Yu Zhang,Quoc Le和Navitep Jaitly:“潜在序列分解”,其可从Arxiv,2016b获得,其全部内容通过引用并入本文;
[5]=Jan Chorowski和Jaitly Navdeep:“为了实现序列到序列模型中更好的解码和语言模型集成”,其可从arXiv预印本:arXiv:1612.02695,2016获得,其全部内容通过引用并入本文。
对于所有训练的模型,语言模型可以在WER方面大大提高其表现。虽然这个数据集包含非常有限的文本数据供学习构词选择和分解,Gram-CTC仍然可以显著改善原始CTC。
b)Fisher-Switchboard
这里训练的声学模型由两个二维卷积和六个2048维的双向GRU层组成。相应的标签用于训练N-gram语言模型。
·Switchboard英语语音97S62
·Fisher英语语音第1部分-2004S13,2004T19
·Fisher英语语音第2部分-2005S13,2005T19
使用NIST 2002数据集(2004S11RT-02)的Switchboard-1部分的样本来调整语言模型超参数。评估在NIST 2000集上进行。组合在一起,这个配置形成了用于评估ASR模型的标准基准。结果如表4所示。
表4:与使用域内数据在Fisher-Switchboard基准基准(“SWBD”和“CH”分别表示Switchboard和Callhome部分)上的最佳公布结果的比较(这里仅列出使用单一模型的结果)。
其中:
[1]=Geoffery Zweig,Ghengzhu Yu,Jasha Droppo和Andreas Stolcke:“完全神经语音识别的进展”,其可从arXiv预印本:arXiv:1609.05935,2016获得,其全部内容通过引用并入本文;
[2]=Daniel Povey,Vijayaditya Peddinti,Daniel Galvez,Pegah Ghahrmani,Vimal Manohar,Xingyu Na,Yiming Wang和Sanjeev Khudanpur:“用于基于无构词子MMI的ASR的纯粹根据序列训练的神经网络”,其提交给Interspeech,2016,其全部内容通过引用并入本文;
[3]=Wayne Xiong,Jasha Droppo,Xuedong Huang,Frank Seide,Mike Seltzer,Andreas Stolcke,Dong Yu和Geoffrey Zweig:“在对话式语音识别中实现人类平等”,其可从arXiv预印本:arXiv:1610.05256,2016获得,其全部内容通过引用并入本文;
[4]=Tom Sercu和Vaibhava Goel:“用于语音识别的针对具有时间扩张卷积的序列的密集预测”,其可从arXiv预印本:arXiv:1611.09288,2016获得,其全部内容通过引用并入本文。
将模型的实施例与在域内数据上的最佳公布结果进行比较。这些结果往往可以通过使用用于训练语言模型的域外数据,有时也可以通过声学模型来改善。这些技术一起允许(Xiong等人,2016b)在SWBD集上达到5.9的WER。
c)10K SPEECH DATASET
最后,试验了为了构建大型词汇表连续语音识别(LVCSR)***而收集的大型嘈杂数据集。这个数据集包含各种场景下的大约10000小时的语音,如远场、背景噪音、口音。在所有情况下,模型的实施例均为[2x2D Conv,3x2560 Fwd GRU,LA Conv],只有损失函数有所变化。“LA Conv”是指(Amodei等人,2015)中提到的前视卷积层,它与仅正向RNN一起工作用于部署目的。
与Fisher-Switchboard数据集相同,在该数据集上,Gram-CTC的最佳步幅为4,而原始CTC的最佳步幅为2。因此,在两个实验中,Gram-CTC和原始CTC+Gram-CTC都比单独的原始CTC训练得快得多。结果如表5所示。
表5:10K语音数据集上的LVCSR结果。
如表5所示,Gram-CTC表现优于CTC。与原始CTC联合训练后,其性能进一步提升,这验证了联合训练有助于训练。事实上,只需要很少的时间,它就可以有效地将WER从27.59%降低到24.92%(无语言模型)。
F.一些结论
在该专利文件中,提供了使得能够将目标序列自动分解成学习得到的构词的Gram-CTC损失的实施例。还提供了以干净且稳定的方式训练Gram-CTC的技术。大量实验表明,所提出的Gram-CTC通过使用更大的步幅,使得模型能够比原始CTC更高效地运行,同时获得更好的序列标注性能。针对多种规模的数据集的比较实验表明,所提出的Gram-CTC在各种ASR任务中获得了最高水准的结果。应当注意,这样的***和方法不仅通过更高效和更有效而提高了计算***性能,而且还可以用于许多序列标注任务中,这可以辅助人机交互。
此外,在实施例中,一个有趣的观察结果是,Gram-CTC的学习隐含地避免了在传统“单元发现”任务中出现的“退化的解决方案”,而不涉及任何贝叶斯先验或“最小描述长度”约束。使用了仅包含短(例如,最大5)构词以及高频构词的小构词集有助于解释这种成功。
G.***实施例
在实施例中,本专利文件的各方面可以涉及信息处理***/计算***或者在其上实现。为了本公开的目的,计算***可以包括可操作来计算,运算,确定,分类,处理,传输,接收,检索,发起,路由,切换,存储,显示,通信,表现,检测,记录,复制,处理或利用任何形式的信、情报或数据用于商业、科学、控制或其他目的的任何仪器或仪器组合。例如,计算***可以是个人计算机(例如,膝上型计算机)、平板电脑、电话平板、个人数字助理(PDA)、智能电话、智能手表、智能包、服务器(例如,刀片服务器或机架服务器)、网络存储设备或任何其他合适的设备,并且可以在大小、形状、性能、功能和价格方面有所不同。计算***可以包括随机存取存储器(RAM)、诸如中央处理单元(CPU)或硬件或软件控制逻辑等一个或多个处理资源、ROM和/或其他类型的存储器。计算***的附加组件可以包括一个或多个磁盘驱动器,用于与外部设备通信的一个或多个网络端口,以及各种输入和输出(I/O)设备,诸如键盘、鼠标、触摸屏和/或视频显示器。计算***还可以包括一个或多个总线,其可操作以在各种硬件组件之间传输通信。
图7描绘了根据本公开的实施例的计算设备/信息处理***(或计算***)的简化框图。应当理解,***700所示的功能可以运行以支持信息处理***的各种实施例---尽管应当理解,信息处理***可以以不同方式配置并包括不同的组件。
如图7所示,***700包括提供计算资源并控制计算机的一个或多个中央处理单元(CPU)701。CPU 701可以用微处理器等来实现,并且还可以包括一个或多个图形处理单元(GPU)717和/或用于数学计算的浮点协处理器。***700还可以包括***存储器702,其形式可以是随机存取存储器(RAM)、只读存储器(ROM)或两者。
如图7所示,还可以提供多个控制器和***设备。输入控制器703表示到诸如键盘、鼠标或手写笔之类的各种输入设备704的接口。还可以有扫描仪控制器705,其与扫描仪706通信。***700还可以包括存储控制器707,用于与一个或多个存储设备708接合,每个存储设备708包括可以用于记录用来操作***、实用程序和应用的指令的程序的诸如磁带或磁盘之类的存储介质或者光学介质,这些***、实用程序和应用可以包括实现本发明的各个方面的程序的实施例。存储设备(一个或多个)708还可以用来存储根据本发明处理的数据或待处理的数据。***700还可以包括显示控制器709,用于向显示设备711提供接口,显示设备711可以是阴极射线管(CRT)显示器、薄膜晶体管(TFT)显示器或其他类型的显示器。计算***700还可以包括用于与打印机713通信的打印机控制器712。通信控制器714可以与一个或多个通信设备715接合,这使得***700能够通过包括互联网、云资源(例如,以太网云、以太网上的光纤通道(FCoE)/数据中心桥接(DCB)云等)、局域网(LAN)、广域网(WAN)、存储区域网络(SAN)等各种网络中的任何一种或者通过包括红外信号的任何合适的电磁载波信号而连接到任何远程设备。
在所示***中,所有主要的***组件都可以连接到总线716,总线716可以表示多于一个的物理总线。然而,各种***组件可能彼此物理接近或者可能不接近。例如,输入数据和/或输出数据可以从一个物理位置远程传输到另一个物理位置。此外,可以从远程位置(例如,服务器)通过网络访问实现本发明的各个方面的程序。此类数据和/或程序可以通过各种机器可读介质中的任何一种来传送,包括但不限于:磁介质,诸如硬盘、软盘和磁带;光学介质,诸如CD-ROM和全息设备;磁光介质;以及专门配置为存储或存储和执行程序代码的硬件设备,诸如专用集成电路(ASIC)、可编程逻辑设备(PLD)、闪存设备以及ROM和RAM设备。
本发明的实施例可以编码在一个或多个非临时性计算机可读介质上,这些介质具有用于一个或多个处理器或处理单元的用以引起执行步骤的指令。应当注意,一个或多个非临时性计算机可读介质应包括易失性和非易失性存储器。应当注意,可替代的实现方式是可能的,包括硬件实现或软件/硬件实现。硬件实现的功能可以使用ASIC(一个或多个)、可编程阵列、数字信号处理电路等来实现。因此,任何权利要求中的术语“装置”旨在同时涵盖软件和硬件实现。类似地,本文使用的术语“计算机可读介质”包括具有嵌入其中的指令程序的软件和/或硬件,或其组合。考虑到这些可替代实现,应当理解,附图和所附描述提供了本领域技术人员编写程序代码(即软件)和/或制造电路(即硬件)以执行所需处理将需要的功能信息。
应当注意,本发明的实施例还可以涉及具有非临时性有形计算机可读介质的计算机产品,该介质上具有用于执行各种计算机实现的操作的计算机代码。介质和计算机代码可以是为了本发明的目的而专门设计和构造的那些,或者它们可以是相关领域技术人员已知的或可获得的那种。有形计算机可读介质的示例包括但不限于:磁介质,诸如硬盘、软盘和磁带;光学介质,诸如CD-ROM和全息设备;磁光介质;以及专门配置为存储或存储和执行程序代码的硬件设备,诸如专用集成电路(ASIC)、可编程逻辑设备(PLD)、闪存设备以及ROM和RAM设备。计算机代码的示例包括诸如由编译器产生的机器代码,以及包含由计算机使用解释器执行的更高级代码的文件。本发明的实施例可以全部或部分地实现为机器可执行指令,这些机器可执行指令可以在由处理设备执行的程序模块中。程序模块的示例包括库、程序、例程、对象、组件和数据结构。在分布式计算环境中,程序模块可以在物理上位于本地、远程或两者的地点。
本领域技术人员将认识到,本发明的实践不受限于计算***或编程语言。本领域的技术人员还将认识到,上述的许多元件可以在物理上和/或功能上分离成子模块或组合在一起。
本领域技术人员将会理解,前面的示例和实施例是示例性的,并不限制本公开的范围。本领域技术人员在阅读说明书和研究附图之后显而易见的所有变换、增强、等同物、组合和对其的改进均包含在本公开的真实精神和范围内。还应当注意,权利要求的元素可以以不同方式排列,包括具有多种依赖性、配置和组合。
Claims (20)
1.一种用于训练用于语音转录的转录模型的计算机实现的方法,所述方法包括:
将一系列话语输入到所述转录模型中,其中所述一系列话语和相关联的标签采样自训练集;
建立包括一元构词和高阶构词的构词集;
采用跨步来处理输入的一系列话语,其中步长大小取决于所述构词集的最大构词;
从所述转录模型为所述一系列话语中的每个话语预测一个或多个单元,所述一个或多个单元选自建立的构词集;以及
实施Gram链结式时间分类算法Gram-CTC损失函数以测量针对给定所述相关联的标签的每个话语所预测的一个或多个单元的误差,所述Gram-CTC损失函数自动选择有用的构词并用所选择的构词分解所述输入的一系列话语,所述Gram-CTC损失函数的实施涉及正向反向转换;
计算所述损失函数相对于所述转录模型的参数的导数;以及
使用所述导数通过反向传播来更新所述转录模型。
2.根据权利要求1所述的计算机实现的方法,其中所述建立的构词集包括全部的一元构词和二元构词。
3.根据权利要求1所述的计算机实现的方法,其中所述高阶构词选自样本数据集且出现频率在阈值以上。
4.根据权利要求1所述的计算机实现的方法,其中为每个话语所预测的一个或多个单元包括在词的级别上不重叠的二元构词。
5.根据权利要求1所述的计算机实现的方法,其中为每个话语预测一个或多个单元包括允许用直观和有意义的高阶构词将词分解为大单元。
6.根据权利要求1所述的计算机实现的方法,其中为每个话语预测一个或多个单元包括允许将句子分解成在发音方面有意义的片段。
7.根据权利要求1所述的计算机实现的方法,还包括与原始CTC损失函数一起训练所述转录模型。
8.根据权利要求1所述的计算机实现的方法,其中所述话语具有归一化的线性快速傅里叶变换FFT特征,使得每个输入特征具有零均值和单位方差。
9.一种训练用于语音转录的循环神经网络RNN模型的计算机实现的方法,所述方法包括:
向所述RNN模型输入多个话语和相关联的标签,其中所述话语和相关联的标签采样自训练集,所述RNN模型包括一个或多个卷积层和一个或多个递归层;
通过所述RNN模型的所述一个或多个递归层,预测建立的构词集当中的一个或多个单元;
获得所述RNN模型的输出层中的所预测的单元的概率分布;以及
实施Gram链结式时间分类算法Gram-CTC损失函数以测量针对给定所述相关联的标签的所述话语所预测的单元的误差,所述Gram-CTC损失函数自动选择有用的构词,并用所选择的构词分解所述话语;
计算所述损失函数相对于所述RNN模型的参数的导数;以及
使用所述导数通过反向传播来更新所述RNN模型。
10.根据权利要求9所述的计算机实现的方法,其中所述一个或多个递归层是正向或双向门控递归层。
11.根据权利要求9所述的计算机实现的方法,其中所述输出层是softmax层。
12.根据权利要求9所述的计算机实现的方法,其中所述一个或多个卷积层是二维卷积层。
13.根据权利要求9所述的计算机实现的方法,其中实施所述Gram-CTC损失函数包括正向和反向状态转换。
14.根据权利要求9所述的计算机实现的方法,其中所预测的一个或多个单元是一元构词或高阶构词。
15.根据权利要求9所述的计算机实现的方法,其中所述建立的构词集包括全部一元构词和选择的高阶构词。
16.根据权利要求15所述的计算机实现的方法,其中所述选择的高阶构词选自样本数据集且出现频率在阈值以上。
17.一种包括一个或多个指令序列的非临时性计算机可读介质或媒质,所述一个或多个指令序列在由一个或多个微处理器执行时使得执行以下步骤,包括:
接收多个话语序列,其中每个话语序列和相关联的标签采样自训练集;
将对应于所述话语序列的预测的单元的概率分布输出到Gram链结式时间分类算法Gram-CTC损失函数;所述Gram-CTC损失函数自动在一元构词和选择的高阶构词之中选择有用的构词,以用所选择的构词分解所述话语序列;以及
实施Gram-CTC损失函数算法以测量针对给定所述相关联的标签的每个话语所预测的一个或多个字符的误差,所述Gram-CTC损失函数的实施涉及正向反向转换。
18.根据权利要求17所述的非临时性计算机可读介质,其中所述选择的高阶构词是二元构词。
19.根据权利要求18所述的非临时性计算机可读介质,其中所述二元构词选自样本数据集且出现频率在阈值以上。
20.根据权利要求17所述的非临时性计算机可读介质,还包括计算损失函数相对于所述预测的单元的导数,并使用所述导数实施反向传播。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762463503P | 2017-02-24 | 2017-02-24 | |
US62/463,503 | 2017-02-24 | ||
US15/698,593 US10373610B2 (en) | 2017-02-24 | 2017-09-07 | Systems and methods for automatic unit selection and target decomposition for sequence labelling |
US15/698,593 | 2017-09-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108510983A CN108510983A (zh) | 2018-09-07 |
CN108510983B true CN108510983B (zh) | 2022-11-18 |
Family
ID=63246932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810160192.0A Active CN108510983B (zh) | 2017-02-24 | 2018-02-26 | 用于序列标注的自动单元选择和目标分解的***和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10373610B2 (zh) |
CN (1) | CN108510983B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10699698B2 (en) * | 2018-03-29 | 2020-06-30 | Tencent Technology (Shenzhen) Company Limited | Adaptive permutation invariant training with auxiliary information for monaural multi-talker speech recognition |
US10699697B2 (en) * | 2018-03-29 | 2020-06-30 | Tencent Technology (Shenzhen) Company Limited | Knowledge transfer in permutation invariant training for single-channel multi-talker speech recognition |
WO2019226954A1 (en) | 2018-05-23 | 2019-11-28 | Google Llc | Training sequence generation neural networks using quality scores |
CN109271926B (zh) * | 2018-09-14 | 2021-09-10 | 西安电子科技大学 | 基于gru深度卷积网络的智能辐射源识别方法 |
WO2020123552A1 (en) * | 2018-12-10 | 2020-06-18 | Life Technologies Corporation | Deep basecaller for sanger sequencing |
US20200243165A1 (en) * | 2019-01-28 | 2020-07-30 | International Business Machines Corporation | Prediction model for determining whether feature vector of data in each of multiple input sequences should be added to that of the other data in the sequence |
US11100920B2 (en) * | 2019-03-25 | 2021-08-24 | Mitsubishi Electric Research Laboratories, Inc. | System and method for end-to-end speech recognition with triggered attention |
CN111862961A (zh) * | 2019-04-29 | 2020-10-30 | 京东数字科技控股有限公司 | 识别语音的方法和装置 |
CN110222578B (zh) * | 2019-05-08 | 2022-12-27 | 腾讯科技(深圳)有限公司 | 对抗测试看图说话***的方法和装置 |
CN110136741B (zh) * | 2019-05-16 | 2021-07-13 | 哈尔滨工业大学 | 一种基于多尺度上下文的单通道语音增强方法 |
CN110211574B (zh) * | 2019-06-03 | 2022-03-11 | 哈尔滨工业大学 | 基于瓶颈特征和多尺度多头注意力机制的语音识别模型建立方法 |
CN110335592B (zh) * | 2019-06-28 | 2022-06-03 | 腾讯科技(深圳)有限公司 | 语音音素识别方法和装置、存储介质及电子装置 |
CN110349570B (zh) * | 2019-08-16 | 2021-07-09 | 问问智能信息科技有限公司 | 语音识别模型训练方法、可读存储介质和电子设备 |
US11373639B2 (en) * | 2019-12-12 | 2022-06-28 | Mitsubishi Electric Research Laboratories, Inc. | System and method for streaming end-to-end speech recognition with asynchronous decoders pruning prefixes using a joint label and frame information in transcribing technique |
CN111079945B (zh) * | 2019-12-18 | 2021-02-05 | 北京百度网讯科技有限公司 | 端到端模型的训练方法及装置 |
CN111092798B (zh) * | 2019-12-24 | 2021-06-11 | 东华大学 | 一种基于口语理解的可穿戴*** |
CN111326157B (zh) * | 2020-01-20 | 2023-09-08 | 抖音视界有限公司 | 文本生成方法、装置、电子设备和计算机可读介质 |
US20210312294A1 (en) * | 2020-04-03 | 2021-10-07 | International Business Machines Corporation | Training of model for processing sequence data |
CN112233655B (zh) * | 2020-09-28 | 2024-07-16 | 上海声瀚信息科技有限公司 | 一种提高语音命令词识别性能的神经网络训练方法 |
CN113656934B (zh) * | 2021-07-02 | 2024-06-21 | 中汽研(天津)汽车工程研究院有限公司 | 一种基于传递路径分析理论的车内空气噪声目标分解方法 |
CN113705730B (zh) * | 2021-09-24 | 2023-04-14 | 江苏城乡建设职业学院 | 基于卷积注意力和标签采样的手写方程式图像识别方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106328122A (zh) * | 2016-08-19 | 2017-01-11 | 深圳市唯特视科技有限公司 | 一种利用长短期记忆模型递归神经网络的语音识别方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6292772B1 (en) * | 1998-12-01 | 2001-09-18 | Justsystem Corporation | Method for identifying the language of individual words |
US6208968B1 (en) * | 1998-12-16 | 2001-03-27 | Compaq Computer Corporation | Computer method and apparatus for text-to-speech synthesizer dictionary reduction |
AU2005207606B2 (en) * | 2004-01-16 | 2010-11-11 | Nuance Communications, Inc. | Corpus-based speech synthesis based on segment recombination |
US20060031069A1 (en) * | 2004-08-03 | 2006-02-09 | Sony Corporation | System and method for performing a grapheme-to-phoneme conversion |
US20130317755A1 (en) * | 2012-05-04 | 2013-11-28 | New York University | Methods, computer-accessible medium, and systems for score-driven whole-genome shotgun sequence assembly |
CN104035751B (zh) * | 2014-06-20 | 2016-10-12 | 深圳市腾讯计算机***有限公司 | 基于多图形处理器的数据并行处理方法及装置 |
US10540957B2 (en) * | 2014-12-15 | 2020-01-21 | Baidu Usa Llc | Systems and methods for speech transcription |
US9786270B2 (en) * | 2015-07-09 | 2017-10-10 | Google Inc. | Generating acoustic models |
US10423874B2 (en) * | 2015-10-02 | 2019-09-24 | Baidu Usa Llc | Intelligent image captioning |
US10733979B2 (en) * | 2015-10-09 | 2020-08-04 | Google Llc | Latency constraints for acoustic modeling |
US10332509B2 (en) * | 2015-11-25 | 2019-06-25 | Baidu USA, LLC | End-to-end speech recognition |
US10481863B2 (en) * | 2016-07-06 | 2019-11-19 | Baidu Usa Llc | Systems and methods for improved user interface |
US10679643B2 (en) * | 2016-08-31 | 2020-06-09 | Gregory Frederick Diamos | Automatic audio captioning |
US10657955B2 (en) * | 2017-02-24 | 2020-05-19 | Baidu Usa Llc | Systems and methods for principled bias reduction in production speech models |
-
2017
- 2017-09-07 US US15/698,593 patent/US10373610B2/en active Active
-
2018
- 2018-02-26 CN CN201810160192.0A patent/CN108510983B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106328122A (zh) * | 2016-08-19 | 2017-01-11 | 深圳市唯特视科技有限公司 | 一种利用长短期记忆模型递归神经网络的语音识别方法 |
Non-Patent Citations (1)
Title |
---|
基于RNN汉语语言模型自适应算法研究;王龙等;《火力与指挥控制》;20160515(第05期);第35-38、42页 * |
Also Published As
Publication number | Publication date |
---|---|
US20180247639A1 (en) | 2018-08-30 |
US10373610B2 (en) | 2019-08-06 |
CN108510983A (zh) | 2018-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108510983B (zh) | 用于序列标注的自动单元选择和目标分解的***和方法 | |
CN108510985B (zh) | 用于减小生产语音模型中的原则性偏差的***和方法 | |
Liu et al. | Gram-CTC: Automatic unit selection and target decomposition for sequence labelling | |
CN108960277B (zh) | 使用语言模型对序列到序列模型进行冷聚变 | |
CN107408384B (zh) | 部署的端对端语音识别 | |
CN109887484B (zh) | 一种基于对偶学习的语音识别与语音合成方法及装置 | |
JP5901001B1 (ja) | 音響言語モデルトレーニングのための方法およびデバイス | |
US9123333B2 (en) | Minimum bayesian risk methods for automatic speech recognition | |
CN113692616B (zh) | 用于在端到端模型中的跨语言语音识别的基于音素的场境化 | |
CN112528637B (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
CN113574595A (zh) | 用于具有触发注意力的端到端语音识别的***和方法 | |
Păiş et al. | Capitalization and punctuation restoration: a survey | |
JP7418991B2 (ja) | 音声認識方法及び装置 | |
WO2017210095A2 (en) | No loss-optimization for weighted transducer | |
JP6941494B2 (ja) | エンドツーエンド日本語音声認識モデル学習装置およびプログラム | |
US20230104228A1 (en) | Joint Unsupervised and Supervised Training for Multilingual ASR | |
CN111489735A (zh) | 语音识别模型训练方法及装置 | |
CN114492426B (zh) | 子词切分方法、模型训练方法、装置和电子设备 | |
CN117378004A (zh) | 具有序列的对比损失的有监督和无监督的训练 | |
JP2024512579A (ja) | ルックアップテーブルリカレント言語モデル | |
CN113160820A (zh) | 语音识别的方法、语音识别模型的训练方法、装置及设备 | |
EP3185132B1 (en) | Method for writing a foreign language in a pseudo language phonetically resembling native language of the speaker | |
CN111159339A (zh) | 一种文本匹配处理方法和装置 | |
US20240177706A1 (en) | Monte Carlo Self-Training for Speech Recognition | |
KR102510645B1 (ko) | 한글 단어 임베딩에서의 어휘 밖 단어표현을 처리하기 위한 방법, 이를 수행하기 위한 기록 매체 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |