Weitere ähnliche Inhalte Ähnlich wie [DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embedding Features (20) Mehr von Deep Learning JP (20) Kürzlich hochgeladen (10) [DL輪読会]Discriminative Learning for Monaural Speech Separation Using Deep Embedding Features1. 1
DEEP LEARNING JP
[DL Papers]
http://deeplearning.jp/
Discriminative Learning for Monaural Speech
Separation Using Deep Embedding Features
Hiroshi Sekiguchi, Morikawa Lab
2. 書誌情報
• “Discriminative Learning for Monaural Speech Separation Using Deep
Embedding Features” (Interspeech 2019)
Author: Cunhang Fan, Bin Liu, Jianhua Tao, Jiangyan Yi, Zhengqi Wen
NLPR, Institute of Automation, Chinese Academy of Science, Beijing China
• 概要:
– モノラル信号の重畳音声分離を,最近注目の2手法、Deep Clusteringと
Utterance Permutation Invariant Trainingの良いとこ取りをし,かつ, end-to-
endでの学習を行い,単体の手法よりも“不特定話者”の複数音声分離性能を
上げた. 注)”不特定話者”とは、学習に含まれない話者のこと
– さらに,Discriminative Learningを追加して,分離性能を上げた.
• 動機
– 研究関連分野の論文レビュー 2
4. 音源分離の既存研究と本研究の位置づけ
• Discriminative DNN training
– DNN Learning with Ideal Binary Mask/Ideal Ratio Mask(Soft Mask)
• メリット:性能が出ている
• デメリット:訓練データの労力大
• Generative model
– Non-negative matrix factorization(NMF):
• メリット:シンプルで計算コスト小、音源数に足してスケーラブル
• デメリット:線形であるため表現力が弱い
– Denoising Autoencoders:
• メリット: 非線形のため表現力が豊富
• デメリット:係数の数が多い→計算コスト大
– VAE : ⇒2019/07/17 DL輪講、関口,”Monaural Audio Source Separation using
Variational Autoencoders” など参照
• 構成がシンプル
• 計算コストが低い
• 潜在空間で、各音源がどの程度区別して表現できているかの信頼レベルを数値化
4
本論文の対象!!
5. Discriminative DNN Training
5
• 不特定な複数話者の重畳音声を分離する
– テスト時:DNNでMask Rateを推定し
𝑋1 = 𝑀1
𝑒𝑠𝑡
・Y, 𝑋2 = 𝑀2
𝑒𝑠𝑡
・Y
から目的音声を得る
– 学習時:DNNはMask Rateを教師あり学習
(方法例)
Y=X1+X2
DNN
𝑋1
𝑋2
𝑋1
𝑋2
min
𝐷𝑁𝑁 𝐶𝑜𝑒𝑓
( | 𝑋1 − 𝑋1 |2 + | 𝑋2 − 𝑋2 |2)
𝑀1
𝑒𝑠𝑡
=
𝑋1
𝑋1 + 𝑋2
, 𝑀2
𝑒𝑠𝑡
=
𝑋2
𝑋1 + 𝑋2
𝑥1
𝑒𝑠𝑡
(𝑡)
以下は、DNNで、まず、 𝑋1, 𝑋2を求め、その後𝑀1
𝑒𝑠𝑡
, 𝑀2
𝑒𝑠𝑡
を求める方法
別方法として、 DNNで、𝑀1
𝑒𝑠𝑡
, 𝑀2
𝑒𝑠𝑡
を最初に求めて、次に 𝑋1, 𝑋2を求め方法もある
6. Deep Clustering(DC)法
• 重畳音声Spectrum振幅 (時間フレーム𝑡, 周波数ビン𝑓): 𝑌(𝑡, 𝑓) ∈ 𝑅 𝑇×𝐹
• 話者sの音声spectrum振幅(時間フレーム𝑡, 周波数ビン𝑓): 𝑋𝑠(𝑡, 𝑓) ∈ 𝑅 𝑇×𝐹
𝑠 = 1, ⋯ 𝑆,𝑆は重畳音声の話者数
• Embedding Feature: 𝑉 = 𝑓θ 𝑌 𝑡, 𝑓 ∈ 𝑅 𝑇𝐹×𝐷
,
𝑇𝐹: 𝑇 − 𝐹ビンの総数, 𝐷:embedding次数 ,𝑓θ:マッピング関数:2層のBLSTM
• Loss関数 𝐽 𝐷𝐶 = 𝑉𝑉 𝑇
− 𝐵𝐵 𝑇
𝐹
2
, ここで、 ∗ 𝐹
2
∶ 二乗Frobenius norm
音声のメンバーシップ行列:𝐵 ∈ 𝑅 𝑇𝐹×𝑆
: 各TFビンで最もdominantな話者を1、その他の話者は0.
• 教師あり学習: 𝑓θ:マッピング関数:
(2層のBLSTM係数)
• Vの行ベクトルは、embedding空間で
各話者毎にクラスタリングされる
• Test時は、 𝑌(𝑡, 𝑓) からVを計算して、
K-Meansで最も近いクラスタリング属する
と判断 ⇒ Maskを決定
6
𝑓θ(・)
0…010…0
…
0010…000
…
0…010…0
話者s
𝑌(𝑡𝑖, 𝑓𝑗)
音声メンバーシップ行列 𝐵
ビンi,j
各行はone-
hot ベクトル
𝑣1
…
𝑣𝑖
…
𝑣 𝑇𝐹
Embedding行列𝑉
7. Permutation Invariant Training(PIT):
• 時間フレーム内のPermutation Invariant問題:各フレーム毎に、複数のDNN出力( 𝑋𝑠)と
Target話者(𝑋 𝑠′)、𝑠, 𝑠′
= 1, ⋯ , 𝑆のペアリングを事前に固定して割り当ててしまう(例えば
𝑠 = 𝑠′
)と、似た音質の複数話者では、異なるフレームで話者の割り当てが誤まる
解決法がPIT:複数の出力( 𝑋𝑠)とTarget話者( 𝑋 𝑠′)、 𝑠, 𝑠′ = 1, ⋯ , 𝑆のペアリングを固定せずに
話者数(S)のPermutation(S!)回分の、出力-話者ペアリング組み合わせLoss関数を計算し、
最少のLoss関数値を出力する出力ー話者ペアリングを正しいとする
ロス関数:𝐽𝑖
𝑃𝐼𝑇
= min
Φ∈𝑃
σ 𝑠=1
𝑆
𝑌𝑖 (𝑡, 𝑓) ⊙ ෩𝑀𝑠,𝑖 𝑡, 𝑓 − 𝑋Φ 𝑝 𝑠 ,𝑖(𝑡, 𝑓)
𝐹
2
ここで、i:フレーム、Φ 𝑝 𝑠 、𝑝 ∈ [1, ⋯ , 𝑆!]はtarget話者の割り当て、 ෩𝑀𝑠,𝑖 𝑡, 𝑓 :マスク予
測子、 ⊙:要素ごと乗算、 𝑌𝑖 𝑡, 𝑓 , ෩𝑀𝑠,𝑖 𝑡, 𝑓 , 𝑋Φ 𝑝 𝑠 ,𝑖(𝑡, 𝑓):フレームiのベクトル 7
Y=X1+X2
DNN
𝑋1
𝑋2
𝑋1
𝑋2
min
𝑅𝑁𝑁 𝐶𝑜𝑒𝑓
( | 𝑋1 − 𝑋1 |2
+ | 𝑋2 − 𝑋2 |2
)
フレーム
Target話者
フレーム
DNN出力
DNN出力 s=1がTarget話者s’=1と、
s=2がs’=2と固定の割り付けの例
𝑋1
𝑋2
正解はどちら?
8. Utterance-Level Permutation Invariant Training(μPIT):
• 話者トラッキングの問題: PITはフレームレベルでは、Loss関数が最小だが、 単語や文章
などの纏まった発声レベル(これをUtterance-levelという)では、出力と話者のペアリン
グはフレーム毎に変化してしまう。これでは、Test時にはフレーム毎のペアリング修正は
不可能なので、学習時に出力index 𝑠と話者index 𝑠′
が、発声レベルでは一貫して、紐づけ
られるようにしたい。
• 解決法がμPIT: 話者数(S)のPermutation(S!)回分の、出力-話者ペアリング組み合わせLoss
関数を発声レベル全部のフレームで計算し、最少のLoss関数値を出力する出力ー話者ペア
リングを正しいとする
ロス関数:𝐽Φ∗ = min
Φ∈𝑃
𝐽Φ 𝑝 𝑠 , 𝐽Φ 𝑝 𝑠 = σ 𝑠=1
𝑆
𝑌(𝑡, 𝑓) ⊙ ෩𝑀𝑠 𝑡, 𝑓 − 𝑋Φ 𝑝 𝑠 (𝑡, 𝑓)
𝐹
2
ここで、Φ 𝑝 𝑠 、𝑝 ∈ [1, ⋯ , 𝑆!]はtarget話者の割り当て、Φ∗
:最適割り当て、 ෩𝑀𝑠 𝑡, 𝑓 :マスク
予測子、𝑌 𝑡, 𝑓 , ෩𝑀𝑠 𝑡, 𝑓 , 𝑋Φ 𝑝 𝑠 (𝑡, 𝑓):行列 8
Y=X1+X2
DNN
𝑋1 𝑡1 , ⋯ , 𝑋1 𝑡 𝑇 𝑋2 𝑡1 , ⋯ , 𝑋2 𝑡 𝑇
MSE
Utteranceの全フレームで同一の
Target話者であるべき
Utteranceの全フレーム
DNN出力
この二者のいずれかにしたい
𝑋2 𝑡1 , ⋯ , 𝑋2 𝑡 𝑇 𝑋1 𝑡1 , ⋯ , 𝑋1 𝑡 𝑇
𝑋2 𝑡1 , ⋯ , 𝑋2 𝑡 𝑇
𝑋1 𝑡1 , ⋯ , 𝑋1 𝑡 𝑇
9. 提案手法:DEF+μPIT+DL その1
① Deep Embedding Feature(DEF)(= Deep Clustering(DC)
と同意)で、入力データ𝑌 𝑡, 𝑓 をembedding 𝑉に
マッピング:
embedding 𝑉は𝑉𝑉 𝑇
が𝐵𝐵 𝑇
に近づくように学習.𝐵𝐵 𝑇
の(𝑖, 𝑗)
要素は、同じ話者に属するときに1で、異なる話者の属する
ときは0なので、 𝑉𝑉 𝑇
もそれに近づく.⇒
embedding空間で、話者毎のクラスタリングが起こなわれる.𝑉
はどの話者に属するかの情報を持つことになる ⇒ 分離
のマスクに関連する情報が内在すると解釈可能
② μPITで、embeddingデータを入力して、Ground True
のマスクを与えてマスク予測子を学習する.この
マスク予測子から、出力値予測子を計算し、
Utterance-levelの最適な出力-話者ペアリングを得
て、最適ロス関数を決定する.
③ さらに、Discriminative Learning(DL)で、μPITのロス
関数に、出力に紐づいたTarget話者以外とのスペク
トル振幅差が大きくなる要素を追加する
④ DEF+μPITを通して、ロス関数を融合して、End2End
で学習する
9
②
③
④
①
10. 提案手法:DEF+μPIT+DL その2
② μPITで、embeddingデータを入力して、Ground Trueのマスクを与えてマスク予測子を
学習する.このマスク予測子から、出力値予測子を計算し、Utterance-levelの最適な
出力-話者ペアリングを得て、最適ロス関数を決定する.
Ground Trueマスク:𝑀𝑠,i,j 𝑡, 𝑓 =
𝑋 𝑠,𝑖,𝑗 𝑡,𝑓 cos θ 𝑦,𝑖,𝑗 𝑡,𝑓 −θ 𝑠,𝑖,𝑗(𝑡,𝑓)
𝑌 𝑖,𝑗(𝑡,𝑓)
:位相補正マスク
ここで、 θ 𝑦,𝑖,𝑗 𝑡, 𝑓 :重畳音声の位相、 θ 𝑠,𝑖,𝑗(𝑡, 𝑓):話者音声𝑠の位相
ロス関数:𝐽Φ∗ = min
Φ∈𝑃
𝐽Φ 𝑝 𝑠 , 𝐽Φ 𝑝 𝑠 = σ 𝑠=1
𝑆
𝑌(𝑡, 𝑓) ⊙ ෩𝑀𝑠 𝑡, 𝑓 − 𝑋Φ 𝑝 𝑠 (𝑡, 𝑓)
𝐹
2
Φ∗ :出力ー話者の最適割り当て
10
12. 実験 その1
• データセット:
– WSJ0-2mix dataset: World Street Journal:2話者重畳音声
• Training Set: 20,000 utterances, 30 hours: WSJ10 training setからrandomに重畳
• Validation Set: 5,000 utterances, 10 hours: WSJ10 training setからrandomに重畳
(CC: Closed Condition)
• Test Set: 3,000 utterances, 5 hours: WSJ10 development set とevaluation setから重畳
(OC:Open Condition)
• Baseline モデル
– DEFの性能評価:μPIT
– 全Networkの性能評価:DC,DC+、DANet、μPIT-BLSTMなど
• 尺度
– SDR(Signal to Distortion Ratio): 目的音声とそれ以外の信号の比
– SIR(Signal to Interference Ratio):目的音声と障害音声の比
– SAR(Signal to Artifact Ratio): 目的音声とアルゴリスミックノイズの比
– PESQ(Perceptual Evaluation od Speech Quality): 聴覚特性を考慮したquality指標
12
13. 実験 その2
• 実験設定
– 音声サンプリング周波数 Fs=8KHz
– 入力スペクトル振幅: 129次元/データ (FFT:256点)
– Short-time-Fourier Transform(STFT)窓、窓長、およびシフト長:Hamming
Window, 32msec,16msec
– Deep Embedded Feature(DEF) Network:
• BLSTM(896units) x 2(層), activation関数: ReLU, Embedding次元数(D)=40
– μPIT Network:
• BLSTM(896units) x1(層), activation関数: Tanh
• 正則係数α=0.1
– Deep Embedding Feature(DEF) Network +μPIT Networkのend2end学習
• Mini-batch=16,
• 最適化アルゴリズム:Adam(学習率 0.0005, scaled down rate=0.7)
• Dropout rate =0.5 (全ネットワーク)
13
14. 評価結果 その1
• Deep Embedding Feature(DEF)の性能評価
– Baseline(μPIT)と比較して、DEFを使用することで、すべての指標で凌駕した
– DEFは、それ単体で、Epochs=30でEmbeddingを学習したので、よいEmbeddingが学習できて
いる。よって、λの変化に依らず性能がほぼ同じで安定である
• Optimal Assignment: 出力-話者割り当てが100%成功した時の数値(Oracle)
• Default Assignment: 該当のアルゴリズムが出してきたままの性能(割り当てエラーはある)
• CCとOCの差がほとんどないのは、学習に入っていない不特定の音声も分離ができていることを意味する、
• Discriminative Learning(DL)の性能評価
– DL無と比較すると、DLは話者間の分離を促進していることが分かる。
14
16. まとめ・感想
• まとめ、
– μPIT単体と比べて、 μPIT にDeep Embedding Feature(DEF)とDiscriminative
Learning(DL)を追加することで、性能が格段によくなった
– DEFのみでEpoch数30で学習したのち、DEFの出力をμPITに入力して、出力ー話者
の紐づけを学習する.DEF+μPITにDL条件を追加して、End2Endで学習し、既存の
システムの性能を超えた.
• 感想
– 同一条件であると、 CCとOCで差がわずかであることから、学習時に見ていない初め
ての話者(不特定話者)でも性能が変化しないことは感心する。
– μPITで出力ー話者の紐づけをしているが、紐づけの性能は、Optimal assignmentと
Default assignmentとの差があるので、フレーム毎の割り付け誤りがあることを確認
した.出力ー話者紐づけには、Independent Vector Analysis(IVA)などもあるように
聞くが、それを使う方法を調べてみたい.
– 重畳音声の話者数に対してスケーラブルな構成だが、3人以上での性能も興味がある
→Deep Embedding Featureは、人数のスケーラビリティがあるはずなので、追加で
行けるのではと推定する
16
17. 参考文献
• J. R. Hershey, Z. Chen, J. L. Roux, and S. Watanabe, “Deep clustering:
Discriminative embeddings for segmentation and separation," in IEEE
International Conference on Acoustics, Speech and Signal Processing, 2016,
• M. Kolbæk, D. Yu, Z. Tan, J. Jensen, M. Kolbaek, D. Yu, Z. Tan, and J. Jensen,
“Multitalker speech separation with utterance-level permutation invariant
training of deep recurrent neural networks,” IEEE/ACM Transactions on
Audio, Speech and Language Processing (TASLP), vol. 25, no. 10, pp. 1901–
1913, 2017
17