计算机技术的发展为人类生活带来了极大便利, 基于语音的人机交互已经以命令词识别系统的形式在智能家居、可穿戴设备等平台得到了应用. 命令词识别系统是一种“N选1”的识别系统, 将输入语音识别为预先设定的命令词之一, 系统的错误主要来自对集内命令词的错识和对集外语音或噪声的误识. 有鉴于此类系统使用环境的多样性, 通过某种手段拒绝错误的识别结果, 特别是拒绝环境噪声和集外语音引发的错误识别结果, 对提高命令词系统的可靠性极为重要.
对语音识别结果的置信程度加以检验和判决是一种比较理想的做法. 在数理统计中, 置信度分析是分析一个随机变量落在某个区间的概率, 而在语音识别中, 置信度分析通常用于衡量模型与数据之间匹配的可信程度. 置信度分析方法大致可以分为基于预测特征的组合、基于后验概率和基于似然值比值(似然比)等3大类方法[1]. 其中基于似然比的置信度分析方法将置信度问题转化为统计假设检验问题, 设定数据由某一模型产生(零假设)和数据非由该模型产生(对立假设)两种假设, 通过两种假设上的似然比检验以及阈值判断是否接受零假设. 已有的置信度分析方法包括基于词网格生成后验概率的置信度[2]、基于逆模型建模对立假设计算似然比的置信度[3]等.
本文提出了一种无需声学模型、语言模型支撑的命令词置信度分析方法. 调研发现, 身份矢量(identity vector, i-vector)特征[4]和概率线性判别分析(Probabilistic Linear Discriminant Analysis, PLDA)方法[5]已经在说话人识别中得到了广泛应用, 但是将i-vector特征与PLDA应用于命令词语音识别的置信度分析中尚未有文献报导. i-vector的原理是通过对所有语音数据训练, 建立通用背景模型(Universal Background Model, UBM)[6], 将语音表示为高维的均值超矢量(supervector), 然后通过因子分析将其投影为低维、定长的矢量表示, 其特点在于它能在较大的粒度范围内提取语音特征, 可以作为一段语音信号的整体描述, 这使得i-vector作为无需语言模型支持的置信度判决的输入特征成为了可能. 另一方面, PLDA方法最早发源于图像领域的人脸识别应用, 通过增大类间差异, 达到补偿识别过程中无关因素的作用. 由于在判决阶段, PLDA通过计算假设检验的比值(也即似然比)打分, 因此其可以自然地作为一种置信度分析手段.
本文首先对汉语的1254个全音节孤立字以及连接词进行了置信度实验, 考察了基于i-vector和PLDA方法在置信度判决中的有效性. 在连接词实验中分析发现, i-vector特征对语音在全局层面上的刻画能力较强, 但是对于语音中的时序特征的辨识, 例如音节发音顺序辨识, 其存在一定的模糊性, 而时序信息是语音语义的重要成分, 这在命令词识别中是不可回避的问题. 针对此缺陷, 本文在实验验证的基础上, 尝试提出了改进方法, 较好地解决了此问题.
1 置信度与基线系统概述 1.1 置信度及其评价方法语音识别系统的性能在过去几十年中取得了长足的进步, 但环境噪声、非对话内容等干扰因素依然是语音控制这类系统在实际应用中面临的一大挑战. 引入置信度模型, 通过后处理排除识别结果中的无关内容, 是提高系统可靠性的一个有效思路.
在语音识别中, 置信度代表某一语音X来自模型W的可信程度. 文献[1]中对置信度予以综述, 其中将置信度估计方法大致分为3类: 1)基于预测特征的组合, 即收集解码过程中各环节的相关特征并融合为判据; 2)基于后验概率, 即使用识别过程中的后验概率; 3)基于似然值比值(似然比): 将置信度转换为一个假设检验问题处理, 零假设
$\begin{array}{*{20}{c}} {LRT = \dfrac{{p(X|{{\cal H}_0})}}{{p(X|{{\cal H}_1})}} \ge \tau ?} \end{array}$ | (1) |
其中,
在置信度估计中一般会遇到两类错误: 第1类错误(漏报), 即实际情况符合零假设
$ \begin{split} &RR=\dfrac{\text{被拒绝的语音数}}{\text{语音总数}}\\ &AR=\dfrac{\text{被正确接受的语音数}}{\text{被接受的语音数}}\end{split}$ | (2) |
在基于GMM-HMM的语音识别系统的识别过程中, 语音识别器对每次输出能给出N-best候选的似然值得分. 在基线系统中我们采用首选输出的似然值得分与次优候选的似然值得分之比来作为置信度判断的依据, 对识别结果进行后处理, 简单易行且应用广泛.
$\begin{array}{*{20}{c}} {LR = \dfrac{{p(X|{{{w}}_1})}}{{p(X|{{{w}}_2})}}} \end{array}$ | (3) |
其中,
传统的语音识别系统常常是通过训练一个高斯混合模型(Gaussian Mixture Model, GMM), 对其语音特征的分布进行建模, 通过求取并比较测试语音在不同GMM上的似然值确认其相似程度, 完成识别. 但是实际应用中, 用于训练特定GMM的语音往往长度较短或语料较少, 导致训练数据不足, 无法训练出高质量的GMM模型; 另一方面也存在大量未标注的语料, 其中的信息无法被利用. Reynolds等人提出的通用背景模型(Universal Background Model, UBM)[6]利用所有数据训练得到一个混合分量数较高的GMM模型, 其代表了全局语音特征的分布情况. 训练得到UBM模型之后, 通过自适应算法适应特定语句的数据, 可以得到各语句的GMM模型, 其特征分布随语句内容而不同, 可用于识别确认.
UBM的训练采用传统的EM算法, 反复迭代更新UBM各分量的权重
$\left\{\!\!\! {\begin{array} {l} \Pr \left( {i{{|}}{{x}_t}} \right) = \frac{{{w_i}{p_i}\left( {{{x}_t}} \right)}}{{\displaystyle\mathop \sum \nolimits_{j = 1}^M {w_j}{p_j}\left( {{{x}_t}} \right)}}\\ {{p_i}\left( {{{x}_t}} \right) = \frac{{{\rm{exp}} \left( { - \dfrac{1}{2}{{\left( {{{x}_t} - {{\mu }_i}} \right)}^T}{{{\Sigma }}_i}^{ - 1}\left( {{{x}_t} - {{\mu }_i}} \right)} \right)}}{{\sqrt {{{\left( {2\pi } \right)}^D}\left| {{{{\Sigma }}_i}} \right|} }}} \end{array}} \right.$ | (4) |
然后计算充分统计量:
$\left\{\!\!\! {\begin{array}{l} {N_i} = \displaystyle\mathop \sum \nolimits_{t = 1}^T \Pr \left( {i{{|}}{{x}_t}} \right)\\ {{{F}_i} = \displaystyle\mathop \sum \nolimits_{t = 1}^T \Pr \left( {i{{|}}{{x}_t}} \right){{x}_t}} \end{array}} \right.$ | (5) |
最后计算新均值
$\left\{ {\begin{array}{l} {E_i}\left( {x} \right) = \dfrac{{{{F}_i}}}{{{N_i}}}\\ {\hat {{\mu }}_i} = {\alpha _i}{E_i}\left( {x} \right) + \left( {1 - {\alpha _i}} \right){{\mu }_i}\\ {{\alpha _i} = \dfrac{{{N_i}}}{{{N_i} + r}}} \end{array}} \right.$ | (6) |
其中,
前述GMM-UBM方法得到的特定GMM模型可以用于常规的GMM似然值得分确认, 但考虑到各GMM的均值足以代表特征的分布情况, 因此可以将均值拼接起来, 称为均值超矢量, 作为反映变长语音特性的一种定长特征, 其同样包含了说话内容等信息. 常见的利用此超矢量的方式包括将其送入支持向量机(Support Vector Machine, SVM)等分类器中训练判别[7], 或通过联合因子分析(Joint Factor Analysis, JFA)[8]对超矢量建模并进行分解:
$\begin{array}{*{20}{c}} {M = m + Vy + Ux + D{\textit{z}}} \end{array}$ | (7) |
其中, M为语音的超矢量, m一般取UBM的均值超矢量;
然而在文献[9]中, Dehak等人通过实验发现上述分离方法较为理想化, 在信道因子中同样存在语音信息, 并在文献[4]中提出了i-vector模型:
$\begin{array}{*{20}{c}} {M = m + Tw} \end{array}$ | (8) |
其中, T表示的全局差异空间(total variability space)包含了说话内容、信道等各方面的信息,
使用EM算法训练T矩阵[11]. 对于给定语音数据
$\begin{array}{*{20}{c}} {{{\tilde {{F}}}_i} = {{F}_i} - {N_i}{{\mu }_i}} \end{array}$ | (9) |
将
令UBM的均值超矢量、方差为
$\left\{ {\begin{array} {l} {l}\left( {x} \right) = {I} + {{T}^{\rm T}}{{{\Sigma }}^{ - 1}}{N}\left( {x} \right){T}\\ E\left[ {{w}\left( {x} \right)} \right] = {{l}^{ - 1}}\left( {x} \right){{T}^{\rm T}}{{{\Sigma }}^{ - 1}}\tilde {{F}}\left( {x} \right)\\ {E\left[ {{w}\left( {x} \right){{w}^{\rm T}}\left( {x} \right)} \right] = {{l}^{ - 1}}\left( {x} \right) + E\left[ {{w}\left( {x} \right)} \right]E{{\left[ {{w}\left( {x} \right)} \right]}^{\rm T}}} \end{array}} \right. $ | (10) |
M步骤中, 更新矩阵T:
$\left\{ {\begin{array}{l} {{A}_i} = \displaystyle\sum\nolimits_{{x}} {{N_i}} \left( {x} \right)E\left[ {{w}\left( {x} \right){{w}^{\rm T}}\left( {x} \right)} \right]\\ {C} = \displaystyle\sum\nolimits_{{x}} {\tilde{ F}} \left( {x} \right)E\left[ {{w}\left( {x} \right)} \right]|\\ {T = \left[ {\begin{array}{*{20}{c}} {{{A}_1}^{ - 1}{{C}_1}} \\ {{{A}_2}^{ - 1}{{C}_2}} \\ \vdots \\ {{{A}_C}^{ - 1}{{C}_C}} \end{array}} \right]} \end{array}} \right.$ | (11) |
反复迭代更新得到矩阵T后, 语音x的i-vector为:
$\begin{array}{*{20}{c}} {w = {{\left( {{I} + {{T}^{\rm T}}{{{\Sigma }}^{ - 1}}{N}\left( {x} \right){T}} \right)}^{ - 1}}{{T}^{\rm T}}{{{\Sigma }}^{ - 1}}\tilde {{F}}\left( {x} \right)} \end{array}$ | (12) |
概率线性判别分析(Probabilistic Linear Discriminant Analysis, PLDA)最早由Prince等在文献[5]中提出, 应用于图像识别中的人脸识别任务. PLDA的原始形式如下:
$\begin{array}{*{20}{c}} {{{w}_{ij}} = \mu + V{{y}_i} + U{{x}_{ij}} + {{{\textit{z}}}_{ij}}} \end{array}$ | (13) |
其中,
与此前常用的线性判别分析(Linear Discriminant Analysis, LDA)[12]相比, PLDA同样试图寻找数据的某种低维投影, 使得投影后类间差异最大, 但PLDA是一种生成式(generative)模型, 考虑了图像由信号与噪声两部分组成并予以显式建模, 噪声模型更为完备, 因而取得了更好的效果.
在原始PLDA模型的基础上, 由于在语音相关任务中无需求解类内差异, 文献[13]中引入了简化的PLDA模型:
$\begin{array}{*{20}{c}} {{{w}_{ij}} = \mu + V{{y}_i} + {{{\textit{z}}}_r}} \end{array}$ | (14) |
其中, 隐变量
使用EM算法训练PLDA模型, 迭代优化完全数据的对数似然函数的期望
$\begin{array}{*{20}{c}} {Q\left( {\theta ,{\theta _{t - 1}}} \right) = {E_y}\left\{ {\mathop \sum \nolimits_{i,j} \log \left[ {p\left( {{{w}_{ij}}{{|}}{{y}_i},\theta } \right)p\left( {{y_i}} \right)} \right]{{|}}{w},{\theta _{t - 1}}} \right\}} \end{array}$ | (15) |
随机初始化矩阵
$\left\{ {\begin{array} {l} E\left( {{{y}_i}} \right) = {\left( {n{{V}^{\rm T}}{{{\Sigma }}^{ - 1}}{V} + {I}} \right)^{ - 1}}{{V}^{\rm T}}{{{\Sigma }}^{ - 1}}{{w}_i}\\ {E\left( {{{y}_i}{{y}_i}^{\rm T}} \right) = {{\left( {n{{V}^{\rm T}}{{{\Sigma }}^{ - 1}}{V} + {I}} \right)}^{ - 1}} + E\left( {{{y}_i}} \right)E{{\left( {{{y}_i}} \right)}^{\rm T}}} \end{array}} \right.$ | (16) |
M步骤中, 更新矩阵
$\left\{ {\begin{array}{l} {V} = \left( {\displaystyle\mathop \sum \nolimits_i {{w}_i}E{{\left( {{{y}_i}} \right)}^{\rm T}}} \right){\left( {\displaystyle\mathop \sum \nolimits_i E\left( {{{y}_i}{{y}_i}^{\rm T}} \right)} \right)^{ - 1}}\\ {\displaystyle\Sigma = \dfrac{1}{N}\displaystyle\mathop \sum \nolimits_i \left( {{{w}_i}{{w}_i}^{\rm T} - {V}E\left( {{{y}_i}} \right){{w}_i}^{\rm T}} \right)} \end{array}} \right.$ | (17) |
其中,
测试阶段, 给定两条待比对的i-vector
$\begin{split} \begin{split} &\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\! score = \log \frac{{p\left( {{{w}_1},{{w}_2}{{|}}{{\cal H}_s}} \right)}}{{p\left( {{{w}_1},{{w}_2}{{|}}{{\cal H}_d}} \right)}}\\ = {{\log}}{\cal N}\left( {\left[ {\begin{array}{*{20}{c}} {{{w}_1}}\\ {{{w}_2}} \end{array}} \right];\left[ {\begin{array}{*{20}{c}} {\mu }\\ {\mu } \end{array}} \right],\left[ {\begin{array}{*{20}{c}} {{{\Sigma }_{\rm {tot}}}}&{{{\Sigma }_{\rm {ac}}}}\\ {{{\Sigma }_{\rm {ac}}}}&{{{\Sigma }_{\rm {tot}}}} \end{array}} \right]} \right)\\ \;\;\; \;\;\;\;\;\;\;\;- {\rm{log}}{\cal N}\left( {\left[ {\begin{array}{*{20}{c}} {{{w}_1}}\\ {{{w}_2}} \end{array}} \right];\left[ {\begin{array}{*{20}{c}} {\mu }\\ {\mu } \end{array}} \right],\left[ {\begin{array}{*{20}{c}} {{{\Sigma }_{\rm {tot}}}}&0\\ 0&{{{\Sigma }_{\rm {tot}}}} \end{array}} \right]} \right) \end{split}\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; \end{split}$ | (18) |
其中,
与1.1节中基于似然比的置信度对比可以发现, PLDA可以比较自然地作为一种置信度计算方法, 以语音整体的i-vector作为输入, 不依赖声学模型和语言模型即可完成似然比检验.
2.4 孤立字语音识别置信度检验实验音节是汉语发音的基本单元, 因此考察i-vector特征对音节的置信度的检测能力, 是该方法能否成功应用于连接词识别置信度检验的基础. 本实验采用IsoWord孤立字数据集, 其包含了50名男性、50名女性、每人1254个有调音节, 覆盖了汉语的全部具有实义的音节, 采样率16 kHz. 随机选取1名男性的语音样本作为测试集, 其余作为训练集. 使用1.1节中的拒绝率和拒绝后的识别准确率评价系统的性能.
本文采用45维MFCC特征, 对输入的单帧语音信号, 去除直流, 预加重(系数取0.98), 加汉明窗(帧长20 ms、帧移10 ms)后, 提取14维Mel倒谱系数, 对相邻帧计算一阶、二阶差分系数, 并加入三者的归一化能量系数.
为了确定理想的模型参数, 本文首先在识别率有代表性的数据样本上进行了调参实验, 调整的参数包括UBM混合分量数和i-vector维度. 可以观察到不同参数的组合对性能有微小的影响. 以第25号孤立字男声样本为例, 实验结果见表1和表2.
根据调参实验结果, 本文在孤立字的置信度判决实验中, UBM模型混合数取128, i-vector维数取100.
在确定了模型参数后, 在训练阶段, 首先训练UBM模型, 对每条语音计算所需的充分统计量, 然后训练i-vector模型的T矩阵. 参照文献[14]中的建议, 使用已知的语音对应的说话内容作为训练标签, 对i-vector预先做LDA降维, 从而初步补偿类间差异. 由于文献[13]中发现i-vector具有较强的非高斯性, 为使其符合前述基于高斯假设的PLDA模型, 参照文中建议对i-vector做白化与长度规整后, 再训练PLDA模型, PLDA因子维度与LDA维度相同(不再做进一步降维). 每条语音的代表i-vector取该语音所有说话人语音样本对应的i-vector的均值. 测试阶段, 将测试语音通过训练集上训练好的UBM模型、T矩阵、LDA矩阵, 得到测试i-vector, 在PLDA模型上与每条语音的代表i-vector逐对计算似然值得分. 部分实验流程使用MSR Identity Toolbox[15]完成.
图1、图2为采用基线系统和i-vector+PLDA对随机两组男声孤立字各1254个发音样本置信度检测的RR-AR曲线. 可以看出, 不论是对于原本识别率较低还是较高的男性语音样本, i-vector+PLDA都能通过拒识提高其性能, 且效果较基线系统有一定的提升.
表3为将RR固定为5%时, 各系统在所有男声样本上轮流训练测试的平均性能, 其中原始无置信度辅助的GMM-HMM孤立字识别系统的平均识别率是89.81%. 可以看出置信度的拒识使系统输出的正确率绝对提高约2%, 且i-vector+PLDA相比基线系统再绝对提高约0.3%.
2.5 连接词短语置信度检验与拒识实验
连接词实验采用的SbPhrase短语语料数据库包含了699条四字短语, 较为均衡地覆盖了所有的汉语音节及音节间的连接关系, 可以较为客观地评测命令词系统的一般性能. 该数据库包含了50名男性、50名女性的录音样本, 采样率16 kHz, 每条短语时长约1 s.
置信度检验实验中, 以前25名男性的所有短语语音作为训练集, 训练GMM-HMM系统, 其余男性语音作为测试集, 并使用置信度对识别结果做后处理. MFCC特征提取与2.4节相同, 根据实验调整i-vector提取参数为512分量UBM、200维i-vector.
图3、图4为随机两个男声连接词短语样本置信度检测的RR-AR曲线.
表4为将RR固定为5%时, 各系统在所有样本上的平均性能, 其中原始GMM-HMM连接词识别系统的平均识别率是95.97%. 与孤立字类似地, 置信度的引入提高了系统的识别性能, 而i-vector+PLDA的效果更佳.
在命令词识别系统中, 对集外词或噪声的有效拒识至关重要, 我们通过实验单独测试了系统的拒识性能. 仍然使用SbPhrase数据库的男声部分, 取数据库中的前300条短语作为集内词训练PLDA模型并确定其阈值, 其余作为集外词进行实验. 除此之外, 采用从CMU NoiseX-92数据集[16]中截取的噪声片段考察系统对噪声的抵抗能力, 该数据集包含了白噪声、工厂噪声、背景说话声等常见噪声类型. 使用虚警率评价系统的性能.
表5 中的结果表明, i-vector+PLDA系统性能良好, 不论对语音类的集外词还是非语音类的干扰噪声都具有较高抗性, 保证了系统的稳健性.
3 融合DTW的置信度判决方法 3.1 i-vector时序鉴别能力分析
在2.1节中已经指出, GMM-UBM模型通过自适应得到每条语音对应的GMM模型, 这种建模方式的一个缺陷是不包含时序信息: 对于仅字序、词序不同的语音, 由于使用了相同或相近的音素, 全局上看, 各自的特征集内其特征分布彼此相似, 因而在这类系统上会体现为相似度较高. 换言之, 虽然i-vector的全局描述能力较好, 但缺乏对其中时序信息的描述, 理论上, 若单独使用i-vector特征, 对于较长的命令词导致鉴别力下降的可能性会增大. 在实际应用中, 这会导致部分与命令词在字序、词序上相似的集外词无法被系统有效拒识, 引发不必要的虚警.
有鉴于i-vector的上述特点, 一种解决方法是利用命令词识别系统在识别时给出的最佳音节分割点, 对组成命令词的每个音节或是单词分别进行确认, 如在汉语系统中可以检验组成命令词的单字, 此时系统对这些单元的分辨能力则至关重要, 这点在2.4节中已经予以验证. 然而, 此种实现依赖于上游的分割结果, 为系统带来了新的困难. 除此之外, 另一种思路则是尝试增强系统本身的时序鉴别能力.
例如, 在i-vector框架下, 一般通过隐马尔科夫模型(Hidden Markov Model, HMM)、长短期记忆网络(Long Short-term Memory, LSTM)等时序相关的模型建模时序特征, 产生新的i-vector或作为已有i-vector的补充. 文献[10]对比了i-vector、d-vector、s-vector三种特征对不同语音特性(如说话人身份、说话速度等)的刻画能力. 其中对于词序特性, 该文通过在两段拼接顺序不同的语音上的分类任务予以验证, 在此实验中i-vector的鉴别效果较差, 接近随机猜测, 说明其几乎没有时序鉴别能力, 而基于LSTM的s-vector效果突出, 因此该文通过拼接二者得到所谓i-s-vector, 在包括词序区分的大部分任务上均取得了最优结果. Hossein等[17]则提出使用HMM代替GMM作为UBM模型的基础, 通过对每个音素训练HMM并拼接, 得到特定语句的HMM模型, 由此模型产生的i-vector与语句的相关性更强.
上述方法通过引入其它时序相关的模型增强i-vector的时序鉴别性能, 其共同局限性在于需要与语句相关的信息, 如每段语句的音素标签, 用于训练对应的HMM或神经网络模型, 而实际应用中我们希望在仅具备录入语音, 没有关于语音内容知识的情况下, 完成系统的训练. 动态时间规整(Dynamic Time Warping, DTW)算法[18]是语音领域的经典方法之一, 其通过对语音序列进行非线性扭曲实现序列间对齐, 从而求取相似度, 算法直观且易于实现, 其约束条件决定其适于衡量时序差异, 且不依赖语音以外的信息. 因此, 本文提出将DTW与原有i-vector+PLDA系统融合, 期望二者融合而成的系统可以兼顾i-vector+PLDA的低错误率和DTW的时序鉴别能力.
3.2 得分计算、似然比校准与系统融合DTW算法产生两段序列之间的相似度得分, 而在很多命令词系统中, 单个词语对应存在多个模板(训练语音片段). 本文中将目标语音在某词语下所有模板上的DTW得分的平均值作为该语音与此词语的相似度.
尽管上述得分与对数似然比同为相似度的体现, 但由于计算方式、统计特性上的差异, 数学上二者并不相容. 本文采用文献[19]中的逻辑回归校准方法, 通过在同源、不同源得分上训练二元逻辑回归模型得到模型系数, 并校准原始得分
$\begin{array}{*{20}{c}} {\log \left( {LR} \right) = \alpha + \beta s} \end{array}$ | (19) |
系统融合采用两系统似然比的连乘, 即对数似然比的简单相加:
$\begin{array}{*{20}{c}} {\log \left( {L{R_m}} \right) = \log \left( {L{R_{\rm {DTW}}}} \right) + \log \left( {L{R_{\rm {PLDA}}}} \right)} \end{array}$ | (20) |
第2.5节实验中使用的SbPhrase数据集不含有实验所需的音素相近但字序不同的短语对, 因此为SbPhrase中前50条短语重新采集语音, 构建小型子数据集SbPhrase-T. 对于每条短语, 除其正序(如“曼彻斯特”)外, 另行采集部分逆序(如“斯特曼彻”)和完全逆序(如“特斯彻曼”)两份语音. 将SbPhrase中前50条短语作为集内词训练i-vector+PLDA系统, 将两种逆序语音作为集外词进行拒识实验.
图5为短语的3种字序在原系统上对数似然比得分的混淆矩阵(confusion matrix), 展示了所有语音在所有正序短语的PLDA模型上的相似度情况. 其中, 为方便横向比较, 横轴每3列对应一条短语, 其下三列依次对应正序、部分逆序、完全逆序语音的得分. 观察对角线可以发现, 两种逆序语音在其对应序号正序模型上的得分总体较高, 说明系统不能将其有效拒识, 再次确认了前述i-vector在时序鉴别能力方面的弱点.
图6为DTW与i-vector+PLDA系统融合后, 新系统上得分的混淆矩阵, 经DTW修正后, 混淆矩阵的对角线更加清晰, 两种逆序语音的得分明显降低, 接近背景(短语不匹配情况)水平.
表6为两种系统对逆序语音拒识的量化实验结果. 数据表明, 相比单i-vector+PLDA系统, 融合系统有效降低了系统在逆序语音上的虚警, 说明DTW得分的引入提高了系统的时序鉴别能力.
4 i-vector+PLDA置信度应用意义分析
相比传统的置信度估计方法, 上文提出的基于i-vector和PLDA以及融合DTW的方法具有两点优势:
其一, 无需训练声学模型及语言模型. 传统方法, 特别是基于后验概率的置信度判决方法, 依赖基本语音识别单元(如音素或音节)声学模型的似然值得分和相应的声学模型. 这些信息常常与特定系统及其使用的声学模型、语言模型相关, 迁移至传统语音识别系统的诸多变种以及未来更新颖的语音识别框架中存在困难. 本文方法训练过程则仅需语音及对应的类别标签, 外部系统不额外提供其他先验的声学和语言模型信息, 一方面使得系统结构直观、易于实现, 另一方面因为无需考虑前端系统的实现细节, 可以独立测试与部署, 达成一定程度的模块化, 使用更加灵活广泛.
其二, 无需提供语句内容相关信息. 实际应用中, 很多命令词系统通过非确定性的命令词加强安全性或保证用户体验. 例如, 用户可以根据个人喜好为智能音箱、手环等智能设备录入自选的唤醒词, 后续通过该词唤醒设备进入工作状态. 此类场景中, 设备在录入阶段无法获知命令词的内容, 因此文献[10, 17]中的方法缺乏训练所需的标签. 本文方法通过DTW完成时序信息的补充, 避免了对此类“标签”的依赖, 可以应对较为复杂多变的命令词. 在电话银行、智能家居等应用中, 通过本文方法对语音识别系统的结果进行验证, 既有助于降低错误, 提升用户体验, 同时仍不失原系统交互过程中的灵活性, 对命令词系统的改进具有实际价值.
此外, 第2节的置信度检验实验结果中, 本文方法辅助语音识别系统对连接词识别率的提升相比孤立字更为显著. 越长的语音片段, 其中包含的语音内容信息越丰富, 通过相应增加UBM混合数和i-vector维度, 得到的i-vector能够充分包含此信息, 而特征信息量的增加也有益于PLDA对有用信息的分离与鉴别. 因此, 相比孤立字, 本文方法更适合用于词语、短句等较长的语音.
5 结束语本文提出将i-vector以及PLDA模型用于置信度判决. i-vector语音特征包含了包括说话内容在内的各种差异信息, 利用PLDA可以中和其他信息的影响, 有效鉴别说话内容, 且其形式上符合基于似然比的置信度分析, 在孤立字、连接词实验中体现出了良好潜力. 通过与DTW融合, 补充缺失的时序信息, 得到不依赖声学、语言模型以及语句标签的置信度分析方法, 在应用中较传统的置信度分析方法有其独特优势.
[1] |
Jiang H. Confidence measures for speech recognition: A survey. Speech Communication, 2005, 45(4): 455-470. DOI:10.1016/j.specom.2004.12.004 |
[2] |
Wessel F, Schluter R, Macherey K, et al. Confidence measures for large vocabulary continuous speech recognition. IEEE Transactions on Speech and Audio Processing, 2001, 9(3): 288-298. DOI:10.1109/89.906002 |
[3] |
Rahim MG, Lee CH, Juang BH. Discriminative utterance verification for connected digits recognition. IEEE Transactions on Speech and Audio Processing, 1997, 5(3): 266-277. DOI:10.1109/89.568733 |
[4] |
Dehak N, Kenny PJ, Dehak R, et al. Front-end factor analysis for speaker verification. IEEE Transactions on Audio, Speech, and Language Processing, 2011, 19(4): 788-798. DOI:10.1109/TASL.2010.2064307 |
[5] |
Prince SJD, Elder JH. Probabilistic linear discriminant analysis for inferences about identity. 2007 IEEE 11th International Conference on Computer Vision. Rio de Janeiro, Brazil. 2007. 1–8.
|
[6] |
Reynolds DA, Quatieri TF, Dunn RB. Speaker verification using adapted Gaussian mixture models. Digital Signal Processing, 2000, 10(1–3): 19-41. |
[7] |
Campbell WM, Sturim DE, Reynolds DA. Support vector machines using GMM supervectors for speaker verification. IEEE Signal Processing Letters, 2006, 13(5): 308-311. DOI:10.1109/LSP.2006.870086 |
[8] |
Kenny P, Boulianne G, Ouellet P, et al. Joint factor analysis versus eigenchannels in speaker recognition. IEEE Transactions on Audio, Speech, and Language Processing, 2007, 15(4): 1435-1447. DOI:10.1109/TASL.2006.881693 |
[9] |
Dehak N. Discriminative and generative approaches for long-and short-term speaker characteristics modeling: Application to speaker verification[Ph.D. thesis]. Montreal, QC: École de Technologie Supérieure, 2009.
|
[10] |
Wang S, Qian YM, Yu K. What does the speaker embedding encode? Interspeech 2017. Stockholm, Sweden. 2017.1497–1501.
|
[11] |
Dehak N, Shum S. Low-dimensional speech representation based on factor analysis and its applications. Interspeech 2011. Florence, Italy. 2011.
|
[12] |
Fisher RA. The use of multiple measurements in taxonomic problems. Annals of Eugenics, 1936, 7(2): 179-188. DOI:10.1111/j.1469-1809.1936.tb02137.x |
[13] |
Garcia-Romero D, Espy-Wilson CY. Analysis of i-vector length normalization in speaker recognition systems. 12th Annual Conference of the International Speech Communication Association. Florence, Italy. 2011. 249–252.
|
[14] |
Matějka P, Glembek O, Castaldo F, et al. Full-covariance UBM and heavy-tailed PLDA in i-vector speaker verification. 2011 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). Prague, Czech Republic. 2011. 4828–4831.
|
[15] |
Sadjadi SO, Slaney M, Heck AL. MSR identity toolbox v1.0: A MATLAB toolbox for speaker recognition research. Speech and Language Processing Technical Committee Newsletter, 2013, 1(4): 1-32. |
[16] |
Varga A, Steeneken HJM. Assessment for automatic speech recognition: II. NOISEX-92: A database and an experiment to study the effect of additive noise on speech recognition sys-tems. Speech Communication, 1993, 12(3): 247-251. DOI:10.1016/0167-6393(93)90095-3 |
[17] |
Zeinali H, Sameti H, Burget L. HMM-based phrase-independent i-vector extractor for text-dependent speaker verification. IEEE/ACM Transactions on Audio, Speech, and Language Processing, 2017, 25(7): 1421-1435. DOI:10.1109/TASLP.2017.2694708 |
[18] |
Sakoe H, Chiba S. Dynamic programming algorithm optimization for spoken word recognition. IEEE Transactions on Acoustics, Speech, and Signal Processing, 1978, 26(1): 43-49. DOI:10.1109/TASSP.1978.1163055 |
[19] |
Morrison GS. Tutorial on logistic-regression calibration and fusion: Converting a score to a likelihood ratio. Australian Journal of Forensic Sciences, 2013, 45(2): 173-197. DOI:10.1080/00450618.2012.733025 |