有什么办法将2种ngram语言模型合并为1种?

时间:2018-06-25 08:57:26

标签: n-gram language-model

我现在有2种ngram语言模型(model_Amodel_B)。

  • 他们是根据不同的语料进行训练的,因此词汇是不同的
  • 它们通过退避进行了平滑处理,以ARPA格式存储,所以我有2个ARPA文件,ARPA_AARPA_B

现在,如果我想对它们进行插值,即输入任意短语ABC。

  • model_C(ABC) = 0.5 * model_A(ABC) + 0.5 * model_B(ABC)

如何将ARPA_AARPA_B合并为一个(ARPA_C)?

1 个答案:

答案 0 :(得分:0)

是的。可以组合两种ngram语言模型。考虑到您正在使用基于Open fst的Open ngram。

ngrammerge --use_smoothing --normalize --alpha=3 --beta=2 earnest.aa.mod earnest.ab.mod >earnest.merged.mod