kenlm
- 安装kenlm,他是基于cmake的c++程序,在非root情况下需要指定几个参数,还需要下载几个安装包;安装教程见之后的博客,或者可查阅其它,教程很多。
- 安装完毕后,执行
lmplz -o 2 --verbose_header --text test1.txt --arpa douban.arpa
注:lmplz --help可以得到每一个参数的意义 - 语料库可以是多种语言,我在这里是根据具体任务对双语语料各自生成了语言模型,一般用三元语言模型。
N-gram
- n元语言模型这个名词已经在很多博客和paper中见到了,基于统计概率的一种语言模型。之前面试中也碰到过深入介绍语言模型的问题,当时并没有很深入的理解透彻,所以来此总结一下。
- 以中文为例:(如果语料太少,可能会出现如下错误)
按照提示直接将以上执行命令改成:
lmplz -o 3 --discount_fallback --verbose_header --text test1.txt --arpa douban.arpa
原文本:
得到的arpa文件滋 润 侧 重 保 湿 适 合 各 种 肤 质 调 节 肌 肤 水 平 衡 它 还 具 有 修 复 功 效 提 亮 肤 色 我 是 油 性 肤 质 味 道 淡 淡 的 还 很 好 闻 也 很 好 吸 收 质 地 清 爽
ngram 1=49 ngram 2=61 ngram 3