雑音重み推定と音声 GMMを用いた雑音除去
DESCRIPTION
雑音重み推定と音声 GMMを用いた雑音除去. 神戸大学大学院工学研究科 三宅 信之,滝口 哲也,有木 康雄. 研究の背景. 雑音が混入することで音声認識率が低下 そのため様々な雑音除去法が存在する 発話中に突如発生した雑音は除去しづらい. 研究の目的. クリーンスピーチに突発的な雑音が重畳したとき,その雑音を除去し、音声認識率を改善する. 電話音. o m o t e. システム全体の流れ. 音声特徴量 の抽出. 突発性雑音あり. 雑音の識別. 雑音除去. 雑音の検出. 音声認識. クリーンスピーチ. - PowerPoint PPT PresentationTRANSCRIPT
雑音重み推定と音声GMMを用いた雑音除去
神戸大学大学院工学研究科 三宅 信之,滝口 哲也,有木 康雄
研究の背景
雑音が混入することで音声認識率が低下 そのため様々な雑音除去法が存在する
発話中に突如発生した雑音は除去しづらい
研究の目的 クリーンスピーチに突発的な雑音が重畳した
とき,その雑音を除去し、音声認識率を改善する
電話音
o m o t e
システム全体の流れ
音声特徴量の抽出
雑音の検出
雑音の識別 雑音除去
音声認識クリーンスピーチ
突発性雑音あり
クラスタリング 雑音は種類が多いためあらかじめクラスタリ
ング
K-means で分類
データと中心の距離 d を計算
θ<d ならクラスを分割
クラス内距離を一定以下 (θ) に設定したい 除去時にクラスのデータの平均値を雑音のデータとして利用
クラス内距離を一定以下にすることでミスマッチを防ぐ
クラスタリング クラス内距離を小さくするとクラスが増えすぎる
ツリー上にすることで解決
Class 2coinscoin
Class 1phone
...
Class NTear
…..
d <25
d <50
上段から徐々に θ の値を小さくしていく
システム全体の流れ
音声特徴量の抽出
雑音の検出
雑音の識別 雑音除去
音声認識クリーンスピーチ
突発性雑音あり
雑音の検出
あらゆるげんじつおすべてじぶんのほーえねじまげたのだがーーーー
入力フレーム
識別器
識別器を用いてクリーンスピーチか 雑音重畳音声かのラベルを付ける
クリーンスピーチ 雑音重畳音声
識別器は AdaBoost で作成 弱識別器は decision stump
雑音の識別
Class 1phone
...
Class 2coinscoin
Class NTear
…..
×
Classifier×
Clean speech
Noisy speech
×feature
各クラスの雑音重畳音声を使用して作成した識別器でツリーの上段から順に識別していく
識別器は one-vs-rest法で拡張したAdaBoostで作成
雑音除去
音声特徴量の抽出
雑音の検出
雑音の識別 雑音除去
音声認識クリーンスピーチ
突発性雑音あり
雑音重畳音声の特徴量)()()( tntstx
観測信号 音声信号 雑音
~~~~bbb NSX
メルフィルタバンクに変換
どんな雑音か識別されている ≒特徴量の大まかな形は既知(強さは不明)
bbb NSX
強さを表す定数 α を導入
( b 次元目の特徴量)
X
雑音重畳音声の特徴量
第 2 項を推定し、音声特徴量を得る
対数メルフィルタバンク に変換)log( bb Xx
bbb nsx expexpexp
bbb NSX
)(
)exp(1log
)exp()exp(log
,,gs
sns
nsx
bb
bbb
bbb
ns
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]
重み推定
EMアルゴリズムを使った推定 p(x)が最大になるように決定
混合ごとの重み推定 p(x,m)が最大になるように混合ごとに決定 混合ごとの最大の尤度による重み付き平均
EMアルゴリズムを用いた推定
mmxnmsms
mmxmx
gNm
Nmp
)),,,(;x()Pr(
,;x)Pr()x(
,,,
,,
を最大化するように α の値を決定
EM アルゴリズムの使用
収束するまで繰り返すことで最適解を得る
m
kk mpmpQ ),,x(log),,x(),( )()(
),(maxarg )()1( kk Q
Estimation ステップ
Maximizationステップ
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
を繰り返すことで近似解を得る
混合ごとの推定 は を最大化するよう混合ごとに決定
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
混合ごとの推定 )exp(1log ,, msnmmG
音声特徴量の推定
m
mGm
mp
mp
),(
),(
ˆ,
x
x
g
gxs ˆˆ
求めた を使いm
推定値に各混合の尤度を使って重み付き平均と定義しなおす
x
s
実験条件(雑音除去)
雑音の検出・識別 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
程度
検出・識別結果5 dB 0 dB -5 dB
再現率 0.820
0.897 0.952
適合率 0.827
0.831 0.833
識別率 0.283
0.404 0.470
適合率 =正しく検出されたフレーム数+誤検出フレーム数
正しく検出されたフレーム数
再現率= 正しく検出されたフレーム数+未検出フレーム数
正しく検出されたフレーム数
識別率 =正しく検出されたフレーム数
正しく検出されたフレーム数-識別誤り数
音声認識結果
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
音声認識結果
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
音声認識結果
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
未知雑音に対する実験結果 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
まとめと今後の予定 突発性の雑音除去法を提案した シミュレーションデータにおいて、雑音除去
によって認識率の改善が見られた 重み推定を行うことでの認識率の改善 未知雑音に対しても本手法の有効性を確認
大語彙・不特定話者での音声認識への適応実環境での実験