MLLR適応の方法

音響モデルのMLLR適応の方法を示します. ある特定のひとの音声や,特定の環境の音声を適応用データとし, それらのデータを元の音響モデルをMLLR適応することで, 学習データにおける話者,環境での認識率UPにつながります.

ここでは,MLLR適応の手順だけをしめし, 具体的な仕組みについては触れていません. また時間があればきちんとまとめたいと思っています.

間違った記述が含まれている可能性があるので自己責任でお使いください. 修正すべき箇所を教えてくださるとうれしいです. また,著作権など侵害している場合は勝丸(katumaru[at]kuis.kyoto-u.ac.jp) までご連絡ください.
ディレクトリ構成
  mllr 
  |-- config
  |   |-- config.HCopy
  |   |-- config.adapt-tri
  |   `-- config.train
  |-- lab
  |   `-- train-tri.mlf
  |-- model
  |   `-- phone
  |       |-- tri-2000x16-0
  |       `-- tri-2000x16-1
  |-- script
  |   `-- HCopy.scp
  |-- speech
  |   `-- balance
  |       |-- b01.ad
  |       |-- b02.ad
  |       |-- ...
  |       |-- b49.ad
  |       `-- b50.ad
  `-- work
      |-- logicalTri
      `-- mllr_tri-mix16.hed


準備するもの
  • 適応前の音響モデル (下記では hmmdefsとしてでてきます)
  • HTK
  • 録音するなにか(adinrecとか)
    このページで用意していないのは以上だと思います. その他のファイルは下記で,作成するか,ダウンロードできると思います.
    作成手順
    1. 音声録音 バランス単語の録音: b01--b50
      adinrec -lv 1000 -raw -freq 16000 b01.ad

      音声再生
      play -x -c 1 -r 16000 -s -w -t raw b01.ad
      これらをspeech/balance/以下に入れます.

    2. RawファイルからMFCCファイルを作成します.
      HCompV -T 1 \
      -C ../config/config.HCopy \
      -S ../script/HCopy.scp \

      1. ../config/config.HCopy : 変換前後の音声の種類を記述したファイル
      2. ../script/HCopy.scp : 変換前後の音声ファイル名を記述したファイル

    3. 回帰木クラスタリング
      HHEd -T 1 \
      -H ../model/phone/tri-2000x16-0/hmmdefs \
      -M ../model/phone/tri-2000x16-1 \
      mllr_tri-mix16.hed logicalTri

      1. ../model/phone/tri-2000x16-0/hmmdefs : 適応前の音響モデル
      2. ../model/phone/tri-2000x16-1 :クラスタリング結果の出力先ディレクトリ
      3. mllr_tri-mix16.hed: 設定ファイル
      4. logicalTri: ロジカルトライ

    4. 適応を行います.
      HHRest -T 1 \
      -C ../config/config.train \
      -C ../config/config.adapt-tri \
      -I ../lab/train-tri.mlf \
      -H ../model/phone/tri-2000x16-1/hmmdefs \
      -H ../model/phone/tri-2000x16-1/rtree.base \
      -K ../model/phone/tri-2000x16-2 \
      -h '../mfcc/%%%%%%%/*.mfc' \
      -u a \
      logicalTri \
      ../mfcc/balance/*.mfc \

      1. ../config/config.train : 適応前後のMFCCの種類を記述したファイル
      2. ../config/config.adapt-tri : 適応時の設定ファイル
      3. ../lab/train-tri.mlf : 適応させる音声のMaster Label File
      4. ../model/phone/tri-2000x16-1/hmmdefs : Step3で出力される音響モデル
      5. ../model/phone/tri-2000x16-1/rtree.base : Step3で出力される回帰木
      6. ../model/phone/tri-2000x16-2 : 適応結果の出力先ディレクトリ. ここの適応結果のモデルが格納される.
      7. '../mfcc/\%\%\%\%\%\%\%/*.mfc' : 適応用音声の指定
      8. -u a : HERestコマンドでMLLR適応を行なうことを指定
      9. logicalTri : ロジカルトライ
      10. ../mfcc/balance/*.mfc : 適応用音声のMFCC
    Back To Katsumaru's Top page
    Back To Member page