Julius マニュアル

###

###

###

###

###

###

###

###

###

###

###

###

###

###

    NAME
           Julius - open source multi-purpose LVCSR engine

    SYNOPSIS
           julius [-C jconffile] [options ...]

    DESCRIPTION
           Julius  は数万語を対象とした大語彙連続音声認識を行うことの
           できるフリーの認識エンジンです．単語3-gramを用いた2パス 構
           成の段階的探索により高精度な認識を行うことができます．

           認識対象はマイク入力，録音済みの音声波形ファイルおよび特徴
           抽出したパラメータファイルに対応しています．また標準的な形
           式の音響モデルや言語モデルを読み込んで使用することができる
           ので，様々な音響モデルや言語モデルを切り替えて様々な条件で
           認識を行うことができます．

           語彙数の上限は 65,535 語です．

    使用モデル
           Julius では以下のモデルを用います．

           音素モデル
                     音素HMM(Hidden Markov Model)を用います．音素モデ
                     ル(monophone)，音素環境 依 存 モ デ ル(triphone)
                     ，tied-mixtureモデル，phonetic tied-mixture モデ
                     ルを扱えます．音素環境依存モデルの場合は単語間の
                     依存関係も考慮されます． HTK のHMM定義言語で書か
                     れたHMM定義ファイルを読み込むことができます．

           言語モデル
                     言語モデルとして2-gramおよび逆向きの3-gramを用い
                     ます． ARPA standard format およびそれらを付属の
                     mkbingram で変換したバイナリ形式のN-gramを読み込
                     むことができます．

    音声入力
           マイクロフォン端子やDatLink(NetAudio)からのLive入力が可能
           です．サンプリングした音声ファイル(16bit WAV(無圧縮),  RAW
           等)や特徴パラメータファイル(HTK形式)で与えることもできます
           ．また専用クライアント adintool を用いたネットワーク経由で
           の音声入力も可能です．

           注意：Julius内部で計算できる特徴量はMFCC_E_D_N_Zのみです．
           これ以外の特徴抽出を必要とするHMMを使う場合は，マイク入 力
           や音声波形ファイル入力は使えません． wav2mfcc などの別ツー
           ルで抽出した特徴パラメータファイル(.mfc)を与えるようにして
           下さい．

    探索アルゴリズム
           Julius  の認識処理は2パス構成です．まず第1パスで入力全体を
           完全に処理し，中間結果を出力します．モデルは単語2-gramと単
           語HMMの木構造ネットワークを用います．解探索はleft-to-right
           にフレーム同期ビーム探索を行います．

           第2パスでは3-gramを用いて逆向きに探索を行い，より精度の 高
           い 認識結果を求めます．第1パスの中間結果を絞り込み＋先読み
           情報として用い，単語単位のスタックデコーディングを行います
           ．

           音 素環境依存モデル(triphone)を用いたときは，第1パスおよび
           第2パスで単語間の音 素 環 境 依 存 を 考 慮 し ま す ． ま
           たtied-mixture やphonetic  tied-mixture モデルではGaussian
           pruningによる高速な音響尤度計算を行います．

    OPTIONS
           以下のオプションで使用モデルやパラメータなどを指定します．
           コマンドライン上で指定するほか， jconf設定ファイルとして１
           つのテキストファイル内にまとめて記述しておき， 起 動 時 に
           "-C" で指定することができます．

           以下は全てのオプションの説明です．

       音声入力ソース
           -input {rawfile|mfcfile|mic|adinnet|netaudio|stdin}
                  音 声 デ ータの入力ソースを選択する．それぞれ 'raw-
                  file' は波形ファイル，フォン 入 力 ，'adinnet'   は
                  adinnet クライアントからのネットワーク経由入力，

                  サ ポートする音声波形ファイル形式については，コンパ
                  イル時にlibsndfileがあるかどうかで変わる．実際に そ
                  の 実行バイナリでどの形式がサポートされているかはオ
                  プション "-help" で確認できる．なお標準入力について
                  はWAV(無圧縮) およびRAW(16bit,BE)のみをサポートする
                  ．
                  (default: mfcfile)

           -filelist file
                  (-input rawfile|mfcfile 時) 認識対象のファイルが 複
                  数ある場合に，そのリストを与えてバッチ処理させる．

           -adport portnum
                  (-input adinnet 時) adinnet で使用するポート番号．
                  (default: 5530)

           -NA server:unit
                  (-input  netaudio)  接続するDatLinkサーバ名とユニッ
                  トID．netaudio 使用時必須．

       音声区間検出
           -cutsilence

           -nocutsilence
                  入力に対する音声区間検出をするかしな い か を 指 定
                  ．(default:  mic または adinnet は ON, ファイル入力
                  は OFF)

           -lv threslevel
                  波形の振幅レベルのしきい値( 0 - 32767)．振幅がこ の
                  値 を越えたときに音声区間の開始とみなし，次にこの値
                  を下回ったときに音声区間終了とする(default: 3000)．

           -zc zerocrossnum
                  １秒あたりの零交差数のしきい値 (default: 60)

           -headmargin msec
                  音声区間開始部のマージン．単位はミリ秒
                  (default: 300)

           -tailmargin msec
                  音声区間終了部のマージン．単位はミリ秒
                  (default: 400)

           -nostrip
                  録 音デバイスによって生じることのある，録音開始時あ
                  るいは終了時の無効な 0 値サンプルの自動除去を行わな
                  いようにする．デフォルトは自動除去を行う．

       音響分析
           -smpFreq frequency
                  音声のサンプリング周波数を Hz で指定
                  (default: 16kHz = 625ns)．

           -smpPeriod period
                  音声のサンプリング周期をナノ秒で指定
                  (default: 625ns = 16kHz)．

           -fsize sample
                  窓サイズをサンプル数で指定 (default: 400)．

           -fshift sample
                  フレームシフト幅をサンプル数で指定 (default: 160)．

           -delwin frame
                  デルタウィンドウ幅をフレーム数で指定 (default: 2)．

           -hipass frequency
                  高域カットオフする周波数を Hz で指定．
                  (default: -1 = disable)

           -lopass frequency
                  低域カットオフする周波数を Hz で指定．
                  (default: -1 = disable)

           -sscalc
                  フ ァイル先頭の無音部を用いて，入力全体に対してスペ
                  クトルサブトラクションを行う．ファイル入力に対し て
                  のみ有効．

           -sscalclen
                  フ ァイル先頭の無音部の長さをミリ秒で指定 (default:
                  300)

           -ssload filename
                  ノイズスペクトルをファイルから読み込み，それを用 い
                  て 入力に対してスペクトルサブトラクションを行う．フ
                  ァイルはあらかじめ mkss で作成する． マ イ ク 入 力
                  ，adinnet入力では"-sscalc" ではなくこちらを使う必要
                  がある．

           -ssalpha value
                  スペクトルサブトラクションのアルファ係数．大きい ほ
                  ど強く減じるが，歪みも大きくなる． (default: 2.0)．

           -ssfloor value
                  スペクトルサブトラクションのフロアリング係数．減 じ
                  た結果パワーが 0 以下になった部分スペクトルに対して
                  ，原信号の係数倍の信号を割り当てる (default: 0.5)．

       言語モデル(N-gram)
           -nlr 2gram_filename
                  単語2-gramのファイル名(ARPA形式)．

           -nrl rev_3gram_filename
                  逆向き単語3-gramファイル名．第2パス実行時必須．指定
                  しない場合は探索を第1パスのみ実行する．

           -d bingram_filename
                  mkbingram で作成したバイナリ形式N-gramファイルを 指
                  定 する． "-nlr", "-nrl" の代わりに使用することで起
                  動を高速化できる．

           -lmp lm_weight lm_penalty

           -lmp2 lm_weight2 lm_penalty2
                  第1パスと第2パスの言語スコアの重みと単語挿入ペナ ル
                  ティ．

                  実 際の仮説の言語スコアは，N-gramの対数尤度を以下の
                  式によってスケーリングしたものが用いられる．

                  lm_score1 = lm_weight * 2-gramスコア  +  lm_penalty
                  lm_score2 = lm_weight2 * 3-gramスコア + lm_penalty2

                  default値：モデルによって変化する

                    第1パス  | 第２パス
                   ---------------------------
                    5.0 -1.0 |  6.0  0.0 (monophone)
                    8.0 -2.0 |  8.0 -2.0 (triphone,PTM)
                    9.0  8.0 | 11.0 -2.0 (triphone,PTM, setup=v2.1)

           -transp float
                  透過単語用に対して追加する単語 挿 入 ペ ナ ル テ ィ
                  (default: 0.0)

       単語辞書
           -v dictionary_file
                  単語辞書ファイル(必須)．

           -silhead {WORD|WORD[OUTSYM]|#num}

           -siltail {WORD|WORD[OUTSYM]|#num}
                  文頭／文末の無音に対応する辞書単語を指定する．
                  (default: "<s>" / "</s>")

                  こ れらは認識時に仮説の始終端として特別に扱われる．
                  以下のいずれかの形式で指定する．

                                         例
               単語名                    <s>
               単語名[出力シンボル]   <s>[silB]
               #単語ID                   #14

                  (単語番号は辞書ファイルの並び順に0番から)

           -forcedict
                  辞書中の誤った単語エントリをスキップして起動を続 行
                  する．

       音響モデル(HMM)
           -h hmmfilename
                  使用するHMM定義ファイル名(必須)．

           -hlist HMMlistfilename
                  HMMlist ファイル名．triphone体系のHMM使用時に必須で
                  ある．

                  このファイルは，辞書の音素表記 か ら 生 成 し た 論
                  理triphone名からHMM定義名への写像を与える．詳細は付
                  属ドキュメントを参照のこと．

           -iwcd1 {max|avg}
                  triphone使用時，第1パスの単語間triphoneの音響尤度計
                  算方法を指定する．

                  max: 同コンテキストtriphoneの最大値 (default)
                  avg: 同コンテキストtriphoneの平均値

           -force_ccd / -no_ccd
                  単 語間の音素環境依存を考慮するかしないかを明示的に
                  指定する．指定がない場合はモデルの名前定義から推 察
                  す る．なおtriphone以外で -force_ccd を指定したとき
                  の動作は保証されない．

           -notypecheck
                  入力特徴パラメータの型チェックを無効にする．
                  (default: チェック有効)

       音響尤度計算
           Gaussian pruning は tied-mixture ベースの音響モデルにお い
           て 自 動 的 に 有 効 となる．Gaussian Selection の使用には
           mkgshmm で変換されたモノフォンモデルが必要である．

           -tmix K
                  Gaussian pruning でコードブックごとに上位K個のガ ウ
                  ス分布を計算する． (default: 2)

           -gprune {safe|heuristic|beam|none}
                  Gaussian pruning の手法を指定する．
                  (default: safe (標準版) beam (高速版))

           -gshmm hmmdefs
                  Gaussian Mixture Selection 用のモノフォン音響モデル
                  を指定する． GMS用モノフォンは通常のモノフォンか ら
                  mkgshmm(1) によって生成できる．
                  デフォルトは指定無し(GMSを使用しない)．

           -gsnum N
                  GMS 使用時，全モノフォンの状態の中から上位 N 個の状
                  態のみトライフォンを計算する (default: 24)

       ショートポーズセグメンテーション
           -spdur (--enable-sp-segment 時) 第1パスの sp 継続時間長 の
                  し きい値(単位：フレーム)．ショートポーズ単語が最尤
                  であるフレームがこの時間以上継続したら，第１パス を
                  中断して第２パスを実行する．(default: 10)

       探索パラメータ（第1パス）
           -b beamwidth
                  ビーム幅．HMMのノード数で指定する．値が大きいほど安
                  定した結果が得られるが，処理時間とメモリ量を消費 す
                  る．

                  default値：モデルによって変化する
                    400 (monophone 使用時)
                    800 (triphone,PTM 使用時)
                   1000 (triphone,PTM,engine=v2.1)

           -sepnum N
                   (./configrue --enable-lowmem2 指定時) 辞書木から分
                  離する高頻度語の数
                  (default: 150)

           -1pass 第1パスのみ実行する．単語3-gramの指定が無い場合自動
                  的にこのモードになる．

           -realtime

           -norealtime
                  第1パスを実時間処理するかを明示的に指定する．デフォ
                  ルトは，ファイル入力について OFF (-norealtime)， マ
                  イ ク ・NetAudio ・ ネ ッ ト ワ ーク入力について ON
                  (-realtime)．このオプションは CMN と密接な関係に あ
                  る：OFF の際は CMN は１入力ごとにそれ自身から計算さ
                  れるが，ON の場合は直前の５秒分の入力の値を常に用い
                  る．-progout も参照のこと．

           -cmnsave filename
                  認識中に計算したCMNパラメータをファイルへ保存する．
                  保存は一入力認識のたびに行われる．すでにファイル が
                  ある場合は上書きされる．

           -cmnload filename
                  初期CMNパラメータをファイルから読み込む．ファイルは
                  "-cmnsave" で保存したファイル．これによってマイク入
                  力やネットワーク入力においても起動後の入力第1発話か
                  らCMNを適用できる．

       探索パラメータ（第2パス）
           -b2 hyponum
                  仮説エンベロープの幅．仮説の各長さごとに，この数 を
                  越 える仮説が展開されたらそれより短い仮説を展開しな
                  いようにする．探索失敗を防ぐ効果がある．
                  (default: 30)

           -n candidatenum
                  この数の文仮説が得られるまで探索を続ける．得られ た
                  仮 説 は スコアで再ソートして結果を出力する． (参考
                  ：-outputオプション)．

                  Juliusでは第2パスの探索の最適性は厳密には保証されな
                  い ため，最尤候補が常に最初に得られるとは限らない．
                  この値が大きいほど真の最尤仮説が得られる可能性が 高
                  く な る が ， 長く探索するため処理時間は大きくなる
                  ．(default: 1)

                  default値：エンジン設定(--enable-setup=)に依存
                    10  (standard)
                     1  (fast,v2.1)

           -output N
                  "-n"オプションで指定した仮説数のうち，上位N個を出力
                  する
                  (default: 1)．

           -sb score
                  ス コアエンベロープの幅．各フレームごとに，それまで
                  の最大スコアからこの幅以上離れた部分について はscan
                  しない．第2パスの音響尤度計算の高速化に効果がある．
                  (default: 80.0)

           -s stack_size
                  解探索中にスタックに保持する仮説の最大数．値が大 き
                  い ほど安定した結果が得られるが必要メモリ量が増える
                  ．(default: 500)

           -m overflow_pop_times
                  解探索打ち切りと判断する展開仮説数のしきい値．展 開
                  さ れた仮説数がこの数を越えたとき，そこで探索を打ち
                  切る．値が大きいほどあきらめずに探索を続けるが， 探
                  索失敗時の処理時間は長くなる．(default: 2000)

           -lookuprange nframe
                  単 語展開時に前後何フレームまでみて展開単語を決める
                  かを指定する．短い単語の脱落防止に効果があるが， 値
                  が大きいと展開仮説が増えるため遅くなる．
                  (default: 5)

       Forced alignment
           -walign
                  認識結果に対して，単語単位のViterbiアラインメントを
                  行う．単語ごとにマッチした区間，およびフレームご と
                  の平均音響尤度が出力される．

           -palign
                  認識結果に対して，音素単位のViterbiアラインメントを
                  行う．音素ごとにマッチした区間，およびフレームご と
                  の平均音響尤度が出力される．

           -salign
                  認識結果に対して，状態単位のViterbiアラインメントを
                  行う．状態ごとにマッチした区間，およびフレームご と
                  の平均音響尤度が出力される．

       サーバーモジュールモード
           -module [port]
                  サ ーバーモジュールモードで起動する．起動後はクライ
                  アントからのtcpip接続を待ち，クライアントからのコマ
                  ン ドの処理およびクライアントへの認識結果や入力トリ
                  ガ情報を送信する．複数文法認識はこのサーバーモジ ュ
                  ー ルモードでのみ使用することができる．詳細は関連ド
                  キュメント参照のこと．ポート番号のデ フ ォ ル ト は
                  10500 である．

           -outcode [W][L][P][S][w][l][p][s]
                  サ ーバーモジュールモード時に，クライアントへ送信す
                  る認識結果の内容を指定する．それぞれ 'W' は単語の通
                  常 の 出 力文字列，'L' は文法エントリ，'P' は音素列
                  ，'S' はスコアを表す．大文字は第2パス，小文字は 第1
                  パ スに対応する．例えば第２パスの単語と音素列のみを
                  送信したい場合は，"-outcode WP" のように指定する．

       メッセージ出力
           -separatescore
                  言語スコアと音響スコアをわけて出力する．

           -quiet 音素列やスコアを省略して，ベストの仮説の単語列だ け
                  出力する．

           -progout
                  第1パスの途中結果を一定時間おきに漸次出力する．

           -proginterval msec
                  -progout 時の出力インターバルを指定(単位：ミリ秒)

           -demo  "-progout -quiet" と等価．

       その他
           -debug 大量のデバッグ用内部メッセージを出力する．

           -C jconffile
                  jconf設定ファイルの読み込み．これらの実行時オプショ
                  ンをあらかじめ記述して読み込ませることができる． ま
                  た，あるjconf設定ファイル内でこのオプションにより他
                  のjconf設定ファイルを include することができる．

           -check wchmm
                  (デバッグ用)木構造化辞書の構造を対話的にチェック す
                  る．

           -check triphone
                  (デバッグ用)音響モデル(とHMMList)による辞書上の単語
                  の実際のマッピングを対話的にチェックする．

           -version
                  プログラム名・コンパイル時刻・コンパイル時オプシ ョ
                  ンを表示して終了する．

           -help  簡単なオプション一覧を表示後終了する．

    EXAMPLES
           使用例については付属のチュートリアルをご覧下さい．

    NOTICE
           jconf 設定ファイル内でファイルを相対パスで指定する場合，そ
           れは実行時のカレントディレクトリは無関係に，その jconf  フ
           ァイルが置いてある場所からの相対パスとして解釈される点に注
           意してください．

    SEE ALSO
           julian(1), mkbingram(1), mkss(1), jcontrol(1), adinrec(1),
           adintool(1), mkdfa(1), mkgsmm(1), wav2mfcc(1)

           http://julius.sourceforge.jp/  (main)
           http://sourceforge.jp/projects/julius/ (development site)

    DIAGNOSTICS
           正常終了した場合， Julius は exit status として 0 を返しま
           す．エラーが見付かった場合は異常終了し， exist status とし
           て 1 を返します．

           入力ファイルが見つからない場合やうまく読み込めなかった場合
           は，そのファイルに対する処理をスキップします．

    BUGS
           Julius で使用できるモデルにはサイズやタイプに若干の制限 が
           あります．詳しくはパッケージに付属のドキュメントを参照して
           ください．

           バグ報告・問い合わせ・コメントな ど は  julius@kuis.kyoto-
           u.ac.jp までお願いします．

    AUTHORS
           Rev.1.0 (1998/02/20)
                  河原 達也  と  李 晃伸 (京都大学)
                  が設計を行いました．

                  李晃伸 (京都大学)
                  が実装しました．

           Rev.1.1 (1998/04/14)

           Rev.1.2 (1998/10/31)

           Rev.2.0 (1999/02/20)

           Rev.2.1 (1999/04/20)

           Rev.2.2 (1999/10/04)

           Rev.3.0 (2000/02/14)

           Rev.3.1 (2000/05/11)
                  李 晃伸 (京都大学)
                  が実装しました．

           Rev.3.2 (2001/08/15)

           Rev.3.3 (2002/09/11)
                  李 晃伸 (奈良先端大)
                  が主に実装しました．

    THANKS TO
           このプログラムは Rev.3.1 まで，情報処理振興事業協会(IPA)独
           創的情報技術育成事業「日本語ディクテーションの基本ソフトウ
           ェアの開発」(代表者：鹿野清宏 奈良先端科学技術大学院大学教
           授)の援助を受けて行われました．

           Rev.3.2以降は「情報処理学会 連続音声認識コンソーシアム」に
           おいて公開されています．

           Windows DLL版 は板野秀樹氏(名古屋大学)の手によって作成・公
           開されています．

           Windows Microsoft Speech API対応版は住吉貴志氏(京都大学)の
           手によるものです．

           上記の協力・貢献してくださった方々，およびさまざまな助言・
           コメントをいただく関係者各位に深く感謝いたします．

           また，開発に際して言語モデルを提供して頂いた伊藤克亘氏( 電
           子技術総合研究所)，音素モデルを提供して頂いた武田一哉氏(名
           古屋大学)をはじめとする関係各位に感謝します．また伊藤克 亘
           氏をはじめ多くの方に動作確認とデバッグを行って頂きましたこ
           とを感謝します．

           最後に，バグ報告や提案をしていただいている Julius users ML
           の メンバーの方々をはじめとするLinuxコミュニティの方々に感
           謝します．

Last modified: 2002/09/11 21:00:39