Juliusにおける音素環境依存性の扱いは,与えるモデルが以下のどれかの条件 にマッチしたときに ON になります.
音素環境依存性を扱うタイミングは,単語内と単語間で異なります.まず 単語内の依存性は第1パスから扱います.Juliusは初期化時に辞書ファイ ルを読み込む際に,辞書の音素表記を以下のように変換しながら,対応するHMM を割り当てていきます.このとき単語の先頭と終端は biphone の表記でアクセ スします.また1音素からなる単語については monophone としてアクセスしま す.
英訳+エイヤク+17 [英訳] e i y a k u
↓
英訳+エイヤク+17 [英訳] e+i e-i+y i-y+a y-a+k a-k+u k-u
単語間の依存性は第2パスで扱います.第2パスの探索時に,ある仮説から次の単語
を展開する際,接続部のモデルを依存性を考慮して切り替えていきます.
今日 + は ky+o: ky-o: h+a h-a
↓
今日 は ky+o: ky-o:+h o:-h+a h-a
Juliusでは基本的に,全ての出現し得るtriphoneについて対応するHMMの定義
を用意しておく必要があります.また,単語の始終端の音素や,1音素からな
る単語を考慮する必要があるため,片方のコンテキストのみの e+i
,k-u
と
いった biphone や,e
, k
などの monophone も全て同
様に参照可能にしておく必要があります.(詳細はこの文書の「注意」を参照
のこと)
hmmdefsで定義されていないモデルについては,次節で解説するHMMListファイルでマッピングを指定します.