Ubuntu18.4安装srilm工具并训练ARPA语言模型

一. 安装 SRILM 工具
  1. 依赖安装

    sudo apt-get install gcc g++
    sudo apt-get install make
    sudo apt-get install gawk
    sudo apt-get install gzip
    sudo apt-get install bzip2
    sudo apt-get install p7zip
    
  2. 下载 tcl , srilm
    官网下载: srilm.tgz
    官网下载: tcl8.6.12-src.tar.gz
    快捷下载: 快捷下载入口

  3. 安装tcl

    	mv ~/tcl8.6.12-src.tar.gz /usr/local && cd /usr/local/
    	tar -zxvf tcl8.6.12-src.tar.gz
    	cd tcl8.6.12/unix 
    	make
    	make install (权限问题 加 sudo)
    

4.安装srilm

cd /usr/local/srilm
vim Makefile 

将srilm的路径改为你的路径 ps :一开始的时候是#注释的 这里我们直接SRILM = $(PWD)即可 保存退出
在这里插入图片描述
执行 uname -i 查看主机型号
在这里插入图片描述
cd common && vim Makefile.machine.i686-m64(根据机器型号而定)
修改这里我们仅需要将 NO_TCL = XGAWK = /usr/bin/gawk
在这里插入图片描述
回退srilm文件夹下,执行: make World 电脑在进行安装
测试 输入make test 出现很多的IDENTICAL就说明安装成功了。
在这里插入图片描述
设置环境变量:vim ~/.bashrc
在这里插入图片描述
执行 source ~/.bashrc

二. 训练模型

训练模型需要文本原始语料,例如 speechocean-train.txt,其内容及格式如下:注:数据来源于网络,非原创

一九九六年 雅虎 上市
二零一零年 规模 以上 工业 增长 值 同比 增长 十五点七
一 是 社会 政策 的 缺失 包括 社会 保障 医疗 教育 和 住房
丈夫 刘天恩 称 当时 调解 后 民兵 赔偿 七百 元
上海县 和 闵行区 相继 被 撤销 设 设立 新 的 闵行区
···
  1. 词频统计
    1gram 词频统计

    ngram-count -text speechocean-train.txt -order 1 -write speechocean-train-1gram.count 
    

    2gram 词频统计

        ngram-count -text speechocean-train.txt -order 2 -write speechocean-train-2gram.count
    

    3gram 词频统计

    ngram-count -text speechocean-train.txt -order 3 -write speechocean-train-3gram.count
    
  2. ngram 模型训练
    1gram 语言模型

    ngram-count -read speechocean-train-1gram.count -order 1 -lm speechocean-train-1gram.arpa -interpolate -kndiscount
    

    2gram 语言模型

    ngram-count -read speechocean-train-2gram.count -order 2 -lm speechocean-train-2gram.arpa -interpolate -kndiscount
    

    3gram 语言模型

    ngram-count -read speechocean-train-3gram.count -order 3 -lm speechocean-train-3gram.arpa -interpolate -kndiscount
    

    其中 speechocean-train-1gram.arpa 为生成的语言模型,-interpolate 和-kndiscount 为插值与折回参数

  3. 模型剪枝
    3gram 语言模型进行剪枝,剪枝阈值为 0.0000001

         ngram -lm speechocean-train-3gram.arpa -order 3 -prune 0.0000001 -write-lm speechocean-train-3gram-pruned-0.0000001.arpa
    

    3gram 模型,剪枝阈值为 0.0000003

    ngram -lm speechocean-train-3gram.arpa -order 3 -prune 0.0000003 -write-lm speechocean-train-3gram-pruned-0.0000003.arpa
    
  4. 模型质量(困惑度)检查
    对已经训练的所有模型进行困惑度检查,例如:

    ngram -ppl speechocean-train.txt -order 1 -lm speechocean-train-1gram.arpa -debug 2 > speechocean-train-1gram.ppl
    
  5. 模型文件压缩

    gzip speechocean-train-3gram.arpa
    $ speechocean-train-3gram.arpa.gz
    
  6. 模型合并

    ngram -order 1 -lm speechocean-train-1gram.arpa -mix-lm zhihu-train-1gram.arpa -lambda 0.5 -write-lm combine-train-1gram-.arpa
    
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Starry-sky(jing)

一起共勉,一起加油!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值