雑音重み推定と音声 GMMを用いた雑音除去
DESCRIPTION
雑音重み推定と音声 GMMを用いた雑音除去. 神戸大学大学院工学研究科 三宅 信之,滝口 哲也,有木 康雄. 研究の背景. 雑音が混入することで音声認識率が低下 そのため様々な雑音除去法が存在する 発話中に突如発生した雑音は除去しづらい. 研究の目的. クリーンスピーチに突発的な雑音が重畳したとき,その雑音を除去し、音声認識率を改善する. 電話音. o m o t e. システム全体の流れ. 音声特徴量 の抽出. 突発性雑音あり. 雑音の識別. 雑音除去. 雑音の検出. 音声認識. クリーンスピーチ. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/1.jpg)
雑音重み推定と音声GMMを用いた雑音除去
神戸大学大学院工学研究科 三宅 信之,滝口 哲也,有木 康雄
![Page 2: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/2.jpg)
研究の背景
雑音が混入することで音声認識率が低下 そのため様々な雑音除去法が存在する
発話中に突如発生した雑音は除去しづらい
![Page 3: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/3.jpg)
研究の目的 クリーンスピーチに突発的な雑音が重畳した
とき,その雑音を除去し、音声認識率を改善する
電話音
o m o t e
![Page 4: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/4.jpg)
システム全体の流れ
音声特徴量の抽出
雑音の検出
雑音の識別 雑音除去
音声認識クリーンスピーチ
突発性雑音あり
![Page 5: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/5.jpg)
クラスタリング 雑音は種類が多いためあらかじめクラスタリ
ング
K-means で分類
データと中心の距離 d を計算
θ<d ならクラスを分割
クラス内距離を一定以下 (θ) に設定したい 除去時にクラスのデータの平均値を雑音のデータとして利用
クラス内距離を一定以下にすることでミスマッチを防ぐ
![Page 6: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/6.jpg)
クラスタリング クラス内距離を小さくするとクラスが増えすぎる
ツリー上にすることで解決
Class 2coinscoin
Class 1phone
...
Class NTear
…..
d <25
d <50
上段から徐々に θ の値を小さくしていく
![Page 7: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/7.jpg)
システム全体の流れ
音声特徴量の抽出
雑音の検出
雑音の識別 雑音除去
音声認識クリーンスピーチ
突発性雑音あり
![Page 8: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/8.jpg)
雑音の検出
あらゆるげんじつおすべてじぶんのほーえねじまげたのだがーーーー
入力フレーム
識別器
識別器を用いてクリーンスピーチか 雑音重畳音声かのラベルを付ける
クリーンスピーチ 雑音重畳音声
識別器は AdaBoost で作成 弱識別器は decision stump
![Page 9: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/9.jpg)
雑音の識別
Class 1phone
...
Class 2coinscoin
Class NTear
…..
×
Classifier×
Clean speech
Noisy speech
×feature
各クラスの雑音重畳音声を使用して作成した識別器でツリーの上段から順に識別していく
識別器は one-vs-rest法で拡張したAdaBoostで作成
![Page 10: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/10.jpg)
雑音除去
音声特徴量の抽出
雑音の検出
雑音の識別 雑音除去
音声認識クリーンスピーチ
突発性雑音あり
![Page 11: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/11.jpg)
雑音重畳音声の特徴量)()()( tntstx
観測信号 音声信号 雑音
~~~~bbb NSX
メルフィルタバンクに変換
どんな雑音か識別されている ≒特徴量の大まかな形は既知(強さは不明)
bbb NSX
強さを表す定数 α を導入
( b 次元目の特徴量)
X
![Page 12: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/12.jpg)
雑音重畳音声の特徴量
第 2 項を推定し、音声特徴量を得る
対数メルフィルタバンク に変換)log( bb Xx
bbb nsx expexpexp
bbb NSX
)(
)exp(1log
)exp()exp(log
,,gs
sns
nsx
bb
bbb
bbb
ns
![Page 13: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/13.jpg)
GMMを用いた推定
)x(p を考える m
msmsNmp ,, ,;s)Pr()s( をもとにクリーン音声の GMM ( Gaussian Mixture Model )
m
mxmxNmp ,, ,;)Pr()( xx
mGmsmx ,,, )]exp(1log[ ,, nmsmG
msmx ,, 第 2 項の推定値は混合ごとの尤度を使った、 の重み付き平均とする
mmxmx
mGm
mxmx
Nm
Nm
,,
,,,
,;)Pr(
,;)Pr(
ˆ
x
x
g g - x s
mG,識別されたクラスの平均値
)( ,,nsgsx より
未知
[2001eurospeech, segura et.al]
![Page 14: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/14.jpg)
重み推定
EMアルゴリズムを使った推定 p(x)が最大になるように決定
混合ごとの重み推定 p(x,m)が最大になるように混合ごとに決定 混合ごとの最大の尤度による重み付き平均
![Page 15: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/15.jpg)
EMアルゴリズムを用いた推定
mmxnmsms
mmxmx
gNm
Nmp
)),,,(;x()Pr(
,;x)Pr()x(
,,,
,,
を最大化するように α の値を決定
EM アルゴリズムの使用
収束するまで繰り返すことで最適解を得る
m
kk mpmpQ ),,x(log),,x(),( )()(
),(maxarg )()1( kk Q
Estimation ステップ
Maximizationステップ
![Page 16: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/16.jpg)
EMアルゴリズムを用いた推定
b bmx
bmsb
kbmsbn
bmsbnbmsbn
e
eexmxp
p
)1(
))1log((),(
)(log,,,
,,,,,,
2,,
,,
x
と微分した式は複雑な値になるためニュートン法を用いてとく
)(log
)()1( xpf
2
2)2( )(log
)(
xpf
)(
)()2(
)1(
f
f
を繰り返すことで近似解を得る
![Page 17: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/17.jpg)
混合ごとの推定 は を最大化するよう混合ごとに決定
0)(
,mp x を解くあるいは 0
),(log
mp x
),( mp x
b bmx
mbmsb
b bmx
bmxb
bmsbNex
xmp
2,,
2,,
2,,
2,,
2
))1log((
2
)(,log
,,,
x
m
0)1(
))1log((),(log,,,
,,,,,,
2,,
,,
b mbmx
mbmsb
m bmsbn
bmsbnbmsbn
e
eexmp
x
解析的にとくことは難しく、ニュートン法で決定
α
),( mp x
![Page 18: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/18.jpg)
混合ごとの推定 )exp(1log ,, msnmmG
音声特徴量の推定
m
mGm
mp
mp
),(
),(
ˆ,
x
x
g
gxs ˆˆ
求めた を使いm
推定値に各混合の尤度を使って重み付き平均と定義しなおす
x
s
![Page 19: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/19.jpg)
実験条件(雑音除去)
雑音の検出・識別 AdaBoost の学習回数 200 回 特徴量: 24 次元対数メルフィルタ
バンク 雑音除去
クリーン音声 GMM 混合数16,32,64
発話データ ATR 特定話者単語発話
男性 2 名女性 2 名 雑音データ [S. Nakamura, et al,
2000] RWCP 非音声ドライソースに含ま
れるすべての雑音 (105 種 ) 1 種類につき 100 データが存在し、
50 データを学習用、 50 データをテスト用に使用
学習データ 単語発話 2000 発話 AdaBoost の学習用に上記の発話に
雑音を重畳させたもの
評価法 MFCC 12 次元 クリーン音声で作成した
HMM での認識率を算出 音素 HMM 各5状態 4
混合
クラス内距離 上段から順に 50,25,12,6 クラス数 45
テストデータSNR を調整した雑音重畳音声 500 単語 ×4 人 計 2000 発話(シミュレーションデー
タ) SNR -5,0,5 dB雑音継続時間は 20 ~ 300 ms
程度
![Page 20: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/20.jpg)
検出・識別結果5 dB 0 dB -5 dB
再現率 0.820
0.897 0.952
適合率 0.827
0.831 0.833
識別率 0.283
0.404 0.470
適合率 =正しく検出されたフレーム数+誤検出フレーム数
正しく検出されたフレーム数
再現率= 正しく検出されたフレーム数+未検出フレーム数
正しく検出されたフレーム数
識別率 =正しく検出されたフレーム数
正しく検出されたフレーム数-識別誤り数
![Page 21: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/21.jpg)
音声認識結果
57.4
72.2
78.8 79.1
70.1
79.479.4
69.6
79.680.2 81.582.2
40
45
50
55
60
65
70
75
80
85
90
95
100
除去なし 16混合 32混合 64混合雑音除去時の混合数
重み推定なしEMアルゴリズム混合毎推定
[SNR -5 dB]
40
45
50
55
60
65
70
75
80
85
90
95
100
クリーンスピーチ
Oracle label
96.5
![Page 22: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/22.jpg)
音声認識結果
63.860.8
80.3 81.2
64.7
80.7 82.0
63.0
81.482.485.785.1
404550556065707580859095
100
除去なし 16混合 32混合 64混合
雑音除去時の混合数
重み推定なしEMアルゴリズム混合毎推定
[SNR 0 dB]
40455055
6065707580
859095
100
クリーンスピーチ
96.5
Oracle label
![Page 23: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/23.jpg)
音声認識結果
70.565.8
82.883.3
65.8
83.984.1
64.1
84.484.788.489.1
404550556065707580859095
100
除去なし 16混合 32混合 64混合雑音除去時の混合数
重み推定なしEMアルゴリズム混合毎推定
[SNR 5 dB]
40
45
50
55
60
65
70
75
80
85
90
95
100
クリーンスピーチ
96.5
Oracle label
![Page 24: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/24.jpg)
未知雑音に対する実験結果 10-fold クロスバリデーションを用い、 94 種で学習、残りの 11
種の雑音でテストデータを作成 GMM 64 混合,混合ごとの重み推定を使用
58.6
72.6
63.2
77.0
70.1
80.0
4045505560657075808590
-5 dB 0 dB 5 dB
除去前除去後
5 dB 0 dB -5 dB
再現率 0.808 0.879 0.934
適合率 0.802 0.806 0.806
![Page 25: 雑音重み推定と音声 GMMを用いた雑音除去](https://reader036.vdocuments.site/reader036/viewer/2022081418/56813ad0550346895da2f990/html5/thumbnails/25.jpg)
まとめと今後の予定 突発性の雑音除去法を提案した シミュレーションデータにおいて、雑音除去
によって認識率の改善が見られた 重み推定を行うことでの認識率の改善 未知雑音に対しても本手法の有効性を確認
大語彙・不特定話者での音声認識への適応実環境での実験