[音声認識] Juliusの音響モデルと言語モデル

### 音響モデル
音響モデルとしてHMM(Hidden Markov Model)を用いることが出る。
コンテキスト非依存モデル、コンテキスト依存モデルまで扱える
出力確率モデルはガウス混合分布を基本として、tied-mixtureやphonetic tied-mixtureモデルを扱える

### 音響モデルのファイル形式
– HTK ascii形式
 L ASCII形式のHMM定義ファイルを読み込む
– Julius用バイナリ形式
L Julius用バイナリ形式へ変換しておくことで、読み込み時間を短縮できる
  L 特徴量抽出の条件パラメータを埋め込むこともできる
– HMMListファイル
L 単語辞書の音素表記、トライフォンの論理音素名、実際の音響モデル上の物理音素名との対応を与えることができる

### 音素コンテキスト依存モデル
与えられた音韻モデルが音素環境依存モデルであるかどうかをHMMの名称パターンから判定する(logical phoneとphysical phone)
単語間トライフォン近似とは、単語の前後に接続する読みの影響を受けて変化すること

状態遷移とマルチパスモード
L 音響モデル内の状態遷移のパターンを調べ、そのパターンに対応する効率的な計算処理を選択する

### 言語モデル
単語N-gram、記述文法、単語リストなどの言語モデルをサポートしている

– 単語辞書
L 認識対象とする単語とその読みを定義する
L ファイル形式はHTKの辞書フォーマットを拡張したもので第一フィールは言語制約の対応エントリ
  L 第二フィールはエントリ内確率、第三フィールドは出力文字列、以降は音素列
  L 情報が少ない場合は透過単語として指定する、無音用単語の追加もできる

– N-gram
  L N-gramファイルおよび各単語の読みを記述した単語辞書の2つをJuliusに与えて認識する
  L ARPA標準形式とJuliusバイナリ形式をサポートしている
  L SRIMでは、文開式記号について特殊な処理が行われる

デフォルトの語彙数は65534語である
与えられた文法上で可能な文のパターンから、入力に最もマッチする文候補が選ばれ、認識結果として出力される
  L grammarファイルとvocaファイルがある
L grammarファイルでは単語のカテゴリ間の構文制約をBNF風に記述する
  L vocaファイルはgrammarファイルで記述した終端記号ごとに単語を登録する ”%”で始まる行はカテゴリ定義

grammarファイルとvocaファイルをmkdfa.plを用いてdfaファイルとdictファイルに変換する

文法における文中の短時間無音の指定
 L 息継ぎによる発声休止を指定することができる

DFAファイルはオートマトン定義ファイルであり、文法制約を有限状態のオートマントンに変換している

– 単語リスト
音声コマンドや音声リモコンのような単純で簡単な音声認識を手軽に実現できるよう孤立単語認識を行える

—-
なるほど、grammarファイルとvocaファイルを作成してコンパイルするのね。
発音音素列の記述は英字で書くのか。
音声から文章にする場合は、形態素分析のように品詞の指定は行ってないのね。
ARPA標準フォーマットがどういう形式なのか気になるな。