What's New on Julius rev.3.2?

'01/06/18 李 (ri)


□Julian 統合版

Julius-3.2 から，正規文法に基づく認識エンジン Julian が Julius と同一
ソースで提供されるようになりました．configure時に "./configure
--enable-julian" とすることで，julian をコンパイルできます．


□機能強化

・SPセグメンテーションによる逐次デコーディング導入

  第1パスをショートポーズで区切って逐次的に第2パスを実行する逐次デコー
  ディングが組込まれました．無限長のファイルを入力とすることができます．
  configure 時に "--enable-sp-segment" を指定することで有効になります
  （デフォルトはオフです）．なお現バージョンでは，マイク入力に対して正
  しく動作しませんのでご注意下さい．

・Gaussian Mixture Selection による高速化

  音響尤度計算を高速化する Gaussian Mixture Selection が組み込まれまし
  た．フレームごとにモノフォンの状態の尤度で予備選択を行い，上位尤度の
  状態についてのみ対応するtriphoneを計算します．オプション "-gshmm" で
  GMS 用のモノフォンモデルを指定し，"-gsnum" で全状態のうち上位いくつ
  を選択するかを指定します．GMS用のモノフォンモデルは通常のモノフォン
  から付属のツール "mkgshmm" で作成します．

・透過単語処理

  単語N-gram計算時に特定単語をコンテキスト上でスキップする透過単語処理
  が組込まれました．単語辞書の第2カラム（出力文字列）で，通常の括弧
  "[]" のかわりに "{}" を指定すると，その単語が透過単語となります．
  起動時にオプション "-transp" で透過単語のみの接続ペナルティを指定す
  ることもできます．

・その他

  "-filelist ファイル名" で，認識する音声ファイルのリストをファイルで
  指定することができるようになりました．

  "-forcedict" で，認識辞書にエラーがあってもそのような単語をスキップし
  て認識を起動できます．

  ファイルに対してもマイク入力と同様に無音部検出による切り出しが行える
  ようになりました（-pausesegment）

  音声切り出しのパラメータを詳細に指定できるようになりました．
	-lv: 入力レベルのしきい値(0-32767)
	-zc: 零交差数のしきい値（１秒辺り）
	-headmargin: 先頭の無音部の長さ（単位：msec）
	-tailmargin: 末尾の無音部の長さ（単位：msec）

  マイク入力において Threading がデフォルトでサポートされるようになりま
  した．


□実装改善

・マイク入力における realtime-CMN の改善

  直前の１発話ではなく，直前の５秒分の入力（無音除く）で cepstral mean
  を計算するようになりました．また，１回の入力が50フレーム(0.5秒)以下
  の場合，CMNを更新しないようにしました．

・HMMList 改善

  PTM/triphone において，monophone や biphone を HMMList で定義しなく
  てもよくなりました．単語間triphoneにおいて該当triphoneがHMMListで定
  義されていない場合は，同じコンテキストを持つtriphoneの各状態の尤度を
  全て計算し，最尤のスコアを用います．

□ソース構成の変更

・main.c を m_*.c に分割しました．
・adin 関連を統合し，threading を改良しました．
  任意の入力ソースに対して threading の on/off などを指定可能です．
・音響尤度計算ルーチンを再構成しました（速度は変化なし）



その他，細かいバグフィックス

