《VQMIVC: Vector Quantization and Mutual Information-Based Unsupervised Speech Representation Disentanglement for One-shot Voice Conversion》论文学习
摘要
通过语音表示解缠,可以有效地实现任意说话人之间的一次性的语音转换(one-shot VC)。现有的工作在训练时往往忽略了不同语音表征之间的相关性,导致内容信息泄漏到说话人表征中,降低了VC的性能。为了缓解这一问题,我们使用矢量量化(VQ)进行内容编码,并在训练过程中引入交互信息(MI)作为相关性度量,通过以无监督的方式减少内容、说话者和音调表示的相互依赖性,实现适当的解缠。实验结果表明,该方法在学习有效的解缠语音表示时,保留了源语言内容和语调变化,同时捕捉了目标说话人的特征。与目前最先进的one-shot VC系统相比,所提出的方法获得了更高的语音自然度和说话人相似度。
关键词:矢量量化,交互信息,无监督解缠,一次性的,语音转换
1 介绍
语音转换(VC)是一种技术,用于修改语音的副语言因素从源说话人听起来像目标说话人。副语言因素包括说话人身份(《An overview of voice conversion systems, Speech Communication》)、韵律(《Transformation of speaker characteristics for voice conversion》)、口音(《Non-native speech conversion with consistencyaware recursive network and generative adversarial network》)等。在本文中,我们重点研究了在一种场景下(即只给出一个目标说话人的语音作为参考)说话人身份在任意说话人之间的转换(《Voice conversion across arbitrary speakers based on a single target-speaker utterance》,《Oneshot voice conversion with global speaker embeddings》)。
以前的工作使用基于语音表示解缠(SRD)的方法(《Autovc: Zero-shot voice style transfer with only autoencoder loss》,《One-shot voice conversion by separating speaker and content representations with instance normalization》,《Vqvc+: One-shot voice conversion by vector quantization and u-net architecture》)试图通过将语音分解为说话者和内容表示来解决one-shot VC,然后通过将源说话人的表示形式转换为目标说话人的表示形式,实现说话人身份的转换。然而,SRD的程度难以衡量。此外,以往的方法在训练时一般没有对说话人和内容表示之间施加相关约束,导致内容信息泄漏到说话者表示中,导致VC性能下降。为了缓解这些问题,本文提出了基于矢量量化和互信息的VC (VQMIVC)方法,其中互信息(MI)度量了不同表示之间的依赖关系,可以有效地集成到训练过程中,以无监督的方式实现SRD。具体来说,我们首先将语音分解为内容、说话者和音高三个因素,然后提出一个VC系统,由四个部分组成:(1)使用对比预测编码矢量量化(VQCPC)的内容编码器(《Vector-quantized neural networks for acoustic unit discovery in the zerospeech 2020 challenge》,《vq-wav2vec: Selfsupervised learning of discrete speech representations》),从声学特征中提取帧级内容表示;(2)说话人编码器,其吸收声学特征以生成单个固定维向量作为说话人表示;(3)基音提取器,用于计算语音级的归一化基频(F0)作为基音表示;(4)将内容、说话人和音调表示映射到声学特征的解码器。在训练过程中,通过最小化VQCPC、重构和MI损失来优化VC系统。VQCPC旨在探索语音的局部结构,而MI减少了不同语音表示的相互依赖性。在推理过程中,仅用单个目标语的目标说话人表示替换源说话人表示即可实现一次one-shot VC。这项工作的主要贡献在于采用VQCPC和MI的结合实现SRD,而不需要任何文本转录或说话人标签等监督信息。我们进行了大量的实验,深入分析了MI的重要性,增强SRD可以显著缓解信息泄漏问题。
2 相关工作
VC的性能严重依赖于目标说话者的语音数据的可用性来进行训练(《Voice conversion based on maximum-likelihood estimation of spectral parameter trajectory》,《Voice conversion using partial least squares regression》,《Inca algorithm for training voice conversion systems from nonparallel corpora》,《Phonetic posteriorgrams for many-to-one voice conversion without parallel data training》,《Voice conversion from unaligned corpora using variational autoencoding wasserstein generative adversarial networks》,《Parallel-data-free voice conversion using cycle-consistent adversarial networks》,《Stargan-vc: Non-parallel many-to-many voice conversion using star generative adversarial networks》)。因此,one-shot VC的挑战在于在训练中可能看不到的任意说话人之间进行转换,并且只有一个目标说话人的语音可供参考。以前的one-shot VC方法都是基于SRD的,其目的是尽可能地将说话人信息与说话内容分离。相关工作包括:可调的信息约束瓶颈(《Autovc: Zero-shot voice style transfer with only autoencoder loss》,《F0-consistent many-to-many non-parallel voice conversion via conditional autoencoder》,《Unsupervised speech decomposition via triple information bottleneck》)、实例归一化技术(《One-shot voice conversion by separating speaker and content representations with instance normalization》,《Again-vc: A one-shot voice conversion using activation guidance and adaptive instance normalization》)和矢量量化(VQ)(《Vqvc+: One-shot voice conversion by vector quantization and u-net architecture》,《Unsupervised speech representation learning using wavenet autoencoders》)。我们采用VQ的改进版本VQCPC(《Vector-quantized neural networks for acoustic unit discovery in the zerospeech 2020 challenge》,《vq-wav2vec: Selfsupervised learning of discrete speech representations》)来提取准确的内容表示。不同语音表示之间没有明确的约束,容易导致信息泄露,降低了VC的性能。我们从信息理论(《Mutual information analysis》)中得到启示,将MI作为约束变量间相关性的正则化器。对于分布未知的变量,MI计算具有挑战性,因此在基于SRD的语音任务中(《Learning speaker representations with mutual information》,《Intra-class variation reduction of speaker representation in disentanglement framework》,《Unsupervised style and content separation by minimizing mutual information for speech synthesis》),人们探索了各种方法来估计MI下界(《Estimating divergence functionals and the likelihood ratio by convex risk minimization》,《Noise-contrastive estimation: A new estimation principle for unnormalized statistical models》,《Mutual information neural estimation》)。为了保证MI值的降低,我们建议使用变分对比对数上界(vCLUB)(《Club: A contrastive log-ratio upper bound of mutual information》)。而最近的一项研究(《Improving zero-shot voice style transfer via disentangled representation learning》)为VC采用MI,使用说话人标签作为学习说话人表征的监督我们提出的方法与(《Improving zero-shot voice style transfer via disentangled representation learning》)的不同之处是结合了VQCPC和MI进行完全无监督训练,并结合了音高表征来保持源语调变化。
3 提出的方法
本节首先介绍了VQMIVC方法的系统架构,然后详细阐述了将MI最小化集成到训练过程中,最后展示了如何实现one-shot VC。
3.1 VQMIVC系统体系结构
如图1所示,提出的VQMIVC系统包括四个模块:内容编码器、说话人编码器、基音提取器和解码器。前三个模块分别从输入语音中提取内容、说话者和基音表示;而第四个模块,解码器,将这些表征映射回声学特征。假设有
K
K
K个话语,我们使用梅尔频谱图作为声学特征,并从每个语音中随机选取
T
T
T帧进行训练。第
k
t
h
k^{th}
kth个梅尔谱图记为
X
k
=
{
x
k
,
1
,
x
k
,
2
,
.
.
.
,
x
k
,
T
}
X_k=\{ x_{k,1},x_{k,2},...,x_{k,T} \}
Xk={xk,1,xk,2,...,xk,T}。
内容编码器
θ
c
\theta_c
θc:
内容编码器争取使用VQCPC从
X
k
X_k
Xk中提取语言内容信息,如图2所示,其中包含两个网络h-net:
X
k
→
Z
k
X_k \to Z_k
Xk→Zk 和g-net:
Z
^
k
→
R
k
\hat{Z}_k \to R_k
Z^k→Rk 和VQ操作
q
q
q:
Z
k
→
Z
^
k
Z_k \to \hat{Z}_k
Zk→Z^k。h-net利用
X
k
X_k
Xk推导出密集特征序列
Z
k
=
{
z
k
,
1
,
z
k
,
2
,
.
.
.
,
z
k
,
T
/
2
}
Z_k=\{ z_{k,1},z_{k,2},...,z_{k,T/2} \}
Zk={zk,1,zk,2,...,zk,T/2},且长度从
T
T
T减少到
T
/
2
T/2
T/2。然后量化器
q
q
q利用可训练码本
B
B
B将
Z
k
Z_k
Zk离散为
Z
^
k
=
{
z
^
k
,
1
,
z
^
k
,
2
,
.
.
.
,
z
^
k
,
T
/
2
}
\hat{Z}_k=\{ \hat{z}_{k,1},\hat{z}_{k,2},...,\hat{z}_{k,T/2} \}
Z^k={z^k,1,z^k,2,...,z^k,T/2},且
z
^
k
,
t
∈
B
\hat{z}_{k,t} \in B
z^k,t∈B是最接近
z
k
,
t
z_{k,t}
zk,t的向量。VQ在
Z
k
Z_k
Zk中引入信息瓶颈,去除不必要的细节,使
Z
^
k
\hat{Z}_k
Z^k与底层语言信息相关联。然后通过最小化VQ损失(《Vector-quantized neural networks for acoustic unit discovery in the zerospeech 2020 challenge》)来训练内容编码器
θ
c
\theta_c
θc。
L
V
Q
=
2
K
T
∑
k
=
1
K
∑
t
=
1
T
/
2
∣
∣
z
k
,
t
−
s
g
(
z
^
k
,
t
)
∣
∣
2
2
(1)
L_{VQ}=\frac {2} {KT} \sum^K_{k=1} \sum^{T/2}_{t=1} || z_{k,t} - sg(\hat{z}_{k,t}) ||^2_2 \tag{1}
LVQ=KT2k=1∑Kt=1∑T/2∣∣zk,t−sg(z^k,t)∣∣22(1) 式中,
s
g
(
⋅
)
sg(·)
sg(⋅)为停止梯度算子。为了进一步鼓励
Z
^
k
\hat{Z}_k
Z^k捕捉局部结构,在
Z
^
k
\hat{Z}_k
Z^k中加入基于RNN的
g
−
n
e
t
g-net
g−net获取聚合
R
k
=
{
r
k
,
1
,
r
k
,
2
,
.
.
.
,
r
k
,
T
/
2
}
R_k=\{ r_{k,1},r_{k,2},...,r_{k,T/2} \}
Rk={rk,1,rk,2,...,rk,T/2},采用对比预测编码(CPC)。给定
r
k
,
t
r_{k,t}
rk,t,训练模型通过最小化InfoNCE损失(《Representation learning with contrastive predictive coding》)来区分
m
m
m步后的正样本
z
^
k
,
t
+
m
\hat{z}_{k,t+m}
z^k,t+m和从集合
Ω
\Omega_{}
Ω中提取的负样本:
L
C
P
C
=
−
1
K
T
′
M
∑
k
=
1
K
∑
t
=
1
T
′
∑
m
=
1
M
l
o
g
[
e
x
p
(
z
^
k
,
t
+
m
T
W
m
r
k
,
t
)
∑
z
∈
Ω
k
,
t
,
m
e
x
p
(
z
T
W
m
r
k
,
t
)
]
(2)
L_{CPC}=- \frac {1} {KT'M} \sum^K_{k=1} \sum_{t=1}^{T'} \sum^M_{m=1}log[ \frac {exp(\hat{z}^T_{k,t+m}W_m r_{k,t})} {\sum_{z \in \Omega_{k,t,m}} exp(z^T W_m r_{k,t})} ] \tag{2}
LCPC=−KT′M1k=1∑Kt=1∑T′m=1∑Mlog[∑z∈Ωk,t,mexp(zTWmrk,t)exp(z^k,t+mTWmrk,t)](2) 其中
T
′
=
T
/
2
−
M
,
W
m
(
1
,
2
,
.
.
.
,
M
)
T' = T/2-M, W_m(1,2,...,M)
T′=T/2−M,Wm(1,2,...,M)为可训练投影矩阵。通过预测具有概率对比损失(2)的未来样本,跨越多个时间步的局部特征(如音素)被编码到
Z
^
k
=
f
(
X
k
:
θ
c
)
\hat{Z}_k=f(X_k:\theta_c)
Z^k=f(Xk:θc)中,
Z
^
k
=
f
(
X
k
:
θ
c
)
\hat{Z}_k=f(X_k:\theta_c)
Z^k=f(Xk:θc)是用于准确重构语言内容的内容表示。在训练过程中,从当前话语中随机抽取样本,形成负样本集
Ω
k
,
t
,
m
\Omega_{k,t,m}
Ωk,t,m。
说话人编码器
θ
s
\theta_s
θs:说话人编码器接收
X
k
X_k
Xk,生成矢量
s
k
=
f
(
X
k
;
θ
s
)
s_k=f(X_k;\theta_s)
sk=f(Xk;θs),用于说话人表示。
s
k
s_k
sk通过捕获全局语音特征来控制所生成语音的说话人身份。
基音提取器:音高表征预计包含语调变化,但不包含内容和说话人信息,因此我们从波形中提取
F
0
F_0
F0,并对每个语音独立进行
z
z
z归一化。在我们的实验中,我们采用对数归一化
F
0
(
l
o
g
−
F
0
)
F_0 (log-F_0)
F0(log−F0)作为
P
k
=
(
p
k
,
1
,
p
k
,
2
,
.
.
.
,
p
k
,
T
)
P_k=(p_{k,1},p_{k,2},...,p_{k,T})
Pk=(pk,1,pk,2,...,pk,T),它是与说话人无关的,因此说话者编码器被迫提供说话人的信息,如音域等。
解码器
θ
d
\theta_d
θd:解码器用于将内容、说话人和音调表示映射到梅尔频谱图。分别对
Z
^
k
\hat{Z}_k
Z^k和
s
k
s_k
sk进行基于上采样(
×
2
\times 2
×2)和重复(
×
T
\times T
×T)的线性插值,以
p
k
p_k
pk作为解码器的输入,生成梅尔频谱图
X
^
k
=
{
x
^
k
,
1
,
x
^
k
,
2
,
.
.
.
,
x
^
k
,
T
}
\hat{X}_k=\{ \hat{x}_{k,1},\hat{x}_{k,2},...,\hat{x}_{k,T} \}
X^k={x^k,1,x^k,2,...,x^k,T}。解码器与内容编码器和说话人编码器联合训练,最大限度地减少重建损失:
L
R
E
C
=
1
K
T
∑
k
=
1
K
∑
t
=
1
T
[
∣
∣
x
^
t
−
x
t
∣
∣
1
+
∣
∣
x
^
t
−
x
t
∣
∣
2
]
(3)
L_{REC}=\frac {1} {KT} \sum^K_{k=1} \sum^T_{t=1}[||\hat{x}_t - x_t||_1 + ||\hat{x}_t - x_t||_2] \tag{3}
LREC=KT1k=1∑Kt=1∑T[∣∣x^t−xt∣∣1+∣∣x^t−xt∣∣2](3)
3.2 MI最小化集成到VQMIVC训练中
给定随机变量
u
u
u和
v
v
v,MI为其联合分布和边缘分布的Kullback-Leibler (KL)散度
I
(
u
,
v
)
=
D
K
L
(
P
(
u
,
v
)
;
P
(
u
)
P
(
v
)
)
I(u,v)=D_{KL}(P(u,v);P(u)P(v))
I(u,v)=DKL(P(u,v);P(u)P(v)),我们采用vCLUB(《Club: A contrastive log-ratio upper bound of mutual information》)计算MI的上界为:
I
(
u
,
v
)
=
E
P
(
u
,
v
)
[
l
o
g
Q
θ
u
,
v
(
u
∣
v
)
]
−
E
P
(
u
)
E
P
(
v
)
[
l
o
g
Q
θ
u
,
v
(
u
∣
v
)
]
(4)
I(u,v)=E_{P(u,v)}[logQ_{\theta_{u,v}}(u|v)]-E_{P(u)}E_{P(v)}[logQ_{\theta_{u,v}}(u|v)] \tag{4}
I(u,v)=EP(u,v)[logQθu,v(u∣v)]−EP(u)EP(v)[logQθu,v(u∣v)](4) 其中
u
,
v
∈
{
Z
^
,
s
,
p
}
u,v \in \{ \hat{Z}, s, p \}
u,v∈{Z^,s,p},
Z
^
\hat{Z}
Z^,
s
s
s和
p
p
p分别是内容,说话人和基音特征,
Q
θ
u
,
v
(
u
∣
v
)
Q_{\theta_{u,v}}(u|v)
Qθu,v(u∣v)是真实的变分近似可以参数化后的
u
,
v
u,v
u,v和网络
θ
u
,
v
\theta_{u,v}
θu,v。给出了vCLUB在不同语音表示之间的无偏估计:
I
^
(
Z
^
,
s
)
=
2
K
2
T
∑
k
=
1
K
∑
l
=
1
K
∑
t
=
1
T
/
2
[
l
o
g
Q
θ
z
^
,
s
(
z
^
k
,
t
∣
s
k
)
−
l
o
g
Q
θ
z
^
,
s
(
z
^
l
,
t
∣
s
k
)
]
(5)
\hat{I}(\hat{Z},s)=\frac {2} {K^2T} \sum^K_{k=1} \sum^K_{l=1} \sum^{T/2}_{t=1} [logQ_{\theta_{\hat{z},s}}(\hat{z}_{k,t}|s_k)-logQ_{\theta_{\hat{z},s}}(\hat{z}_{l,t}|s_k)] \tag{5}
I^(Z^,s)=K2T2k=1∑Kl=1∑Kt=1∑T/2[logQθz^,s(z^k,t∣sk)−logQθz^,s(z^l,t∣sk)](5)
I
^
(
p
,
s
)
=
1
K
2
T
∑
k
=
1
K
∑
l
=
1
K
∑
t
=
1
T
[
l
o
g
Q
θ
p
,
s
(
p
k
,
t
∣
s
k
)
−
l
o
g
Q
θ
z
^
,
s
(
p
l
,
t
∣
s
k
)
]
(6)
\hat{I}(p,s)=\frac {1} {K^2T} \sum^K_{k=1} \sum^K_{l=1} \sum^{T}_{t=1} [logQ_{\theta_{p,s}}(p_{k,t}|s_k)-logQ_{\theta_{\hat{z},s}}(p_{l,t}|s_k)] \tag{6}
I^(p,s)=K2T1k=1∑Kl=1∑Kt=1∑T[logQθp,s(pk,t∣sk)−logQθz^,s(pl,t∣sk)](6)
I
^
(
Z
^
,
p
)
=
2
K
2
T
∑
k
=
1
K
∑
l
=
1
K
∑
t
=
1
T
/
2
[
l
o
g
Q
θ
z
^
,
p
(
z
^
k
,
t
∣
p
^
k
,
t
)
−
l
o
g
Q
θ
z
^
,
p
(
z
^
l
,
t
∣
p
^
k
,
t
)
]
(7)
\hat{I}(\hat{Z},p)=\frac {2} {K^2T} \sum^K_{k=1} \sum^K_{l=1} \sum^{T/2}_{t=1} [logQ_{\theta_{\hat{z},p}}(\hat{z}_{k,t}|\hat{p}_{k,t})-logQ_{\theta_{\hat{z},p}}(\hat{z}_{l,t}|\hat{p}_{k,t})] \tag{7}
I^(Z^,p)=K2T2k=1∑Kl=1∑Kt=1∑T/2[logQθz^,p(z^k,t∣p^k,t)−logQθz^,p(z^l,t∣p^k,t)](7) 其中
p
^
k
,
t
=
(
p
k
,
2
t
−
1
+
p
k
,
2
t
)
/
2
\hat{p}_{k,t} = (p_{k,2t-1}+p_{k,2t})/2
p^k,t=(pk,2t−1+pk,2t)/2。公式4通过良好的变分逼近,提供了一个可靠的MI上界。因此,我们可以通过最小化(5)-(7)来降低不同语音表示之间的相关性,总MI损失为:
L
M
I
=
I
^
(
Z
^
,
s
)
+
I
^
(
Z
^
,
p
)
+
I
^
(
p
,
s
)
(8)
L_{MI} = \hat{I}(\hat{Z},s)+ \hat{I}(\hat{Z},p)+ \hat{I}(p,s) \tag{8}
LMI=I^(Z^,s)+I^(Z^,p)+I^(p,s)(8) 在训练过程中,对变分逼近网络和VC网络进行了交替优化。变分逼近网络训练最大对数似然:
L
u
,
v
=
l
o
g
Q
θ
u
,
v
(
u
∣
v
)
,
u
,
v
∈
{
Z
^
,
s
,
p
}
(9)
L_{u,v}=logQ_{\theta_{u,v}}(u|v), \ u,v \in \{ \hat{Z},s,p \} \tag{9}
Lu,v=logQθu,v(u∣v), u,v∈{Z^,s,p}(9) 而对VC网络进行训练,使VC损失最小化:
L
V
C
=
L
V
Q
+
L
C
P
C
+
L
R
E
C
+
λ
M
I
L
M
I
(10)
L_{VC} = L_{VQ}+L_{CPC}+L_{REC}+\lambda_{MI}L_{MI} \tag{10}
LVC=LVQ+LCPC+LREC+λMILMI(10) 其中
λ
M
I
\lambda_{MI}
λMI是一个恒定的权重,以控制MI损失如何提高解纠缠。最后的训练过程总结在算法1中。我们注意到,在训练过程中没有使用文本转录或说话人标签,因此提出的方法以完全无监督的方式实现了解缠。
3.3 One-shot VC
在转换过程中,首先从源说话人的
X
s
r
c
X_{src}
Xsrc语音中分别提取出
Z
^
s
r
c
=
f
(
X
s
r
c
;
θ
c
)
\hat{Z}_{src}=f(X_{src};\theta_c)
Z^src=f(Xsrc;θc)和
p
s
r
c
p_{src}
psrc的内容和音高表征,只从一个目标说话人的话语
X
t
g
t
X_{tgt}
Xtgt中提取说话人表征作为
s
t
g
t
=
f
(
X
t
g
t
;
θ
s
)
s_{tgt}=f(X_{tgt};\theta_s)
stgt=f(Xtgt;θs),然后解码器生成转换后的梅尔频谱图为
f
(
Z
^
s
r
c
,
s
t
g
t
,
p
s
r
c
;
θ
d
)
f(\hat{Z}_{src},s_{tgt},p_{src};\theta_d)
f(Z^src,stgt,psrc;θd)。
4 实验
4.1 实验设置
所有实验均在VCTK语料库(《Superseded-cstr vctk corpus: English multi-speaker corpus for cstr voice cloning toolkit》)上进行,110名英语使用者被随机分为90人和20人,分别作为训练集和测试集。测试说话人被视为未出现过的说话人,用于执行One-shot VC。在声学特征提取方面,将所有录音资料下采样至16kHz,利用25ms Hanning窗口、10ms帧移和400维快速傅里叶变换计算80维梅尔频谱图和F0。
该VC网络由内容编码器、说话人编码器和解码器组成。内容编码器包含h-net、量化器q和g-net。h-net由一个步幅为2的卷积层、4个带层归一化的块、512维线性层和每个块的ReLU激活函数组成。量化器包含一个包含512个64维可学习向量的码本。g-net是一个256维的单向RNN层。对于CPC,未来预测步长M为6,阴性样本
∣
Ω
k
,
t
,
m
∣
|\Omega_{k,t,m}|
∣Ωk,t,m∣为10。说话人编码器采用(《One-shot voice conversion by separating speaker and content representations with instance normalization》),其中包含8个ConvBank层对长期信息进行编码,12个卷积层包含1个平均池化层,4个线性层推导出256维说话人表示。在《Autovc: Zero-shot voice style transfer with only autoencoder loss》之后,解码器有一个1024维LSTM层,三个卷积层,两个1024维LSTM层和一个80维线性层。此外,利用基于5层卷积的Postnet对预测的梅尔谱图进行再细化,利用VCTK语料库训练的Parallel WaveGAN声码器(《Parallel wavegan: A fast waveform generation model based on generative adversarial networks with multi-resolution spectrogram》)将其转换为波形。使用Adam优化器(《Adam: A method for stochastic optimization》)对VC网络进行训练,通过15个周期的预热将学习率从1e-6提高到1e-3,在200个周期之后每100个周期减半,直到总共500个周期。批大小为256,每次迭代从每个语音中随机选取128帧进行训练。变分逼近网络也用学习率为3e-4的Adam优化器进行训练。我们将我们提出的VQMIVC方法与AutoVC(《Autovc: Zero-shot voice style transfer with only autoencoder loss》)、AdaIN-VC(《One-shot voice conversion by separating speaker and content representations with instance normalization》)和VQVC+(《Vqvc+: One-shot voice conversion by vector quantization and u-net architecture》)等最先进的One-shot VC方法进行了比较。
4.2 实验结果及分析
4.2.1 语音表征解缠性能
在VC损失(10)中,
λ
M
I
\lambda_{MI}
λMI决定了MI实现SRD的能力,我们首先改变
λ
M
I
\lambda_{MI}
λMI,通过计算vCLUB来评估从所有测试话语中提取的不同语音表示之间的解纠缠度,如表1所示。我们可以看到,当
λ
M
I
\lambda_{MI}
λMI增加时,MI趋于降低,以降低不同语音表征之间的相关性。
为了衡量内容信息与说话人表征之间的纠缠程度,我们采用了两种方法来生成语音,即:(1)相同,即使用相同话语的内容表征、说话人表征和音高表征来生成语音;(2)混合,即使用一个话语的内容表征和音高表征和另一个话语的说话人表征来产生话语,两个话语属于同一个说话人。然后,利用自动语音识别(ASR)系统获取生成语音的字符/单词错误率(CER/WER)。从Same到Mixed增加的CER和WER分别记为
Δ
C
\Delta_C
ΔC和
Δ
W
\Delta_W
ΔW。由于语音生成的输入唯一不同的是说话人表征的输入,我们可以得出结论,
Δ
C
\Delta_C
ΔC和
Δ
W
\Delta_W
ΔW的值越大,说明泄露给说话人表征的内容信息越多。所有测试扬声器都用于语音生成,使用了公开发布的基于jasper的ASR系统(《Jasper: An end-to-end convolutional neural acoustic model》)。结果如表2所示,我们可以看到,当不使用MI (
λ
M
I
=
0
\lambda_{MI}=0
λMI=0)时,生成的语音被不需要的内容信息严重污染,这些内容信息存在于说话人表示中,如
Δ
C
\Delta_C
ΔC和
Δ
W
\Delta_W
ΔW的最大值所示。然而,当使用MI (
λ
M
I
>
0
\lambda_{MI}>0
λMI>0)时,可以获得
Δ
C
\Delta_C
ΔC和
Δ
W
\Delta_W
ΔW的显著减少。随着
λ
M
I
\lambda_{MI}
λMI的增加,
Δ
C
\Delta_C
ΔC和
Δ
W
\Delta_W
ΔW都在减少,说明更高的
λ
M
I
\lambda_{MI}
λMI可以在更大程度上缓解内容信息向说话者表示的泄露。
此外,我们设计了两个说话人分类器,分别以
Z
^
\hat{Z}
Z^和
s
s
s为输入;还有一个预测器,用
Z
^
\hat{Z}
Z^来推断
p
p
p。分类器和预测器均为4层全连通网络,隐藏大小为256维度。说话人分类精度越高表示
Z
^
\hat{Z}
Z^或
s
s
s中说话人信息越多,
p
p
p的预测损失(均方误差)越高表示
Z
^
\hat{Z}
Z^中音高信息越少。结果如表3所示。我们可以观察到,当
λ
M
I
\lambda_{MI}
λMI增大时,
Z
^
\hat{Z}
Z^包含更少的说话人和音高信息,以达到更低的精度和更高的音高损失。对于所有
λ
M
I
\lambda_{MI}
λMI,
s
s
s上的说话人分类准确率都很高,而随着
λ
M
I
\lambda_{MI}
λMI的增加,
s
s
s上的分类准确率下降,说明
s
s
s包含了丰富的说话人信息,但更高的
λ
M
I
\lambda_{MI}
λMI会使
s
s
s失去说话人信息。为了保证正确的解缠,在接下来的实验中,我们将
λ
M
I
\lambda_{MI}
λMI设置为
1
e
−
2
1e-2
1e−2。
4.2.2 内容保存与F0变化一致性
为了评估转换后的语音是否保持了源语音的语言内容和语调变化,我们测试了转换后语音的CER/WER,并计算了源语音和转换后语音F0之间的皮尔逊相关系数(PCC)(《Pearson correlation coefficient》)。PCC的取值范围为
−
1
1
-1 ~ 1
−1 1,可以有效地衡量两个变量之间的相关性,其中F0-PCC越高,表示转换后的语音与源语音的F0变异一致性越高。随机抽取10名测试说话人作为源说话人,其余10名测试说话人作为目标说话人,形成100对转换对,所有源话语都用于转换。不同方法的结果如表4所示,其中源语音的结果也作为性能上限报告。可以看出,在所有方法中,VQMIVC的CER和WER值都是最低的,这表明所提出的VQMIVC方法在保留源语言内容方面具有鲁棒性。此外,我们观察到,在不使用MI (w/o MI)的情况下,ASR性能显著下降,因为转换后的声音被不希望的内容信息与说话者表示纠缠在一起。此外,通过提供源音高表示,我们可以明确有效地控制转换后语音的语调变化,以达到较高的F0变化一致性,通过本文方法得到的最大F0-PCC为
0.781
0.781
0.781。
4.2.3 说话的自然度和说话人的相似性
由15名被试进行主观测试,以5分的平均意见评分(MOS),即1-极差、2-差、3-一般、4-好、5-很好来评价言语的自然度和说话人相似度。我们从测试语者中随机抽取两名源语者和两名目标语者,每个源语或目标语集包括一名男性和一名女性,形成4对转换话语,每对转换后的18个话语由每个被试进行评价。在图3中报告了所有配对的平均分数。源语(Oracle)和目标语(Oracle)分别是用平行WaveGAN合成源语和目标语的真实谱图。我们观察到,所提出的方法(记为w/o MI)优于AutoVC和VQVC+,但不如AdaIN-VC。通过我们的官方听力测试,w/o MI转换后的语音中经常检测到发音错误,这可以从表4中w/o MI较高的CER/WER反映出来。这些问题可以通过提出的MI最小化大大缓解,其中改善了语音自然度和说话人相似度。这表明MI最小化有利于合理的SRD获得准确的内容表示和有效的说话人表示,从而生成与目标说话人语音相似度高的自然语音。
5 结论
我们提出了一种结合VQCPC和MI的无监督的基于SRD的One-Shot VC方法。实现内容、说话者和音高表达的适当分离,该方法不仅训练了VC模型以最大限度地减少重建损失,而且利用VQCPC损失来探索语音的局部结构以获取内容,以及MI损失,以降低不同语音表征之间的相关性。实验验证了所提方法的有效性,通过学习准确的内容表征来保存源语言内容,说话人表征来捕捉期望的说话人特征,以及音调表征来保留源语调变化,从而缓解信息泄漏问题。从而产生高质量的转换语音。
Wang D, Deng L, Yeung Y T, et al. VQMIVC: Vector Quantization and Mutual Information-Based Unsupervised Speech Representation Disentanglement for One-shot Voice Conversion[J]. arXiv preprint arXiv:2106.10132, 2021.