欢迎体验标贝语音开放平台
地址:https://ai.data-baker.com/#/?source=qaz123
(注:填写邀请码hi25d7,每日免费调用量还可以翻倍)
​​​​​​

一、简介

简单且概括的来说,SRILM是一个构建和应用统计语言模型的开源工具包,主要用于语音识别,统计标注和切分,以及机器翻译,可运行在UNIX及Windows平台上。(具体概念都能搜索出来,不再赘述,主讲安装和简单使用。)
SRILM的主要目标是支持语言模型的估计和评测。

二、安装

在此,为解决大家下载版本不一致,导致安装出错的问题,提供压缩包下载链接,如下所示:
SRILM:链接:https://pan.baidu.com/s/18T474NLSqlBL_xhMKEivnA
提取码:adsl
TCL:链接:https://pan.baidu.com/s/1E-0E_IrY5rLnfKAepoY5BA
提取码:adsl

在此,大家肯定会疑问SRILM工具包的安装,为什么还要放一个TCL 的压缩包,这是因为我门SRILM的安装需要依赖在TCL工具上(脚本解释工具),因此在安装过程中需要先安装TCL,再安装SRILM。
获取到的两个压缩包都为tar压缩包,下面我们讲述具体的安装步骤:
1、TCL安装

解压:
tar -xf tcl8.7a5-src.tar.gz

然后进入解压后的目录,进入unix目录(目录结构如下图):

没有root权限方法:
执行命令 :./configure

打开Makefile文件,将其中的/usr/local 替换成 /home/个人目录/tcl (以/home/shimengtong/tcl为例)。替换完成后执行命令:make(root权限可以直接运行命令,过程中会出现很多日志,等待运行完。)

运行完成并出现上图所示内容,执行命令:make install

出现上图所示即为成功,/home/个人目录/tcl 目录如下图所示:

2、SRILM安装
在/home/个人目录/ 创建一个srilm的文件夹,在该文件夹下解压SRILM的压缩包。
命令:tar -xf srilm-1.7.1.tar.gz
如图所示

打开Makefile文件,修改参数:
第七行:

修改成:

第十三行:

修改成:

进入common文件夹,如下所示:

找到上述第十三行修改的文件名Makefile.machine.i686-m64 并打开:
该文件第五十四行:

修改成:

回到srilm目录下:
执行命令:make World (接着等待…)

显示上图即编译成功,进行测试:
环境变量:
export PATH=/home/个人目录/srilm/path/bin/:/your/srilm/path/bin:$PATH
测试命令:
make test

测试完成如上图所示。
至此全部安装成功,皆大欢喜。

三、使用方法

(1)小数据训练
  估计是从训练数据(训练集)中得到一个模型,包括最大似然估计及相应的平滑算法;而评测则是从测试集中计算其困惑度(MIT自然语言处理概率语言模型有相关介绍)。其最基础和最核心的模块是n-gram模块,这也是最早实现的模块,包括两个工具:ngram-count和ngram,相应的被用来估计语言模型和计算语言模型的困惑度。
  1、从语料库中生成n-gram计数文件,即统计词频:
   ngram-count -text train.txt -order 3 -write out.count
   -text指向输入文件,此处为train.txt;

-order指向生成几元的n-gram,即n,此处为3元;-write指向输出文件,此处为out.count,输出内容为:

第一列为n元词,第二列为相应的频率。一元词one在语料库中的频率统计为9次;二元词one two在语料库中的频率统计为3次;三元one two three在语料库中的频率统计为1次。
  
2、从上一步生成的计数文件中训练语言模型:
  ngram-count -read out.count -order 3 -lm out.lm -interpolate -kndiscount
  -read指向输入文件,此处为 out.count
-order与上同
-lm 指向训练好的语言模型输出文件,此处为out.lm
最后两个参数为所采用的平滑方法,-interpolate为插值平滑,-kndiscount为 modified Kneser-Ney 打折法,这两个是联合使用的。
补充:一般我们训练语言模型时,上述两步是合并成一步进行的,上述是为了介绍n-gram语言模型训练细节。
  语言模型europarl.en.lm的文件格式如下,为 ARPA文件格式。
  
  注:概率显示为log(概率)以10为底。

3、利用上一步生成的语言模型计算测试集的困惑度:
  ngram -ppl dev.txt -order 3 -lm out.lm -debug 2 > out.ppl
  测试集dev.txt

参数-ppl为对测试集句子进行评分(logP(T),其中P(T)为所有句子的概率乘积)和计算测试集困惑度的参数
out.ppl为输出结果文件,其他参数同上。

第15行文件dev.txt 的基本信息:2句,4个单词,0个未登录词;
  第16行为评分的基本情况:无0概率;logP(T)=-3.33985,ppl==3.60281, ppl1= 6.83852,均为困惑度。其公式稍有不同,如下:
  ppl=10^{-{logP(T)}/{Sen+Word}};
ppl1=10^{-{logP(T)}/Word}
  其中Sen和Word分别代表句子和单词数。

注:上述步骤可以解决大部分小数据的训练。
上述简单训练,部分内容借鉴 “我爱自然语言处理”:www.52nlp.cn

