srilm安装及ngram-count简单使用
来源:互联网 发布:网络小仙女是什么意思 编辑:程序博客网 时间:2024/06/08 13:36
SRILM是一个统计和分析语言模型的工具,提供一些命令行工具,如ngram,ngram-count,可以很方便的统计NGRAM的语言模型。
1,下载
我开始在这个站上下载,感觉很慢。 http://www.speech.sri.com/projects/srilm/download.html。 然后直接换了个站下载,直接下载1.5版本的。
wget ftp://ftp.speech.sri.com/pub/people/stolcke/srilm/srilm-1.5.7.tar.gz 。这个版本也不低,现在最高的版本是1.7.
2,安装
我的机器是64位的。
安装这个包依赖于TCL包,TCL的下载地址是:http://www.tcl.tk/software/tcltk/download.html(这个包的安装,很常规,解压后,进入unix目录,下面就有configure文件了)
安装srilm过程:
- export SRILM=`pwd`。
- make MACHINE_TYPE=i686-m64。
- 如果提示找不到TCL库之类的错误,就修改Makefile文件,里面有 TCL_INCLUDE 与 TCL_LIBRARY 两个变量 ,比如可以分别设为-I/usr/local/include 以及 -L/usr/local/tcl8.5
- 进入test目录试一下,cd test ; make all .
这就编译完了,现在的命令行程序都在./bin/i686-m64/目录,我简单的把这个路径加到PATH里面去了。
3,测试
新建一个文本文件,如source.txt,随便搞个内容,如下:
[root@localhost lm]# cat source.txt If you do want to use SRILM or are generally interested in it, please consider joining the SRILM user mailing list.[root@localhost lm]#然后执行命令
ngram-count -text source.txt -lm source.lm
这就会建立基于source.txt的统计语言模型了,存储在source.lm中,如下:
[root@localhost lm]# cat source.lm \data\ngram 1=22ngram 2=22ngram 3=0\1-grams:-1.341524</s>-99<s>-99-1.341524If-99-1.050479SRILM-7.440329-1.341524are-99-1.341524consider-99-1.341524do-99-1.341524generally-99-1.341524in-99-1.341524interested-99-1.341524it,-99-1.341524joining-99-1.341524list.-99-1.341524mailing-99-1.341524or-99-1.341524please-99-1.341524the-99-1.341524to-99-1.341524use-99-1.341524user-99-1.341524want-99-1.341524you-99\2-grams:0<s> If0If you-0.30103SRILM or-0.30103SRILM user0are generally0consider joining0do want0generally interested0in it,0interested in0it, please0joining the0list. </s>0mailing list.0or are0please consider0the SRILM0to use0use SRILM0user mailing0want to0you do\3-grams:\end\[root@localhost lm]#
如果希望只针对指定的词进行统计,就建立一个词列表文件,如source.dict
[root@localhost lm]# cat source.dict youarelistplease[root@localhost lm]#
这样的话,等下就只是统计这四个单词。执行命令:
ngram-count -text source.txt -lm source.lm -vocab source.dict结果如下:
[root@localhost lm]# cat source.lm \data\ngram 1=6ngram 2=0ngram 3=0\1-grams:-0.60206</s>-99<s>-0.60206are-7.180781list-0.60206please-0.60206you\2-grams:\3-grams:\end\[root@localhost lm]#
没有2-grams,修改source.dict,使其可以出现2-grams语法,如下:
[root@localhost lm]# cat source.dict youdomailingarelistplease[root@localhost lm]#
再执行ngram-count,结果如下:
[root@localhost lm]# cat source.lm \data\ngram 1=8ngram 2=1ngram 3=0\1-grams:-0.7781513</s>-99<s>-0.7781513are-0.7781513do-7.269613list-0.7781513mailing-0.7781513please-0.7781513you-99\2-grams:0you do\3-grams:\end\[root@localhost lm]#
此时,you do作为一个2-gram出现,表示you 后面有do出现的概率。
- srilm安装及ngram-count简单使用
- Python安装nltk使用Ngram
- SRILM的安装与使用
- SRILM的安装与使用
- Count Ngram in NLP
- srilm 安装
- 【Natural Language Processing】语言模型训练工具Srilm的安装及使用简介
- win8 64bit下srilm+cygwin实现ngram语言模型
- n-gram统计 计算句子概率 SRILM安装使用
- ubuntu平台SRILM安装
- srilm的安装
- SRILM的安装方法
- Ubuntu 安装Srilm
- 语言模型-SRILM(1) 安装
- NuGet安装及简单使用
- CocoaPods安装及简单使用
- NuGet安装及简单使用
- adb安装及简单使用
- maven详解
- BeautifulSoup帮助文档
- S3C2440中断解析和基于WINCE操作系统的中断分析(整理于网络,用于按键中断使用)
- 如何做测试后的数据分析
- CentOS开启mysqld远程连接权限
- srilm安装及ngram-count简单使用
- Android_PreferenceActivity
- Entity Framework之问题收集
- C# WinForm控件的拖动和缩放的实现
- 中文字符、汉字在PHP正则表达式里该怎么表达
- mysql基本命令
- Android开发性能优化简介
- 用python 获取当前时间
- 【2012年终总结】之一 opencv + ds采集摄像头视频 MFC点点滴滴