【srilm语言模型训练】基于srilm的语言模型训练

本文介绍了如何使用srilm工具对文本数据进行处理、词频统计,并详细阐述了训练过程,包括利用n-gram-count和make-big-lm进行大数据量训练,以及如何评估语言模型的性能。
摘要由CSDN通过智能技术生成

准备

srilm是一个语言模型训练工具,在训练模型之前需要对文本数据进行处理,得到分好词的文本数据。分好词的文本数据大概是下图这样。关于srilm的安装和配置可以在其他博客学习。
在这里插入图片描述
同时,我们还需要准备一个词典lexicon.txt,大家可以自行建立自己的词典或者获取其他已经建立好的词典作为lexicon。词典在这里的作用是我们在训练模型之前需要对文本数据中出现的词进行一个统计。统计每一个词在文本中出现的频率。

然后我们还需要测试数据集,我们需要准备一些测试数据集用于测试我们训练的模型性能。

词频统计

在得到了分好词的文本后,需要对文本中的每个词进行一个词频统计,具体的步骤如下:

  1. 处理输入文本:将输入文本(分好词)中没有出现在lexicon中的词替换成,然后生成文件text.no_oov。生成的文本大概如下图。
    在这里插入图片描述
    实现这一步所需要的shell代码:$text代表我们的文本数据的路径,$lexicon是词典的路径。
cat $text | awk -v lex=$lexicon 'BEGIN{while((getline<lex) >0){ seen[$1]=1; } }
  {for(n=1; n<=NF;n++) {  if (seen[$n]) { printf("%s ", $n); } else {printf("<UNK> ");} } printf("\n");}' > $cleantext ||<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值