Skip to content

NDCPredictorの機械学習モデル(書誌情報から日本十進分類を推測するfastTextの学習済みモデル)

License

Notifications You must be signed in to change notification settings

ndl-lab/ndc_predictor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

概要

ndc_predictorは、fastText を利用した、書誌データからの NDC(9 版) 推定学習モデルである。 精度は以下の通りである。

モデル クラス 精度(R@1)
NDC1 桁 10 0.86
NDC2 桁 100 0.819
NDC3 桁 947 0.753

学習

学習データとしては、国立国会図書館の書誌データ(2017 年 7 月断面)のうち、NDC のある資料(4,256,238 件)のタイトル、出版者、責任表示のテキストを結合して利用している。 形態素解析には、 mecab-ipadic-neologd の辞書と kuromoji を利用している。kuromoji のモードは SEARCH である。

String ndc = "000"
String str = "any text";
List<String> toknes =  new ArrayList<>();
try (JapaneseTokenizer tokenizer_a = new JapaneseTokenizer(null, false, JapaneseTokenizer.Mode.SEARCH)) {
    tokenizer_a.setReader(new StringReader(str));
    CharTermAttribute term = tokenizer_a.addAttribute(CharTermAttribute.class);
    tokenizer_a.reset();
    while (tokenizer_a.incrementToken()) {
        tokens.add(term.toString());
    }
}
out.println("__label__"+ndc+" "+String.join(" ", tokens));

学習済みfastTextモデル

gzip で圧縮してあり、各 272MB である。

テストデータ

test 以下に、NDC3 桁モデル用の評価データを置いている。

./fasttext test model_ndc3.bin test_ndc3.txt

About

NDCPredictorの機械学習モデル(書誌情報から日本十進分類を推測するfastTextの学習済みモデル)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published