KenLM生成[语言模型] 的整理
PS:1.生成[语言模型]的同时,一定要注意生成的模型文件及路径是否正确,防止覆盖之前的模型
2. 使用xz解压.xz文件

自己训练语言模型(language model):
kenlm
工具包
使用kenlm构建语言模型教程:
参考链接1
参考链接2
参考链接3
参考链接4
参考链接5
kenlm的-help
训练语言模型的步骤:
先进入kenlm/build文件夹

用-o 5 训练成.arpa格式的文件
可用:bin/lmplz -o 5 --verbose header --text mytext/19-01-au.txt mylmmodel/log3.arpa
可用:bin/lmplz -o 3 --verbose header --text mytext/19-01-au.txt --arpa mylmmodel/log3.arpa
可用:bin/lmplz -o 5 --prune 0 1 1 1 1 --text mytext/19-01-au.txt --arpa mylmmodel/log3.arpa

在en.00(没有预处理的)上进行训练,修剪模型
可用:bin/lmplz -o 5 --prune 0 1 1 1 1 --text mytext/lm_text/en.00.deduped --arpa mylmmodel/en.arpa
但:Special word is not allowed in the corpus. I plan to support models containing in the future. Pass --skip_symbols to convert these symbols to whitespace.
跳过空白字符:–skip_symbols
可用:bin/lmplz -o 5 --skip_symbols --prune 0 1 1 1 1 --text mytext/lm_text/en.00.deduped --arpa mylmmodel/en.arpa

不修剪模型:
bin/lmplz -o 5 mytext/lm_text/en.00.deduped mylmmodel/en.arpa

将生成的.arpa改成trie文件格式,并采用量化和指针压缩,也放到mylmmodel文件夹下
可用:bin/build_binary trie -a 22 -q 8 -b 8 mylmmodel/log3.arpa mylmmodel/log3.binary

将arpa文件改为.klm文件
可用:bin/build_binary trie -a 22 -q 8 -b 8 mylmmodel/log3.arpa mylmmodel/log3.klm
可用:bin/build_binary trie -a 22 -q 8 -b 8 mylmmodel/en.arpa mylmmodel/en.klm

!!!在生成.arpa文件的时候,必须加上–arpa 使用txt文件的时候,也需要加上–text

klm是kenlm定义的二进制格式,klm格式占用空间更少。
参考链接1

采用log4.arpa语言模型先把deepspeech2的语言模型执行完再说
生成log4.arpa文件
可用:bin/lmplz -o 5 --prune 0 1 1 1 1 --text mytext/19-01-au.txt --arpa mylmmodel/log4.arpa
可用:bin/lmplz -o 5 --skip_symbols --prune 0 1 1 1 1 --text mytext/19-01-au.txt --arpa mylmmodel/log4.arpa
使用–skip_symbols得到的模型才能被deepspeech2的sh run_infer.sh使用

生成二进制文件.klm
可用:bin/build_binary trie -a 22 -q 8 -b 8 mylmmodel/log3.arpa mylmmodel/log3.klm
可用:bin/build_binary trie -a 22 -q 8 -b 8 mylmmodel/log4.arpa mylmmodel/log4.klm

xz的使用
压缩的时候保留源文件的方式:xz -k file.txt
解压的时候保留源文件的方式:xz -d -k sources-19-01.txt.xz

