音识别内核识别音频输入并把它翻译成应用程序懂得的文本。应用程序可以根据这些文本进行一定的操作。
语音识别内核要完成一个相当复杂的工作,就是把原始的声音输入转换成应用程序可以认识的文本。
语音识别内核的主要:
声音处理器:Acoustic Processor
单词匹配 :Word Matching
快速声学匹配:Fast Acoustic Match
语言建模:Language Modeling
仔细声学匹配:Detailed Acoustic Match
查找 :Search
声音处理器
声音处理器把原始声音数据转换成后面部分可以使用的格式。声音处理器有两个分量: 信号处理器和标签器。
在IBM VoiceType内核中,信号处理器分析麦克风输入的声音。原始的声音文件采样频率是11 kHz,它即包含有语音数据,也包含背景噪音,所以信号处理器必须适应当前的声学环境,以有效地滤除噪音。信号处理器每一秒分析100个语音特征。这些特征以向量的形式存放。这样,信号处理器就把输入的声音数据从每秒11000个采样值减小到每秒100个特征向量.
标签器把信号处理器的输出转换成一串标签来标识不同的声音类型。在标记中,标签器使用原型来分开不同的语音声音。这些原型严格对应语言的发音,例如,单词cat的发音原型有:/k/, /ae/,/t/。
单词匹配
语音识别过程的下一个阶段是单词匹配。单词匹配的目的是根据声音分析和上下文信息来标记侯选单词。这个过程包含以下几个步骤:
快速声学匹配
用来在词汇中的所有单词中找到所有近似的匹配, 它生成一个很小的侯选单词列表。例如,内核在收到“Please write to Mrs. Wright right away”, 快速匹配将为“please”生成一个大约100个发音近似的单词的列表。 ??
语言建模
这个模块分析单词的可能顺序,而不管他们的声学形式。语言建模用来根据过去输入的单词预测一个未来的单词。在上面的例子“Please write to Mrs. Wright right away”中,语言建模可以确定你的意思是“Please write”,而不是“Please right”,或是“Mrs. Wright”而不是“Mrs. Write”。语言建模的基础是反映一个单词出现在一定的上下文中的概率。
对听写而言,VoiceType使用一个三字组合 (trigram)语言模型,基础是一个单词出现在另外两个单词中间的历史情况。
语言建模可以在快速匹配的侯选单词列表中进行裁 减。例如上例,“Please write to Mrs. Wright right away”,语言建模可以把“please”列表中的侯选单词从大约100个减少到25个左右。
对动态命令词汇表,语言模型很简单,它认为词汇表中的每一个单词或词组出现的可能相同。
对基于语法的词汇,语言模型由编译后的语法文件,FSG文件决定。
仔细声学匹配
现在,我们得到了一个较小的侯选单词列表,仔细声学匹配从中寻找更为精确的匹配。这个过程比快速匹配的计算量大得多,因为它使用一个更为精确的声学模型来生成一个侯选单词的权重列表。这样,在前面的例子中,仔细声学匹配就给剩下的25个单词标以权重.
查找
语音内核的最后一个分量是解码器。它查找最可能的单词顺序。