mkbingram — バイナリ N-gram 変換
mkbingram
[-nlr forward_ngram.arpa
] [-nrl backward_ngram.arpa
] [-d old_bingram_file
] {output_bingram_file}
mkbingram は,ARPA形式の N-gram 定義ファイルをJulius用のバイナリN-gram ファイルに変換するツールです.あらかじめ変換しておくことで,Juliusの起動を大幅に高速化できます.
Julius-4より,N-gram は前向き,後ろ向き,あるいは両方を指定できるようになりました.mkbingram でも,どちらか一方だけでバイナリN-gramを作成することができます.また,両方を指定した場合は,それら2つのN-gramは一つのバイナリN-gramに結合されます.
前向きN-gramのみが指定されたとき,mkbingram は 前向きN-gramだけからバイナリN-gramを生成します.このバイナリN-gramを使うとき,Julius はその中の 2-gram を使って第1パスを行い,第2 パ スではその前向き確率から後向きの確率を,ベイズ則に従って算出しながら認識を行います.
後向きN-gramのみが指定されたとき,mkbingramは後ろ向きN-gramだけからバイナリN-gramを生成します.このバイナリN-gramを使うとき,Julius はその中の後向き 2-gram からベイズ則に従って算出しながら第1パスの認識を行い, 第2パスでは後向き N-gramを使った認識を行います.
両方が指定されたときは,前向きN-gram中の2-gramと後向きN-gramが統合されたバイナリN-gramが生成されます.Juliusではその前向き2-gramで第1パスを行い,後向きN-gramで第2パスを行います.なお両 N-gram は同一のコーパスから同 一の条件(カットオフ値,バックオフ計算方法等)で学習されてあり, 同一の語彙を持っている必要があります.
なお,mkbingram は gzip 圧縮された ARPA ファイルもそのまま読み込めます.
バージョン 3.x 以前で作成したバイナリN-gramは,そのまま 4.0 でも読めます.mkbingram に -d
で与えることで,古いバイナリ形式を新しいバイナリ形式に変換することもできます.なお,4.0 以降の
mkbingram で作成したバイナリN-gramファイルは3.x 以前のバージョンでは使えませんのでご注意ください.
-nlr
forward_ngram.arpa
前向き(left-to-right)のARPA形式 N-gram ファイルを読み込む
-nrl
backward_ngram.arpa
後ろ向き(right-to-left)のARPA形式 N-gram ファイルを読み込む
-d
old_bingram_file
バイナリN-gramを読み込む(古いバイナリ形式の変換用)
-swap
文頭記号 <s> と文末記号 </s> を入れ替える.
output_bingram_file
出力先のバイナリN-gramファイル名
ARPA形式の N-gram をバイナリ形式に変換する(前向き+後ろ向き):
%
mkbingram -nlr 2gram.arpa -nrl rev-Ngram.arpa outfile
ARPA形式の前向き 4-gram をバイナリ形式に変換する(前向きのみ):
%
mkbingram -nlr 4gram.arpa outfile
古いバイナリN-gramファイルを現在の形式に変換する:
%
mkbingram -d old_bingram new_bingram