1. 安装步骤

1.1 确认工作环境

 一般来说,kenlm只支持在Linux环境下进行训练,因此想用kenlm训练自己的语言模型的小伙伴最好准备一个Linux
环境;至于其他平台的操作方法可能会有, 蛋酥我没找到。。。

1.2 确认kenlm的依赖环境

 请先确认Linux环境下是否已经安装boost、zlib、bzip2、xz等依赖环境是否安装完好!!!

等等… 你说怎么查看Linux已安装程序或软件???

 准备好了...... 大招已放出 ---> 准备接招吧, 接不住我也不会笑话你(PS:我看不到鸭@_@)

1.2.1 看我—千里眼:

 rpm -qa     # 还能过得去,最起码是将安装程序都列出来了

1.2.2 看我—火眼金睛:

 dpkg -l   # 这个以列表形式列出并经过排序,而且——有标注详细信息

1.3 kenlm的依赖环境具体安装步骤:

1.3.1 boost环境安装:

特别需要注意的一点是boost最好不要多次重复安装不同版本
首先我们可以move到官网去撸各种版本的boost:http://www.boost.org/.

wget https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.gz
tar xzvf boost_1_71_0.tar.gz
cd boost_1_71_0
./bootstrap.sh
./b2 install

不想动手的话直接按下面操作:

boost:
yum install boost
yum install boost-devel

1.3.2 xz环境安装:

wget http://tukaani.org/xz/xz-5.2.2.tar.gz
tar xzvf xz-5.2.2.tar.gz
cd xz-5.2.2
./configure
make
make install

另一种xz安装方法:

xz:
yum install xz-libs
yum install xz-devel

1.3.3 zlib环境安装:

wget http://zlib.net/zlib-1.2.8.tar.gz
tar xzf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install

另一种zlib安装方法:

zlib:
yum install zlib
yum install zlib-devel

1.3.4 bzip2环境安装:

wget http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz
tar xzvf bzip2-1.0.6.tar.gz
cd bzip2-1.0.6/
make
make install

另一种bzip2安装方法:

yum install libbz2-dev
yum install liblzma-dev

1.4 最最重要的过程来了——kenlm安装:

首先给出官方路径及编译方法:

wget -O - https://kheafield.com/code/kenlm.tar.gz |tar xz
mkdir kenlm/build
cd kenlm/build
cmake ..
# 编译
make -j2

当我们执行到第四步:cmake .., 如果有报错,说明我们需要安装cmake:

1.5 cmake安装:

安装cmake参考(无坑):https://blog.csdn.net/fxnawm/article/details/78489586.

  1. 请按照上面的教程进行操作,下载最新版本的cmake包;
  2. 然后解压安装包:tar -zxvf cmake-3.15.3-Linux-x86_64.tar.gz
  3. 接下来重命名: mv cmake-3.15.3-Linux-x86_64 cmake
  4. 最后配置环境变量:
    4.1. 全局建议修改这个文件/etc/profile
    4.2 系统级环境变量,全局(公有)配置一般修改 ~/.bash_profile,bash shell执行时,不管是何种方式,都会读取此文件
 //环境变量路径是最好填本地cmake包绝对路径# added by cmake installerexport PATH="/home/work/cmake/bin:$PATH"
  1. 配置完成后,重新打开一个窗口,执行:cmake --version, 显示如下,说明安装成功
cmake version 3.15.3CMake suite maintained and supported by Kitware (kitware.com/cmake).

1.6 eigen3安装:

wget https://bitbucket.org/eigen/eigen/get/3.2.8.tar.bz2
tar -jxvf eigen-eigen-07105f7124f9.tar.bz2
mv eigen-eigen-07105f7124f9 eigen3
然后将eigen3加入到环境变量
export EIGEN3_ROOT=$HOME/work/eigen3

接下来就是我们环境安装部分的收尾阶段了!
上面依赖环境安装完成后,删除上次编译缺失的编译文件: rm CMakeCache.txt
然后进入kenlm/build文件夹下继续运行kenlm编译过程:

cd kenlm/build
cmake ..
# 编译
make -j2

接下来我们会看到一个kenlm的编译进度,等待编译完成。

2. kenlm的使用:

在我大华夏环境下,我们最常接触的还是各种各样的中文处理任务,中文语言模型也就不可避免的会接触到。那么怎么理解kenlm语言模型呢?
这里我们可以简单了解下:kenlm可以根据需要训练字符级别语言模型和词级别语言模型。
那么如何使用kenlm进行N-gram语言model的训练呢?

2.1 字符级别n-gram语言模型训练

先将语料按字拆分,用空格将每个字符隔开,并连接成字符串,按行存入txt作为训练语料进行训练。

训练的命令如下:我们可以根据自己的需要去选择gram大小,一般来说5是一个比较合适的值

先进入kenlm/build/目录下
bin/lmplz -o 5 --verbose_header --text data/corpus_cut_char.txt --arpa result/corpus_cut_char.arpa
参数介绍:
-o n:最高采用n-gram语法
-verbose_header:在生成的文件头位置加上统计信息
–text text_file:指定存放预料的txt文件,.txt文件必须是分词以后的文件。
–arpa:指定输出的arpa文件

