#include <sent/stddefs.h>
#include <sent/ngram2.h>
ngram_read_bin.cのインクルード依存関係図

関数 | |
| static void | rdn (FILE *fp, void *buf, size_t unitbyte, int unitnum) |
| static void | check_header (FILE *fp) |
| boolean | ngram_read_bin (FILE *fp, NGRAM_INFO *ndata) |
変数 | |
| static int | file_version |
| N-gram format version of the file. | |
| static boolean | need_swap |
| TRUE if need byte swap. | |
rev.3.5 より,バイナリN-gramのファイル形式の一部が変更されました. バイトオーダーが Big endian 固定からマシン依存に変更され(ヘッダに 変換時の条件を記述), またインデックスの 24bit 化 および 2-gram のバックオフデータの圧縮も行われました. これにより,3.5 以降の mkbingram で生成したバイナリN-gramは, 3.4.2以前の Julius では使えませんので注意してください. (ヘッダチェックでエラーとなる)
なお 3.5 以降の Julius では従来のモデルも問題なく読める.この場合, インデックスの 24bit 化とバックオフの圧縮はモデル読み込み時に その都度行われる.またバイトオーダーはヘッダを見て適宜変換するので, 異なるバイトオーダーのマシンで生成した バイナリN-gramでも問題なく読める.もちろん従来のモデルもそのまま 読み込める.
ngram_read_bin.c で定義されています。
|
||||||||||||||||||||
|
Binary read function with byte swap (assume file is BIG ENDIAN)
ngram_read_bin.c の 75 行で定義されています。 |
|
|
Check header to see whether the version matches.
ngram_read_bin.c の 96 行で定義されています。 参照元 ngram_read_bin(). |
|
||||||||||||
|
Read a N-gram binary file and store to data.
ngram_read_bin.c の 163 行で定義されています。 参照元 init_ngram_bin(). |
1.4.2