---
title: [DL輪読会]VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrogram Masking
tags:  #deep learning  
author: [Deep Learning JP](https://www.docswell.com/user/DeepLearning2023)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/V7PXVW1ZE8.jpg?width=480
description: 2018/11/16  Deep Learning JP:  http://deeplearning.jp/seminar-2/
published: November 16, 18
canonical: https://www.docswell.com/s/DeepLearning2023/5DE3VR-dlvoicefilter-targeted-voice-separation-by-speakerconditioned-spectrogram-masking-123157433
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/V7PXVW1ZE8.jpg)

DEEP LEARNING JP
[DL Papers]
VOICEFILTER: Targeted Voice Separation by
Speaker-Conditioned Spectrogram Masking
Hiroshi Sekiguchi, Morikawa Lab
http://deeplearning.jp/
1


# Page. 2

![Page Image](https://bcdn.docswell.com/page/2JVLZ8YM7Q.jpg)

書誌情報
• “VOICEFILTER: Targeted Voice Separation by Speaker-Conditioned Spectrogram
Masking” arXiv:1810.04826v3 [eess.AS] 27 Oct 2018
• Author: Quan Wang1, Hannah Muckenhire2, Kevin Wilson1, Prashant Sridhar1,
Zelin Wu1, John Hershey1, Rif A. Saurous1, Ron J. Weiss1, Ye Jia1, Ignacio Lopez
Moreno1
1Google Inc. USA, 2Idiap Research Institute, Switzerland
• 論文選択の理由
• 重畳音声の分離が研究テーマ
• Google製スマートスピーカ”Google Home”の重畳音声分離をレビュー．
2


# Page. 3

![Page Image](https://bcdn.docswell.com/page/5EGX459XJL.jpg)

アジェンダ
• 研究の目的
• 従来の方法
• 提案手法
• 評価結果
• まとめ
3


# Page. 4

![Page Image](https://bcdn.docswell.com/page/4JQ8GZW57P.jpg)

研究の目的
• 複数話者音声が重畳したモノラル信号から，
– 特定の話者の音声を抽出する
抽出した音声は，その後，音声認識の入力に使用する．
4


# Page. 5

![Page Image](https://bcdn.docswell.com/page/K74253KVJ1.jpg)

従来の方法
• 不特定な複数話者の重畳音声を分離する
– テスト時：DNNでMask Rateを推定し
𝑠1𝑒𝑠𝑡 𝑡 = 𝑀1𝑒𝑠𝑡 ・Y
から目的音声を得る
– 学習時：DNNはMask Rateを教師あり学習
(方法例）
መ
Y=S1+S2
𝑆1
DNN
min ( | 𝑆1 − 𝑆መ1 |2
𝑅𝑁𝑁 𝐶𝑜𝑒𝑓
𝑆መ2
𝑀1𝑒𝑠𝑡
=
+ | 𝑆2 − 𝑆መ2 |2 )
𝑆1
𝑆2
𝑆መ1
𝑆መ1 + 𝑆መ2
5


# Page. 6

![Page Image](https://bcdn.docswell.com/page/LJ1MW1X4EG.jpg)

従来手法の問題点
• 何人の話者がいるのかわからない
• 分離した音声がフレーム毎にどの話者に属したものかわからない
（Speaker Permutation問題)
• 分離して得た複数の再構成音の中で、自分の興味ある話者の音声がど
れかがわかない
6


# Page. 7

![Page Image](https://bcdn.docswell.com/page/GJW368NZJ2.jpg)

提案内容
• 提案方法：２つのNeural Network
– 話者認識Neural Network
– スペクトログラムマスクベースの音源分離Neural Network (VoiceFilter)
を組み合わせて，特定の話者の音声を抽出．
話者認識
Neural Network
スペクトログラム
マスクベースの音源分離
Neural Network
(VoiceFilter)
7


# Page. 8

![Page Image](https://bcdn.docswell.com/page/4EZVY83LJ3.jpg)

想定される利用シーン
① 事前に，数百～数千人の話者が発生したReference単語（OKGoogle，
Hey Google)を登録し，話者特性のemdedding表現を学習しておく
OK Google!
Hey Google!
② 話者S1 の
Reference発声
（数個のキー単語）
④ 話者𝑆1 とその
他の話者との重
畳音声を発声
（任意の文章）
③現在Reference発声している話
者S1 が，既学習のどの話者に似て
いるかをemdeddingの形式で表現
話者認識Neural Network
⑤重畳音声と，Reference発声した話者𝑆1
のEmbeddingを使って， 𝑆1 の発声と推定
される音声のみを抽出する．
XX△X〇◆□〇
スペクトログラムマスクベース
の音源分離Neural Network
8


# Page. 9

![Page Image](https://bcdn.docswell.com/page/Y765DPXMEV.jpg)

この手法で従来の問題を容易化できる
• 何人の話者がいるのかわからない
→ Reference発声した話者を指定することで，2クラス識別問題に簡素化．
Reference発声した話者の特性 vs それ以外の話者の集合の特性 の識別
• 分離した音声がフレーム毎にどの話者に属したものかわからない（Speaker
Permutation問題)
→ 既存の別手法で解決する．ex.全文章レベルでの評価関数最小化問題を導入
• 分離して得た複数の再構成音の中で、自分の興味ある話者の音声がどれかが
わかない
→ Reference発声した話者を指定することで，その場に何人いても、Reference
話者のEmbeddingに関連した情報を興味ある対象と決めることができる
9


# Page. 10

![Page Image](https://bcdn.docswell.com/page/G75Y3KXQ74.jpg)

話者認識ネットワーク
話者認識
Neural Network
スペクトログラム
マスクベースの音源分離
Neural Network
(VoiceFilter)
10


# Page. 11

![Page Image](https://bcdn.docswell.com/page/9J2GZWXWJR.jpg)

話者認識ネットワーク
• 話者認識に２通りあり
– Text Dependent-Speaker Verification(TD-SV):
事前登録の単語(“OK Google”)=テスト時の単語(“OK Google”)
– Test Independent－Speaker Verification(TI-SV)：
事前登録の単語(“色々な単語”（音韻も単語長も色々)＝テスト時の単語
(“Hey Google”)
→今回は，後者のフレームワーク．
• 関連論文：
– Generalized End-to-End Loss for Speaker Verification，
Lin Wan , et.al，Google
– Long Short-Term Memory Recurrent Neural Network Architectures for
Large Scale Acoustic Modeling
Hasim Sak，et.al，Google, USA
11


# Page. 12

![Page Image](https://bcdn.docswell.com/page/DEYVRL89EM.jpg)

話者認識ネットワーク
• 話者認識ネットワークの学習手法
– 話者人数N人、各人がM個の発声（M個の単語は異なっても良いが、全話者そのM
個の単語は発生するものとする）を使用
– 𝑥𝑗𝑖 ∈ 𝑅𝐹∗𝑇 ：話者jのm個目の発声音声: 1 ≤ 𝑗 ≤ 𝑁, 1 ≤ 𝑚 ≤ 𝑀
• 25msec 音声窓長，10msec 窓シフト=フレーム長
• 𝐹: 40次元のLog-Mel-filterbankの出力エネルギー，𝑇:フレーム数 （140~160フレームmax）
– ネットワーク：(LSTM+Linear Projection)/層x 3層 + Full Connected Layer
– 𝑥𝑗𝑖 ：ネットワーク入力、𝑒𝑗𝑖 ：embedding(d-vector)：ネットワークの出力
𝑥11
𝑥12
𝑒11
𝑒12
𝑥21
𝑒21
𝑥31
𝑒31
𝑥𝑗𝑖
𝑒𝑗𝑖
𝑆11,1
𝑆13,1
𝑆𝑗𝑖 ,k
𝑆21,3
12


# Page. 13

![Page Image](https://bcdn.docswell.com/page/VJNMD4QD78.jpg)

話者認識ネットワーク：LSTM+Projection Network
• Projectionは係数の数は減らすがメモリ数は潤沢に使うため．
σ(・)
σ(・)
σ(・)
LSTM+Projection ブロック
LSTM+Projection Network/層ｘ３層
13


# Page. 14

![Page Image](https://bcdn.docswell.com/page/YE9NGQD8E3.jpg)

話者認識ネットワーク
• 話者認識ネットワークの学習手法（続き）
– 𝑐𝑘 ：話者𝑘のembeddingのセントロイド（平均値）𝑐𝑘 = 𝐸 𝑒𝑘𝑚 =
– 𝑆𝑗𝑖,𝑘 ：Validation音声𝑥𝑗𝑖 の𝐸𝑚𝑏𝑒𝑑𝑑𝑖𝑛𝑔 𝑒𝑗𝑖
と話者𝑘の𝑒𝑚𝑏𝑒𝑑𝑑𝑖𝑛𝑔セントロイドとの類似度:
1 𝑀
σ
𝑒
𝑀 𝑚=1 𝑘𝑚
𝑆𝑗𝑖,𝑘 = 𝑤 ∙ cos(𝑒𝑗𝑖 , 𝑐𝑘 ) + 𝑏𝑖
ここで𝑤(&gt; 0)と𝑏𝑖 は学習パラメータ
𝑥11
𝑥12
𝑒11
𝑒12
𝑥21
𝑒21
𝑥31
𝑒31
𝑥𝑗𝑖
𝑒𝑗𝑖
𝑆11,1
𝑆13,1
𝑆𝑗𝑖 ,k
𝑆21,3
14


# Page. 15

![Page Image](https://bcdn.docswell.com/page/GE8KVG3Z7D.jpg)

話者認識ネットワーク
– 𝐿 𝑒𝑗𝑖 ： 𝑒𝑗𝑖 でのネットワークの損失関数は２通りで行った
または
𝐿 𝑒𝑗𝑖 = 𝑆𝑗𝑖,𝑗 − 𝑙𝑜𝑔 σ𝑁
𝑘=1 exp 𝑆𝑗𝑖,𝑘
𝐿 𝑒𝑗𝑖 = 1 − σ 𝑆𝑗𝑖,𝑗 + max σ(𝑆𝑗𝑖,𝑘 )
1≤𝑘≤𝑁
𝑘≠𝑗
: softmaxタイプ
： contrastタイプ
– 𝐿𝐺 𝑥 ：全体ネットワーク損失関数 𝐿𝐺 𝑥 = 𝐿𝐺 𝑆 = σ𝑗,𝑖 𝐿(𝑒𝑗𝑖 ) : 1 ≤ 𝑗 ≤
𝑁, 1 ≤ 𝑖 ≤ 𝑀
– 最適化手法:SGDで、全𝐿(𝑒𝑗𝑖 )を計算する毎にNetwork係数，𝑤と𝑏𝑖 を更新
●損失関数がsoftmaxの場合：
学習は，すべての話者jのembedding 𝑒𝑗𝑖 が可能な限り，他のす
べての話者のセントロイド𝑐𝑘 𝑘 ≠ 𝑗よりも話者jのセントロイ
ド𝑐𝑗 に類似度が大きくなるように進む
●損失関数がcontrastの場合：
学習は、すべての話者jのembedding𝑒𝑗𝑖 が，最も類似度が大き
い他の話者のセントロイドよりも、話者jのセントロイド𝑐𝑗 に
類似度が大きくなるように進む
15


# Page. 16

![Page Image](https://bcdn.docswell.com/page/LELZ5GV1JR.jpg)

話者認識ネットワーク
●TI-SVでの𝑒𝑗𝑖 の算出方法
TI-SVでは発声ごとに長さ
の長短がある．
→ 140~160フレーム
/sliding window lengthに
セグメントし𝑥𝑗𝑖 とする．
それ毎にembeddingを計
算し、さらにすべての
windowsでの平均を取っ
て𝑒𝑗𝑖 とする．
140~160フレーム
(1400～1600msec)
16


# Page. 17

![Page Image](https://bcdn.docswell.com/page/4JMV3QG5JW.jpg)

スペクトログラムマスクベースの
音源分離Neural Network (VoiceFilter)
• 話者認識ネットワーク
話者認識
Neural Network
スペクトログラム
マスクベースの音源分離
Neural Network
(VoiceFilter)
17


# Page. 18

![Page Image](https://bcdn.docswell.com/page/PJR2Q8ZZE9.jpg)

スペクトログラムマスクベースの
音源分離Neural Network (VoiceFilter)
Reference: “OK Google”などのキー
ワード
Clean: 目標話者のクリーンな音声
Interferering: 妨害音声
Y=S1+S2
話者のEmbedding
ここに数式を入力します。
（d-vectorを
LSTM前で
Concatenation)
𝐸𝑚𝑏𝑒𝑑𝑑𝑖𝑛𝑔 𝑆1
𝑆መ1
DNN
min ( | 𝑆1 − 𝑆መ1 |2 )
𝑅𝑁𝑁 𝐶𝑜𝑒𝑓
𝑆1
𝑀1𝑒𝑠𝑡
18


# Page. 19

![Page Image](https://bcdn.docswell.com/page/PEXD58917X.jpg)

評価結果
• 特定の話者の抽出性能評価指標
– 本提案で特定の音声を抽出したのちに，大規模離散単語音声認識システムで
WER（Word Error Rate(%)）を評価
– 本提案で特定の音声を抽出したのち、Signal to Distortion Ratio(SDR)を評価
• 評価に使用した音声コーパス
– 話者認識Neural Networkの学習：138K speakers, 34M発声
– スペクトグラムベースマスクの音源分離Neural Networkの学習：LibriSpeech:
2338 speakers for training, 73 speaker for validation.
19


# Page. 20

![Page Image](https://bcdn.docswell.com/page/3EKX6KPM7D.jpg)

評価結果
• Voice Filterがある方が，Noisyな音声は
急激にWERが低くなっている．→Voice
Filterの効果がある！
• VoiceFilterは、Cleanな音声でも，ほぼ
VoiceFilter無しと同等の認識がある．
→VoiceFilterは、Cleanな音声に悪影響
は少ない
• SDRの評価では、VoiceFilterの効果で
SDRの約8dB改善が出ている．
有意差あり
有意差あり
20


# Page. 21

![Page Image](https://bcdn.docswell.com/page/L7356ZX2E5.jpg)

まとめ
• VoiceFilterは、認識率とSDRの両指標で改善する効果があることが分
かった．
• Bi-Directional LSTM+Proectionが最も良い性能が出ている．
21


# Page. 22

![Page Image](https://bcdn.docswell.com/page/87DDVR267G.jpg)

END
22