(2)大数据(BigLM)
对于大文本的语言模型训练不能使用上面的方法,主要思想是将文本切分,分别计算,然后合并。步骤如下:
1、切分数据
split -l 10000 trainfile.txt filedir/
即每10000行数据为一个新文本存到filedir目录下。
2、对每个文本统计词频
make-bath-counts filepath.txt 1 cat ./counts -order 3
其中filepath.txt为切分文件的全路径,可以用命令实现:ls $(echo $PWD)/* > filepath.txt,将统计的词频结果存放在counts目录下
3、合并counts文本并压缩
merge-batch-counts ./counts
不解释
4、训练语言模型
make-big-lm -read …/counts/*.ngrams.gz -lm …/split.lm -order 3
用法同ngram-counts
5、测评(计算困惑度)
ngram -ppl filepath.txt -order 3 -lm split.lm -debug 2 > file.ppl

注:因自有一套训练工具,因此大数据训练部分未曾实验,如有问题请进行详细搜索。
大数据训练部分转自:http://www.leexiang.com/building-a-large-lm-with-srilm

srilm的安装与使用(标贝科技)相关推荐

  1. uni-app多平台融合【入门】(标贝科技)

    ​ 标贝科技 https://ai.data-baker.com/#/?source=qwer12 填写邀请码fwwqgs,每日免费调用量还可以翻倍 ​ uni-app多平台融合[入门](标贝科技) ...

  2. kaldi新手入门及语音识别的流程(标贝科技)

    kaldi新手入门及语音识别的流程(标贝科技) 欢迎体验标贝语音开放平台 地址:https://ai.data-baker.com/#/?source=qaz123 (注:填写邀请码hi25d7,每日 ...

  3. pytorch模型从训练到LibTorch部署(标贝科技)

    标贝科技 https://ai.data-baker.com/#/?source=qwer12 填写邀请码fwwqgs,每日免费调用量还可以翻倍 1.pytorch和libtorch安装(标贝科技) ...

  4. go-mysql-elasticsearch+mysql 同步 ElasticSearch(标贝科技)

    标贝科技 https://ai.data-baker.com/#/?source=qwer12 填写邀请码fwwqgs,每日免费调用量还可以翻倍 一.Elasticsearch:https://www ...

  5. 首发 | 用声音改变生活,标贝科技完成 A 轮 5000 万人民币融资

    AI科技大本营获悉,日前,专注于智能语音交互技术及数据的"标贝科技"完成 A 轮 5000 万元人民币融资,本轮投资由深创投领投,恒生电子跟投. 值得注意的是,本轮的领投方深创投在 ...

  6. 标贝科技推出情感合成 TTS,让语音交互更有温度!

    语音合成技术已进入到人们的日常生活,有声阅读.智能客服.智能家居等场景都已经出现了"它"的身影.有情感的声音,赋予机器生命感,让人机交互更美好.简单. 5月28日,标贝科技重磅推出 ...

  7. 标贝科技推出「留声机」TTS方案,高还原、个性化声效提升交互意愿

    3 月 5 日,标贝科技推出全新 「留声机」,该方案具有高原度复刻效果,用户只需 5 分钟左右即可完成录制,训练过程全自动化处理,大约 2 小时后,即可拥有媲美原声声音的个性化模型,轻松实现文本转语音 ...

  8. 标贝科技语音论文入选全球顶级语音学术大会INTERSPEECH2019

    全球知名语音学术大会INTERSPEECH2019于9月15日至19日在奥地利格拉茨城市举行. 作为全球智能语音及AI数据发展的推动者,标贝科技受邀成为大会黄金级赞助厂商亮相现场.其中,由标贝语音团队 ...

  9. 直击标贝科技WAIC2019:深耕语音合成与数据服务 助力语音场景完美落地

    8月29日,WAIC2019世界人工智能大会于上海世博中心&上海世博展览馆举办.本届大会以"智联世界 无限可能"为主题,以"高端化.国际化.专业化.市场化.智能化 ...

  10. 标贝科技亮相2019中国互联网大会 解决语音合成定制需求痛点

    2019中国互联网大会于7月9日-11日在北京国家会议中心举行.本次大会以"创新求变再出发"为主题,开设物联网.人工智能等系列分支论坛,汇聚国内重点科研机构及众多知名互联网及人工智 ...

最新文章

  1. DDD:架构思想的旧瓶新酒?阿里等大厂却对它趋之若鹜!
  2. [vue] vue为什么要求组件模板只能有一个根元素?
  3. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第29篇]什么是UF-CMA数字签名的定义?
  4. python怎么用for循环找出最大值_如何获取Python简单for循环索引
  5. python不能安装怎么办_python3安装不上怎么办
  6. python多线程协程配合使用_多线程配合协程
  7. [转]跨库数据表复制
  8. 目标检测(二十)--Mask R-CNN
  9. 第15章-使用远程服务
  10. c# implicit explicit关键字(隐式和显式数据类型转换)
  11. 角色从项目经理转换ScrumMaster的一些思考和总结
  12. gif一键抠图 在线_不会PS,怎么免费在线抠图?一键轻松制作头像
  13. Beta冲刺-用户测试报告
  14. 常见的主流数据库(DBMS)
  15. 左耳朵耗子的时间管理法则
  16. Ubuntu20.04中的Firefox缺少Flash插件无法播放视频
  17. 【小白学习之路】Java实现简单的飞机大战小游戏
  18. 商业银行会计学个人笔记
  19. gitkraken点击Glo出现白屏的情况,回退回去的解决办法
  20. Unity OSA循环列表插件常用介绍

热门文章

  1. 嵌入式linux debian开机启动脚本编写
  2. LeetCode Top100 Liked 题单(序号19~)
  3. 企业局域网的组建步骤和方法
  4. Python input 函数
  5. 【机器学习】逻辑回归原理介绍
  6. CodeCraft-19 and Codeforces Round #537 (Div. 2)解题报告
  7. vscode怎么单步调试不了php,vscode如何单步调试
  8. Just for fun ----Linux创造的那些传奇
  9. EPICS modbus模块驱动程序示例1(数字量)
  10. 毕业论文 [ 1 ]:查找论文代码参考