HMM结构改进
在前一节中,基本的声学 H M M HMM HMM及其在 A S R ASR ASR系统中的使用已经被解释。虽然这些简单的 H M M HMM HMM可以满足小词汇量和类似的有限复杂性任务,但当用于更复杂和更大的词汇量任务时,如广播新闻转录和听写,它们的表现就不太好。本节描述一些用于提高 A S R ASR ASR系统性能的扩展,并允许将它们应用到这些更有趣和更具挑战性的领域。首先介绍了使用动态贝叶斯网络来描述可能的扩展。然后详细讨论其中的一些扩展。特别地,提出了高斯混合模型、有效协方差模型和特征投影方案的使用。最后,简要讨论了使用 H M M HMM HMM生成语音而不是识别语音的问题。
3.1 动态贝叶斯网络
在基于
H
M
M
HMM
HMM识别器的架构图中,
H
M
M
HMM
HMM被描述为一个生成模型,对于一个典型的音素有三个发射状态,如图
3.1
3.1
3.1所示。图
3.1
3.1
3.1中还显示了一种称为动态贝叶斯网络
(
D
B
N
)
(DBN)
(DBN)的替代、补充的图形表示,它强调了模型的条件依赖性,对于描述对基本
H
M
M
HMM
HMM结构的各种扩展特别有用。在这里使用的
D
B
N
DBN
DBN符号中,方块表示离散变量;圆圈表示连续变量;阴影表示观察到的变量;没有遮挡代表一个未观测到的变量。变量之间没有弧线表示条件独立性。因此,图
3.1
3.1
3.1表明,给定生成
H
M
M
HMM
HMM的未观察、隐藏的状态,由HMM生成的观察是有条件独立的。
使用
D
B
N
DBN
DBN的一个理想属性是,它可以简单地显示扩展如何修改模型的条件独立假设。有两种方法可以结合使用来扩展图
3.1
3.1
3.1中的
H
M
M
HMM
HMM结构:添加额外的未观察到的变量;并在变量之间添加额外的依赖弧。
图
3.2
3.2
3.2显示了在观测之间添加额外弧线的例子,这里的观测分布依赖于前两个观测,以及生成的状态。 该
D
B
N
DBN
DBN使用显式时间相关模型、向量预测器和埋藏马尔科夫模型描述
H
M
M
s
HMMs
HMMs。 虽然这是改进
H
M
M
HMM
HMM的一个有趣的方向,但主流的最先进的系统还没有采用这种方法。
不是添加弧,而是添加额外的未观察到的、潜在的或隐藏的变量。为了计算概率,这些隐藏变量必须被边缘化,就像
H
M
M
HMM
HMM的未观测状态序列一样。对于连续变量,这需要对隐变量的所有值进行连续积分,而对于离散变量,则需要对所有值进行求和。潜在变量的两种可能形式如图
3.3
3.3
3.3所示。在这两种情况下,模型的时间依赖性是不变的,其中离散状态是有条件地独立于所有其他状态的,允许使用标准的
V
i
t
e
r
b
i
Viterbi
Viterbi解码例程。在第一种情况下,观测结果依赖于一个离散的潜在变量。这是具有高斯混合模型
(
G
M
M
)
(GMM)
(GMM)状态输出分布的
H
M
M
HMM
HMM的
D
B
N
DBN
DBN。在第二种情况下,观测结果依赖于一个连续的潜在变量。这是具有因子分析协方差矩阵的
H
M
M
HMM
HMM的
D
B
N
DBN
DBN。下面将更详细地描述这两种方法。
3.2 高斯混合模型
标准 H M M HMM HMM最常用的扩展之一是将状态输出分布建模为混合模型。 在 A r c h i t e c t u r e o f a n H M M − B a s e d R e c o g n i s e r Architecture\ of\ an\ HMM-Based\ Recogniser Architecture of an HMM−Based Recogniser,采用单一高斯分布建模状态输出分布。因此,该模型假设观测到的特征向量是对称的、单峰的。实际上,这种情况很少发生。例如,说话人、口音和性别差异往往会在数据中创建多个模式。为了解决这个问题,可以将单一的高斯状态输出分布替换为混合的高斯分布,这是一种高度灵活的分布,能够建模,例如非对称和多模态分布数据。
如前一节所述,混合模型可以看作是为系统增加了一个额外的离散潜变量。状态
s
j
s_j
sj的可能性现在是通过将所有由其先验加权的分量可能性相加而得到的。
b
j
(
y
)
=
∑
m
=
1
M
c
j
m
N
(
y
;
μ
j
m
,
∑
(
j
m
)
)
(
3.1
)
b_j(y)=\sum^M_{m=1}c_{jm}\Nu(y;\mu^{jm},\sum\nolimits^{(jm)})\qquad(3.1)
bj(y)=m=1∑McjmN(y;μjm,∑(jm))(3.1)
其中
c
j
m
c_{jm}
cjm为状态
s
j
s_j
sj中
m
m
m分量的先验概率。这些先验满足有效概率质量函数
(
P
M
F
)
(PMF)
(PMF)的标准约束。
∑
m
=
1
M
c
j
m
=
1
(
3.2
)
\sum^M_{m=1}c_{jm}=1\qquad(3.2)
m=1∑Mcjm=1(3.2)
这是混合建模的一般技术的一个例子。混合模型的每个
M
M
M分量都是一个高斯概率密度函数
(
P
D
F
)
(PDF)
(PDF)。
由于声学模型中增加了一个附加的潜在变量,因此需要修改之前描述的EM算法的形式。这里使用的是状态/组件观察,而不是根据状态观察对来考虑完整的数据集。
然后,模型参数的估计遵循与单个组件情况相同的形式。对于状态
s
j
s_j
sj的高斯分量
m
m
m的均值,
s
j
m
s_{jm}
sjm,
μ
(
j
m
)
^
=
∑
r
=
1
R
∑
t
=
1
T
(
r
)
γ
t
(
r
j
m
)
y
t
(
r
)
∑
r
=
1
R
∑
t
=
1
T
(
r
)
γ
t
(
r
j
m
)
(
3.3
)
\hat{\mu^{(jm)}} = \frac{ \sum\nolimits^R_{r=1}\sum\nolimits^{T^{(r)}}_{t=1}\gamma_t^{(rjm)}y_t^{(r)} }{ \sum^R_{r=1}\sum\nolimits^{T^{(r)}}_{t=1}\gamma_t^{(rjm)} }\qquad(3.3)
μ(jm)^=∑r=1R∑t=1T(r)γt(rjm)∑r=1R∑t=1T(r)γt(rjm)yt(r)(3.3)
其中
γ
(
r
j
m
)
=
P
(
θ
t
=
s
j
m
∣
Y
(
r
)
;
λ
)
\gamma^{(rjm)}=P(\theta_t=s_{jm}|Y^{(r)};\lambda)
γ(rjm)=P(θt=sjm∣Y(r);λ)是状态
s
j
s_j
sj的
m
m
m分量在
t
t
t时刻产生序列
Y
(
r
)
Y^{(r)}
Y(r)观测值的概率。
R
R
R是训练序列的数量。分量先验以类似于转移概率的方式估计。
当使用GMMs去建模状态输出分布,通常采用方差向下取整。这可以防止系统的方差变得过小,例如,当一个分量建模一个非常少的紧密封装的观测值时。这提高了一般化。
使用GMM增加了计算开销,因为当使用对数算法时,需要一系列的对数加法来计算GMM的似然。为了提高效率,只包括对总可能性有“合理”贡献的部分。为了进一步减少计算负荷,GMM似然可以简单地用所有分量的最大值来近似(通过先验加权)。
此外,有必要确定系统中每个状态的分量数量。为此采取了一些办法,最简单的方法是对系统中的所有状态使用相同数量的分量,并使用保留的数据来确定最优的数量。一种流行的替代方法是基于贝叶斯信息准则 ( B I C ) (BIC) (BIC)。另一种方法是使分配给状态的组件数量成为分配给状态的观察数量的函数。
3.3 Feature Projections
在基于 H M M HMM HMM的识别器体系结构中,动态第一和第二差分参数,即所谓的delta和delta - delta参数,被添加到静态特征参数中,以克服与 H M M HMM HMM相关的条件独立性假设的局限性。在此基础上,利用离散余弦变换 ( D C T ) (DCT) (DCT)近似 解相关 特征向量,改善了特征向量的对角协方差逼近,降低了特征向量的维数。
还可以使用数据驱动的方法去关联和降低特性的维度。标准方法是使用线性变换,
y
t
=
A
[
p
]
y
~
t
,
(
3.4
)
y_t=A_{[p]}\tilde{y}_t,\qquad(3.4)
yt=A[p]y~t,(3.4)
其中
A
[
p
]
A_{[p]}
A[p]是
p
×
d
p × d
p×d线性变换,
d
d
d是源特征向量
y
~
t
\tilde{y}_t
y~t的维数,
p
p
p是转换的特征向量
y
t
y_t
yt的大小。
像这样的特征向量转换的详细形式取决于多种选择。首先, y ~ t \tilde{y}_t y~t的结构必须被决定,并且,当需要时,将被使用的类标签,例如音素、状态或高斯分量标签。其次,必须确定投影数据的维数 p p p。最后,必须指定用于估计 A [ p ] A_{[p]} A[p]的准则。
在预测投影时,一个重要的问题是是否使用观测值的类别标签,即,是否应该以监督或非监督的方式预测投影。一般来说,有监督的方法产生更好的预测,因为它可以预估一个转换,以改善类之间的区别。相反,在无监督方法中,只能使用观测值的一般属性,如方差。然而,有监督方案通常比无监督方案在计算上更昂贵。统计数据,例如平均数和协方差矩阵需要每个类标签,而无监督方案有效地只有一个类。
要投影的特征通常是基于标准的
M
F
C
C
MFCC
MFCC,或
P
L
P
PLP
PLP,特征向量。然而,
d
e
l
t
a
delta
delta和
d
e
l
t
a
−
d
e
l
t
a
delta-delta
delta−delta参数的处理是不同的。一种方法是将相邻的静态向量拼接在一起,形成一个典型的复合向量
9
9
9帧:
y
~
t
=
[
y
t
−
4
s
T
⋯
y
t
s
T
⋯
y
t
+
4
s
T
]
T
.
(
3.5
)
\tilde{y}_t={[ {y^s_{t-4}}^T \cdots {y^s_t}^T \cdots {y^s_{t+4}}^T ] }^T.\qquad(3.5)
y~t=[yt−4sT⋯ytsT⋯yt+4sT]T.(3.5)
另一种方法是用三阶动态参数(
d
e
l
t
a
−
d
e
l
t
a
delta - delta
delta−delta的差值)扩展静态、
d
e
l
t
a
delta
delta和
d
e
l
t
a
−
d
e
l
t
a
delta - delta
delta−delta参数。两者都已被用于大词汇的语音识别系统。投影特征向量的维数通常是由经验决定的,因为只有一个参数需要调优。在R. Haeb-Umbach and H. Ney, “Linear discriminant analysis for improved large vocabulary continuous speech recognition,” in Proceedings of ICASSP, pp. 13–16, Tokyo, 1992.}中,比较了许多可能的类定义、音素、状态或组件,对监督投影方案进行了比较。类的选择很重要,因为转换试图确保每个类都尽可能地与所有其他类分离。研究表明,使用状态和组件级别类的性能是相似的,而且两者都优于更高级别的标签,如音素或单词。在实践中,绝大多数系统使用组件级类,因为,正如后面讨论的,这改进了对角协方差矩阵的假设。
估计变换的最简单形式的标准是主组件分析
(
P
C
A
)
(PCA)
(PCA)。这是一种无监督投影方案,因此不使用类别标签。
P
C
A
PCA
PCA变换的估计可以通过找到
p
p
p行标准正交矩阵
A
A
A得到。
F
=
\mathscr{F}=
F=