时容易出错的词 对时,可以基于以下原则:
[0129] 如果分别使用识别词向量与通用词向量计算得到的两词之间的距离基本一致,则 语音识别得到的词为正确的识别词;如果分别使用识别词向量与通用词向量计算到的两词 之间的距离差别较大,即使用识别词向量计算到的两词之间的距离较小,使用通用词向量 计算到的两词之间的距离较大,并且声学相似度较高时,则该词对为语音识别时容易出错 的词对。
[0130] 因此,根据声学相似度及通用语义相似度将每个聚类中的词分为四类,分别落在 四个象限中。如图4为每个聚类中词与词之间的关系象限图。
[0131] 落在第一象限中的词对,两词之间的声学相似度高,通用语义相似度低,即落在第 一象限内的两词使用识别词向量计算得到的两词之间的距离较近,而使用通用词向量计算 的两词之间的距离较远,二者差别较大,并且落在该象限内的两词之间的声学相似度较高, 则可以确定落在该象限内的词为语音识别容易出错的词对,如"美国-没过","查询-查 循"。
[0132] 落在第二象限中的词对,两词之间的声学相似度高,通用语义相似度高,在语音识 别时,不易出错,该象限中的词一般为比较相近的同义词,如"网银-网上银行"。
[0133] 落在第三象限中的词对,两词之间的声学相似度低,通用语义相似度高,语音识别 不易出错,如"安徽-皖"。
[0134] 落在第四象限中的词对,两词之间的声学相似度低,通用语义相似度低,语音识别 不易出错。
[0135] 由此可见,落在第二至第四象限内的词对在语音识别时不容易出错,只有落在第 一象限内的词对在语音识别时容易出错。
[0136] 如图5所示,是本发明实施例中利用错词对集合构建错词检测模型的流程图,包 括以下步骤:
[0137] 步骤501,提取错词对集合中每个错词对的标注信息。
[0138] 所述标注信息用于表示所述错词对中其中一个词是否应该识别为其中另一个词, 如词对"没过-美国"表示"没过"的正确识别词为"美国",根据训练语音数据"我在美国办 理的信用卡"的识别结果"我在没过办理的信用卡",可以确定当前词对中"没过"应该识别 为"美国",则当前词对为正确的词对,因此,词对"美国-没过"的标注信息为:正确词对。
[0139] 需要说明的是,当一个词对中的两个词都出现在训练语料中,并且相互识别成对 方,如词对"美国-没过",语料中的语音数据"我在美国办理的信用卡"的识别结果为"我 在没过办理的信用卡",语料中的语音数据"我这次考试没过"的识别结果为"我这次考试美 国",则可以将当前词对作为两个正确词对,即词对"美国-没过"的标注信息为:正确词对; 词对"没过-美国"的标注信息为:正确词对。所述标注信息可以通过人工进行标注得到。
[0140] 步骤502,提取错词对集合中识别错误词的语义特征。
[0141] 所述语义特征包括:错词的上下文相关环境特征、错词的识别词向量、错词的通用 词向量。其中,所述上下文相关环境特征如当前词前一个词的词性、当前词在句中的位置、 当前词后一个词的词性等;所述识别词向量和通用词向量前面已有详细说明,在此不再赘 述。需要说明的是,在进行上述信息标注时可以同时记录识别错误词所在的识别文本,这 样,从这些识别文本中即可方便地提取到错词的上下文相关环境特征。
[0142] 步骤503,提取所述错词集合中每个词所对应语音数据的声学特征。
[0143] 所述声学特征可以是基频特征和/或频谱特征,基频特征如F0,频谱特征如 MFCC(MelFrequencyCepstrumCoefficient)特征,所述声学特征还可以是错词对中每个 词的拼音信息。
[0144] 步骤504,利用提取的错词对的标注信息、语义特征及声学特征,构建错词检测模 型。
[0145] 所述错词检测模型可以采用统计学中常用的分类模型,如支持向量机模型、神经 网络模型等。模型的输入为当前词对的标注信息、语义特征及声学特征,其中标注信息可以 作为错词检测模型的分类标签;模型的输出为当前词对为正确词对的概率。
[0146] 进一步地,当前词对的语义特征还可以包括词对中非识别结果中词的识别语义向 量和通用语义向量,所述识别语义向量和通用语义向量在前面已有详细说明,在此不再赘 述。
[0147] 可见,由于错词检测模型的构建是通过预先收集大量语音数据,并进行语音识别, 根据识别文本发现语音识别容易出错的词,得到错词对集合,然后根据该错词对集合中的 各词对与语音识别相关的一些特征来构建的,从而使后续对语音识别结果进行后处理的过 程不依赖于由专家构建的语义知识库,有效地避免了语音识别后处理过程受人为因素的影 响,进一步提高了处理效果。
[0148] 相应地,本发明实施例还提供一种语音识别后处理系统,如图6所示,是该系统的 一种结构不意图。
[0149] 在该实施例中,所述系统包括:
[0150] 检测模型构建模块600,用于预先利用语音识别容易出错的词对构建错词检测模 型;
[0151] 接收模块601,用于接收待识别语音数据;
[0152] 语音识别模块602,用于对所述接收模块601接收的语音数据进行语音识别,得到 识别结果;
[0153] 特征提取模块603,用于依次将所述识别结果中的各词与通用词典中的每个词组 成词对,并提取词对中所述识别结果中各词的语义特征及声学特征,以及词典词的声学特 征,各特征的具体解释可参照前面本发明方法实施例中的说明;
[0154] 修正模块604,用于利用所述词对的语义特征和声学特征、以及所述错词检测模 型,依次检测所述识别结果中的各词,并且如果检测得到的对应当前词的词对为正确词对 的概率大于设定阈值,则将所述词对中的词典词替换所述当前词;
[0155] 输出模块605,用于在所述修正模块604对所述识别结果中的各词检测完成后,输 出修正后的识别结果。
[0156] 上述语音识别模块602具体可以采用现有的语音识别技术对语音数据进行识别, 对此本发明实施例不做限定。
[0157] 上述检测模型构建模块600具体可以首先确定语音识别容易出错的词对,得到错 词对集合,然后利用所述错词对集合构建错词检测模型。相应地,检测模型构建模块600的 一种具体结构包括:错词对集合生成模块和模型构建模块,其中,所述错词对集合生成模块 用于通过聚类方式确定语音识别容易出错的词对,得到错词对集合;所述模型构建模块用 于利用所述错词对集合构建错词检测模型。
[0158] 如图7所示,是本发明实施例中错词对集合生成模块的一种结构示意图。
[0159] 所述错词对集合生成模型包括以下各单元:
[0160] 训练数据获取单元71,用于获取训练语音数据;
[0161] 识别文本获取单元72,用于调用语音识别模块对所述训练语音数据进行语音识 另IJ,得到识别文本;
[0162] 通用文本获取单元73,用于获取包含所述识别文本中各词的通用文本;
[0163] 词向量训练单元74,用于利用所述识别文本训练得到所述识别文本中各词的词向 量,并将其作为所述词的识别词向量,并利用所述通用文本训练得到所述通用文本中各词 的词向量,并将其作为所述词的通用词向量;
[0164] 聚类单元75,用于对所述识别文本中各词的识别词向量进行聚类,得到各词的类 另IJ,比如,可以利用各词的识别词向量之间的距离进行聚类,得到各识别词向量的类别,该 类别即为所述识别词向量对应的词的类别;
[0165] 通用语义相似度计算单元76,用于根据所述通用词向量计算每个类别中两个词之 间的通用语义相似度;
[0166] 声学相似度计算单元77,用于计算每个类别中两个词之间的声学相似度;
[0167] 判断单元78,用于判断每个类别中两个词的通用语义相似度是否低于设定的第一 阈值,并且所述两个词的声学相似度是否高于设定的第二阈值,如果是,则将所述两个词作 为错词对加入到错词对集合中。
[0168] 上述词向量训练单元74对识别词向量及通用词向量的训练是相同的,只是用到 的训练文本是不同的。具体地,识别词向量的训练过程如下:首先对所述识别文本包含的 词进行去重,即去除其中重复的词,将去重后的各词进行向量初始化,得到各词的初始词向 量,然后利用神经网络对各词的初始词向量进行训练,得到所述识别文本中各词的词向量。 通用词向量的训练过程如下:首先对所述通用文本包含的词进行去重,即去除其中重复的 词,将去重后的各词进行向量初始化,得到各词的初始词向量,然后利用神经网络对各词的 初始词向量进行训练,得到所述通用文本中各词的词向量。
[0169] 上述通用语义相似度计算单元76具体可以计算每个类别中两个词的通用词向量 之间的距离,并根据计算得到两个词的通用词向量之间的距离确定所述两个词之间的通用 语义相似度,具体计算过程可参照前面本发明方法实施例中的描述。
[0170] 上述声学相似度计算单元77具体可以计算每个类别中两个词的声学距离,并根 据计算得到的两个词的声学距离确定所述两个词之间的声学相似度,具体计算过程可参照 前面本发明方法实施例中的描述。
[0171] 如图8所示,是本发明实施例中模型构建模块的一种结构示意图。
[0172] 所述模型构建模块包括:
[0173] 标注信息提取单元81,用于提取错词对集合中每个错词对的标注信息,所述标注 信息用于表示所述错词对中其中一个词是否应该识别为其中另一个词;
[0174] 语义特征提取单元82,用于提取错词对集合中识别错误词的语义特征,所述语义 特征包括;错词的上下文相关环境特征、错词的识别词向量、错词的通用词向量;
[0175] 声学特征提取单元83,用于提取错词对集合中每个词所