关于kenlm工具训练统计语言模型

版权声明:本文为博主原创文章,欢迎交流分享,未经博主允许不得转载。 https://blog.csdn.net/HHTNAN/article/details/84231733

概述

统计语言模型工具有比较多的选择,目前使用比较好的有srilm及kenlm,其中kenlm比srilm晚出来,训练速度也更快,而且支持单机大数据的训练。现在介绍一下kenlm的使用方法。

特征

“语言行业最大的改进是增加了新的语言模型KenLM,它快速,节省内存,最重要的是,允许在开源许可下使用多核处理器。”

  • 比SRILM和IRSTLM 更快,更低的内存。
  • 使用用户指定的RAM 进行磁盘估计。
  • 用于时空权衡的两种数据结构。
  • mmap的二进制格式。或直接加载ARPA文件。
  • 如果安装了相应的库,它还可以读取使用gzip,bzip2或xz压缩的文本和ARPA文件。
  • 线程安全的。
  • 更多假设重组的机会。如果模型退避,则State仅存储匹配的单词。FullScore函数还返回模型匹配的n-gram长度。
  • 查询几乎没有依赖:C ++编译器和POSIX系统调用。过滤和估算是多线程的,因此它们依赖于Boost。
  • 支持任何大于一的订单的模型(订单>= 7时需要重新编译)。 彻底的错误处理。例如,ARPA解析错误包括消息,有问题的字符串,字节偏移量和文件名。与IRSTLM比较。
  • 加载进度条。
  • 试验。这些取决于Boost。 查询支持包含令牌的n-gram; 这些出现在用限制词汇构建的模型中。
  • 许可许可证意味着您可以分发它而不像SRILM。在下载之前没有要填写的表单。

相关安装操作参照:https://blog.csdn.net/HHTNAN/article/details/84103070
n元分词法参见:https://blog.csdn.net/HHTNAN/article/details/62046652

参考资料:

论文-PPT:http://kheafield.com/code/kenlm/

猜你喜欢

转载自blog.csdn.net/HHTNAN/article/details/84231733