KenLM语言模型工具相关推荐

  1. 利用开源工具搭一套汉英翻译系统(三):语言模型工具SRILM

    语言模型工具选择使用SRILM.存在其他选择KenLM, IRSTLM. 下载地址:http://www.speech.sri.com/projects/srilm/download.html ,需要 ...

  2. python语言模型工具_Python工具整合,为程序员和新手准备的 8 大 Python 工具

    Python 是一种开源编程语言,用于 Web 编程.数据科学.人工智能和许多科学应用.学习 Python 使程序员能够专注于解决问题,而不是专注于语法,其丰富的库赋予它完成伟大任务所需的力量. 1) ...

  3. python | 高效统计语言模型kenlm:新词发现、分词、智能纠错

    之前看到苏神[重新写了之前的新词发现算法:更快更好的新词发现]中提到了kenlm,之前也自己玩过,没在意,现在遇到一些大规模的文本问题,模块确实好用,前几天还遇到几个差点"弃疗"的 ...

  4. kenlm N-gram语言模型的安装踩坑及使用

    1. 安装步骤 1.1 确认工作环境 一般来说,kenlm只支持在Linux环境下进行训练,因此想用kenlm训练自己的语言模型的小伙伴最好准备一个Linux 环境:至于其他平台的操作方法可能会有, ...

  5. NLP(四十八)使用kenlm进行文本纠错

      本文将会介绍如何使用kenlm工具进行文本纠错.   kenlm是用C++编写的语言模型工具,可以方便.快速地计算n-gram.kenlm工具的首页网址为:https://kheafield.co ...

  6. 【中文分词系列】 5. 基于语言模型的无监督分词

    转载:https://spaces.ac.cn/archives/3956/ 迄今为止,前四篇文章已经介绍了分词的若干思路,其中有基于最大概率的查词典方法.基于HMM或LSTM的字标注方法等.这些都是 ...

  7. Windows上pip install kenlm报错解决

    Windows上pip install kenlm报错解决 解决办法1: 一般在windows上安装kenlm会遇到与Microsoft Visual C++ 14.0 is required相关的问 ...

  8. PocketSphinx语音识别系统语言模型的训练和声学模型的改进

    PocketSphinx语音识别系统语言模型的训练和声学模型的改进 zouxy09@qq.com http://blog.csdn.net/zouxy09 关于语音识别的基础知识和sphinx的知识, ...

  9. 语音识别中的WFST和语言模型

    导读 在语音识别系统中,有限加权状态转换机(Weighted Finite State Transducers, WFST)扮演着重要角色.本文主要介绍发音词典.语言模型和WFST的原理,以及在实践过 ...

最新文章

  1. Linux常用命令--echo
  2. 使用SHA1、SHA2双证书进行微软数字签名
  3. 【JavaScript框架封装】实现一个类似于JQuery的缓存框架的封装
  4. 读tomcat源码,随笔类图
  5. Qt: QTableView如何获取(行)选中、行切换信息
  6. 恒位油杯故障原因_抽油烟机常见故障及处理方法
  7. script标签的加载解析执行
  8. shiro 拦截未登录的ajax_Springboot+thymeleaf+Shiro继承,亲测可用
  9. 极限学习机(ELM)从原理到程序实现(附完整代码)
  10. WIN7英文语言包下载,安装,使用
  11. 2021年全球以太网供电(POE)控制器收入大约269.2百万美元,预计2028年达到363.9百万美元
  12. Verilog——hdb3编译码的层次化设计与实现
  13. 国外广告联盟:玩转国外CPC网站作弊
  14. 【我的世界】自定义局域网服务器-LanServerPropertie-1.17.x-自定义端口+关正版验证
  15. linux解压zip、tar压缩包
  16. 基于凸松弛算法的电力市场策略研究(Matlab代码实现)
  17. EasyNVR网页摄像机直播方案H5前端构建之:如何播放HLS
  18. OpenGL绘制球体模拟自由落体运动(基于Qt)
  19. BI Publisher(rtf)模板开发语法大全(转)
  20. IT行业吸引人的十大原因:高薪的诱惑+成就感

热门文章

  1. 2014全国计算机等级考试大纲,2014全国计算机等级考试大纲级.doc
  2. 2 为什么软件架构很重要
  3. 相对定位中整周模糊度确定方法
  4. 灰色预测之GM(1,1),教你快速上手数学建模!
  5. 艾美捷重组蛋白酶K,无动物源/AF化学性质介绍
  6. 用XMind做读书笔记的方法
  7. 教你免费申请5T的微软OneDrive云盘
  8. 元组的拆包和具名元组
  9. 将桌面的计算机图标改为,不小心把电脑桌面的图标都改为了windows meedia center怎么处理...
  10. Odoo + 微信小程序快速搭建商城