SRILM 语言模型训练工具
2013-09-09 11:06
1316 查看
1,下载
2,安装
3,配置
将bin和bin/i686-m64添加到PATH环境变量中
4,测试
./ngram-count -help
5,海量语料训练
由于对于大规模语料进行语言模型的训练,经常会导致内存问题。
经过测试,用srilm处理一个3G的语料,训练3元语言模型,32G内存根本就不够用。
解决方案:把文件给分开了,然后分别算词频并merge起来,做成一个语言模型,具体参见。
操作步骤:
1 把文件给分割开,放在一个目录下,然后生成一个文件名列表文件,如filelist ,一般使用按行分割的形式,split -l100 test.txt out
2 使用make-batch-counts分别统计各个文件中的词频,make-batch-countsfilelist 5 cat counts -order3,其中filelist为需要统计的文件名列表,5为文件batch的个数,就是5个小文件分成一组进行处理。catlmcount 表示输出到counts,后续则是提交给ngram-count的参数,需要什么写什么就行了。
3 使用merge-batch-counts合并统计文件,merge-batch-countscounts,然后在counts下把文件都合成了一个文件*.gz
4 使用make-big-lm生成模型,make-big-lm -readcounts/??.gz -order 3 -lm test.lm,和ngram-count 的用法一致
参考文档:srilm 语言模型的内存问题
2,安装
make SRILM=$PWD
3,配置
将bin和bin/i686-m64添加到PATH环境变量中
4,测试
./ngram-count -help
5,海量语料训练
由于对于大规模语料进行语言模型的训练,经常会导致内存问题。
经过测试,用srilm处理一个3G的语料,训练3元语言模型,32G内存根本就不够用。
解决方案:把文件给分开了,然后分别算词频并merge起来,做成一个语言模型,具体参见。
操作步骤:
1 把文件给分割开,放在一个目录下,然后生成一个文件名列表文件,如filelist ,一般使用按行分割的形式,split -l100 test.txt out
2 使用make-batch-counts分别统计各个文件中的词频,make-batch-countsfilelist 5 cat counts -order3,其中filelist为需要统计的文件名列表,5为文件batch的个数,就是5个小文件分成一组进行处理。catlmcount 表示输出到counts,后续则是提交给ngram-count的参数,需要什么写什么就行了。
3 使用merge-batch-counts合并统计文件,merge-batch-countscounts,然后在counts下把文件都合成了一个文件*.gz
4 使用make-big-lm生成模型,make-big-lm -readcounts/??.gz -order 3 -lm test.lm,和ngram-count 的用法一致
参考文档:srilm 语言模型的内存问题
相关文章推荐
- [转]语言模型训练工具SRILM
- 语言模型训练工具SRILM
- 语言模型训练工具:SRILM的使用
- Mac OSX下安装配置SRILM语言模型训练工具
- 语言模型训练工具SRILM
- 语言模型训练工具SRILM详解
- 语言模型训练工具SRILM详解
- SRILM---语言模型训练工具SRILM详解
- 语言模型训练工具SRILM详解
- SRILM语言模型工具
- 概率语言模型 Probabilistic Language Modeling (三) --- 训练工具汇总
- 利用开源工具搭一套汉英翻译系统(三):语言模型工具SRILM
- SRILM使用之训练无平滑语言模型
- SRILM使用之用平滑Katz回退训练语言模型
- 对于无法连接外网的用户,如何编译语言模型训练工具bigfatlm
- SRILM--语言模型--N-Gram基本介绍
- 使用PaddleFluid和TensorFlow训练RNN语言模型
- 自然语言处理中的语言模型预训练方法
- 语言模型srilm(二) prune剪枝
- 使用训练好的语言模型与声学模型