Detailed explanation of kenlm python module

Detailed explanation of kenlm python module


1. Import the model

import kenlm
model= kenlm.LanguageModel("a.bin")
a.bin 是训练的统计语言模型
  • 1
  • 2
  • 3

2. Score

1. ** model.score() function **

score=model.score(sentence, bos=True, eos=True)
sentence:如果句子是汉语,那么需要将句子分词
bos,eos:句子的开头和结尾加上标记
model.score():是log(p(sentence)),p(sentence)是0-1之间的数值,取对数(底数是10)之后,为负数,p(sentence)越大越好,取对数之后仍是越大越好
  • 1
  • 2
  • 3
  • 4

2. ** model.full_scores() function **

total=0.0
for score, _, _ in model.full_scores(sentence,bos=True, eos=True):
  	total+=score
total的结果和model.score()得分是相同的
total==model.score(sentence,bos=True, eos=True)
sentence:同上
bos,eos:

Guess you like

Origin blog.csdn.net/u013250861/article/details/132998772