[論文メモ] Noise-robust voice conversion with domain adversarial training
Auto Encoder(AE)タイプのVoice Conversion(VC)できれいな音声とノイズの乗った音声をDomain adversarial trainingを使って同じ空間に写像することでノイズ耐性をつける。
事前知識
Domain adversarial training (DAT)について。
DATはドメインに対して不変な特徴量を得るための手法。
ドメインに不変にしたい特徴量からドメインを識別するためのヘッド(Domain Classifier)を追加して学習を行う。
ターゲットの特徴量とDomain Classifierの間にはGradient reversal layer(GRL)が挟まれていて、GRLはforward時は恒等写像でbackward時は勾配を反転する。
このGRLによりDomain Classifierはドメインを識別できるよう最適化し、特徴量部分は勾配が逆転しているのでドメインが識別できないよう最適化され、結果的にドメイン不変な特徴量が得られる。
DATの構造を図2に示す。
手法
一般的なVCと同じで、話者エンコーダとコンテンツエンコーダを学習し、それらの特徴をデコーダに入力して目的のスペクトログラムを得る。
speech recognitionやspeaker verificationではメインタスクのlossを最小化しつつ、途中で枝分かれしたドメインlossを最大化する。
しかし、これらはメインタスクの正解ラベルがあるからで、本手法は教師なしの前提で行いたい。
既存のText to Speech (TTS)タスクでのnoise augmentation(NA)やdomain adversarial training(DAT)とは以下の観点で異なる。
1) TTSは入力がテキスト、出力がスペクトログラム、それに対してVCは入出力ともにスペクトログラム
2) 既存手法ではNAやDATをノイズ不変な話者埋め込みを抽出するために利用していたが、本手法では話者埋め込みとコンテンツ埋め込みを抽出する
3) ノイズ不変な特徴を得るために本手法ではドメイン用のClassifierのみを利用(既存手法ではタスクとドメイン、2つのClassifierを利用する)
4) 音声に色々なノイズをランダムなSNRで加えることでより堅牢に
学習に使う音声データセットをとする。とはそれぞれ番目の音声データとドメインラベル。
ドメインラベルはノイズに関してではきれいな音声、はノイズがある音声とする。あくまでノイズの有無で詳しいノイズラベル(街の音やカフェの音など)は使わない。
提案手法のフレームワークを図3に示す。
話者エンコーダを、コンテンツエンコーダをとし、それぞれのdomain classifierを、とする。デコーダは話者埋め込みとコンテンツ埋め込みを受け取りスペクトログラムを出力する。なおは各ネットワークのパラメータ。
とのところでDATの勾配反転(GRLを挟む)を行う。
lossはの4つ。
は再構成lossで、入力と、から作った話者埋め込みとコンテンツ埋め込みを入力としたデコーダの出力とのL1 loss。
はコンテンツ埋め込みを標準正規分布に近づけるためのKL-divergence loss。
とはdomain classifier loss。domain labelをノイズの有無とし、各埋め込みへの勾配を反転することで埋め込み特徴からノイズの有無を識別できなくする。これによりノイズに関わらず同じ空間に埋め込むことができ特徴がノイズ不変になる。
トータルのlossは以下の式。は重みのハイパラ。
実験・結果
例によって省略。
CSTR-VCTKの多人数話者データとCHiME4のノイズデータを利用。
評価指標はMel-cepstral distortion(MCD)とWord error rate(WER)。
ソース音声、ターゲット音声について4つのシナリオを実験
SC-TC:ソース・ターゲットともにノイズなし
SC-TN:ソースはノイズなし、ターゲットはノイズあり
SN-TC:ソースはノイズあり、ターゲットはノイズなし
SN-TN:ソース・ターゲットともにノイズあり
VAEDC-CN-C、VAEDS-CN-C、VAED-CN-Cが提案手法で、他は既存手法。
所感
data augmentation + DATは良さそう。
デモがあるので聞いてみたが正直良くわからない(ノイズが結構厳しい?)。
最近の音声系論文はデモありのものが多いの偉い。
DAT自体は勾配を逆転するGRLを実装するだけなのでコストは少ない。
この論文ではノイズドメインに対してのDATだったが、VCタスクで他にも利用価値がありそう。
良いアイディアを与えてくれた論文だった。