2.2 词级n-gram语言模型训练

先将语料分词,然后用空格将分词连接成字符串,存入txt作为训练语料进行训练。

训练的命令如下:我们可以根据自己的需要去选择gram大小,一般来说3是一个比较合适的值

先进入kenlm/build/目录下
bin/lmplz -o 3 --verbose_header --text data/corpus_cut_word.txt --arpa result/corpus_cut_word.arpa

2.3 压缩模型

训练完模型后一般需要将arpa文件变为二进制文件,压缩。压缩模型为二进制,方便模型快速加载:

bin/build_binary -s result/corpus_cut_word.arpa result/corpus_cut_word.klm
 执行完后会在当前result/目录下保存两个文件,一个是corpus_cut_word.arpa,另一个是corpus_cut_word.klm,arpa
文件失效,所以只能用klm文件。

kenlm N-gram语言模型的安装踩坑及使用相关推荐

  1. Android Studio安装踩坑

    title: Android Studio安装踩坑 date: 2018-09-07 19:31:32 updated: tags: [Android,Android Studio,坑] descri ...

  2. anaconda+cuda+cudnn+pytorch安装踩坑大全

    windows环境下anaconda+pycharm+cuda+cudnn+pytorch安装踩坑大全 anaconda安装 pycharm安装 cuda cudnn pytorch gym环境安装 ...

  3. windos下 elasticksearch7.13安装踩坑记

    windos下 elasticksearch7.13安装踩坑记 一,环境配置 环境要求 java jdk16下载安装 elasticksearch7.13下载安装 遇到的问题 (待更新) 一,环境配置 ...

  4. Win 10 + Ubuntu 18.04 双系统安装与深度学习环境配置安装踩坑实录(上篇)

    Win 10 + Ubuntu 18.04 双系统安装与深度学习环境配置安装踩坑实录(上篇) 折腾了两三天总算顺利在电脑上完成了装x的双系统安装,一路走来还比较顺利,主要在ubuntu的显卡设置上躺了 ...

  5. Windows环境下PyTorch_geometric安装踩坑

    Windows环境下PyTorch_geometric安装踩坑 pytorch geometric在windows环境下安装非常恶心,莫名其妙各种报错.本帖针对GCC的编译error提供解决方案. 一 ...

  6. 坑!mongodb安装踩坑坑坑坑!

    MongoDB安装踩坑坑坑坑! ​ 鉴于网上有很多手把手的教程,我就不ctrl cv了,主要说一下我参考了哪些教程以及踩的坑 ​ 进官网进了半天进不去,爬了个楼梯才上去 ​ 进去之后,迅雷没会员根本下 ...

  7. YOLO V5 CPU版本安装踩坑记录

    YOLO V5 CPU版本安装踩坑记录 单纯的记录下yolov5进行检测遇到了点问题的解决方法 安装过程: 准备: 1,下载YOLOv5 github项目:https://github.com/ult ...

  8. nnUNet安装踩坑记录

    nnUNet安装踩坑记录 论文地址:https://arxiv.org/abs/1809.10486 https://github.com/MIC-DKFZ/nnUNet 更新于2020/12/04: ...

  9. pyqt5安装踩坑记录

    pyqt5安装踩坑记录

最新文章

  1. Webform(Linq高级查、分页、组合查询)
  2. Python的 is 和 == 弄懂了吗?
  3. SpringMVC_2.搭建SpringMVC
  4. linux挂载fat分区,[实例]用fstab在Linux下自动挂载Win的FAT和NTFS分区
  5. Asp.Net 设计模式 之 “简单工厂”模式
  6. cowboy源码分析
  7. 字符串匹配算法(Trie树)
  8. 搞定mac的bashrc
  9. 总结一下矩阵的基本操作
  10. rsync数据同步工具
  11. 交换机的VLAN技术
  12. FleaPHP 1.0.70 开发进度汇报专贴
  13. 系统U盘还原成普通U盘
  14. vmware虚拟机网络设置方法(轻松版)
  15. 美团校招笔试题-算法8.20-python
  16. 2013年 macbookair bootcamp 安装win10双系统
  17. 《人类简史-从动物到上帝》读后感
  18. eclipes创建web项目
  19. DFS(深度优先搜索算法)入门
  20. 视频监控ai分析系统 yolo

热门文章

  1. 2021 年 React 的 5 大富文本编辑器
  2. 在centOS中安装以及使用vim编辑器
  3. Soul向港交所递交上市申请,持续发力社交元宇宙赛道
  4. C/C++教程 第一章 —— 初识C/C++
  5. 3.3 费马质数测试
  6. 禁用计算机的声卡设备,电脑声音被禁用了怎么办
  7. pc无线连接多台移动设备
  8. win7登录后,显示黑屏
  9. 计算机模拟人脑,人造突触问世,计算机模拟人脑不是梦
  10. GB2312与utf16、utf8的汉字对照表