雑音重み推定と音声 GMMを用いた雑音除去

Post on 05-Jan-2016

59 Views

Category:

Documents

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

雑音重み推定と音声 GMMを用いた雑音除去. 神戸大学大学院工学研究科   三宅 信之,滝口 哲也,有木 康雄. 研究の背景. 雑音が混入することで音声認識率が低下 そのため様々な雑音除去法が存在する 発話中に突如発生した雑音は除去しづらい. 研究の目的. クリーンスピーチに突発的な雑音が重畳したとき,その雑音を除去し、音声認識率を改善する. 電話音. o m o t e. システム全体の流れ. 音声特徴量 の抽出. 突発性雑音あり. 雑音の識別. 雑音除去. 雑音の検出. 音声認識. クリーンスピーチ. - PowerPoint PPT Presentation

TRANSCRIPT

雑音重み推定と音声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

まとめと今後の予定 突発性の雑音除去法を提案した シミュレーションデータにおいて、雑音除去

によって認識率の改善が見られた 重み推定を行うことでの認識率の改善 未知雑音に対しても本手法の有効性を確認

大語彙・不特定話者での音声認識への適応実環境での実験

top related