1

私は次の方法で Java言語検出ライブラリを使用しています。

Detector detector = DetectorFactory.create(); //profiles are in the default location
detector.append("What language is this text?");
List<Language> languages = detector.getProbabilities();
Language mostProbable = languages.get(0);
System.out.println(mostProbable.lang + " - " + mostProbable.prob);

The prob value varies slightly from execution to execution given the exact same input. Is that "normal"? What does that depend on?

4

1 に答える 1

2

ライブラリが使用しているアルゴリズム/メソッドが決定論的でない場合、値は実行ごとに異なる場合があります。

たとえば、一部のアルゴリズムでは、開始するために初期シードを指定する必要があります。多くの場合、このシードは (疑似) ランダムに選択されます。これは、最終的な出力に影響を与える可能性があります。

編集:そのライブラリは単純なベイジアン分類子を使用しているようです (おそらくどちらかまたはどちらかです)。

于 2013-10-31T22:18:47.757 に答える