Julian マニュアル

###

###

###

###

###

###

###

###

###

###

###

###

###

###

    NAME
           Julian  -  open  source  grammar-based  continuous  speech
           recognition parser

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

    DESCRIPTION
           Julian は有限状態文法に基づく連続音声認識を行う認識パー ザ
           で す．記述文法を用いた2パス構成の段階的探索により高精度な
           認識を行うことができます．

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

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

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

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

           言語モデル
                     タスク文法は，構文制約を単語のカテゴリを終端規則
                     としてBNF風に記述した grammar ファイルと，カテゴ
                     リ ご と の 単語の表記と読み（音素列）を登録する
                     voca ファイルに分けて記述します．これをコンパ イ
                     ラ mkdfa.pl (1) を用いて決定性有限状態オートマト
                     ンファイル(.dfa)と辞書ファイル(.dict)に変換し て
                     Julian に与えます．

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

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

    探索アルゴリズム
           Julian  の認識処理は2パス構成となっています．まず第1パスで
           は，与えられた文法よりも弱い制約規則を用いて高速かつ荒い認
           識を行います．ここでは文法規則からカテゴリ間の制約のみを抜
           きだしたカテゴリ対制約を用いて，LRビーム探索を行いま す ．
           第2 パスでは第１パスの結果を元に本来の文法による再探索行い
           ，高精度な解を高速に得ます．第２パスの探索は最適解が保証さ
           れるA*探索となります．

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

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

           ほとんどのオプションは Julius と共通です．
           Julian のみ：-dfa, -penalty1, -penalty2, -sp, -looktrellis
           Julius のみ：-nlr, -nrl, -d, -lmp, -lmp2,  -transp,  -sil-
           head, -siltail, -spdur, -sepnum, -separatescore

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

       音声入力ソース
           -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)．

       言語モデル(記述文法)
           -dfa dfa_filename
                  文法の有限状態オートマトンファイル(.dfa)を指定する(
                  必須)．

           -penalty1 float
                  第 １ パ スの単語挿入ペナルティを指定する (default:
                  0.0)

           -penalty2 float
                  第２パスの単語挿入ペナルティを指定 す る  (default:
                  0.0)

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

           -sp {WORD|WORD[OUTSYM]|#num}
                  「文中の短いポーズ」に対応する音響HMM名を指定する．
                  (default: "sp")

                  以下のいずれかの形式で指定する．

                                         例
               単語名                    <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)

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

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

           -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 candidate_num
                  この数の文仮説が得られるまで探索を続ける．得られ た
                  仮 説はスコアで再ソートされ、上位順に出力される． (
                  参考：-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)

           -looktrellis
                  単 語仮説を完全にトレリス内の単語だけに絞り，最尤フ
                  レーム検索も第１パスのトレリス単語の前後に絞り込 む
                  ． 特に大語彙では高速化の効果が高いが，誤りが増大す
                  ることもある．

       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" のように指定する．

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

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

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

           -demo  "-progout -quiet" に同じ．

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

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

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

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

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

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

    SEE ALSO
           julius(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
           正常終了した場合， Julian は exit status として 0 を返しま
           す．エラーが見付かった場合は異常終了し， exist status とし
           て 1 を返します．

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

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

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

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

           Rev.2.0 (1999/02/20)

           Rev.2.1 (1999/04/20)

           Rev.2.2 (1999/10/04)

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

           Rev.3.2 (2001/08/15)

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

    THANKS TO
           このプログラムは Rev.3.1 まで京都大学音声メディア研究室(旧
           堂 下 研)において開発されました．Rev.3.2 より以降は Julius
           と統合され，「情報処理学会 連続音声認識コンソーシアム」 に
           おいて公開されています．

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

           さまざまな助言・コメント・御指導いただく関係者各位に深く感
           謝いたします．

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