【自然语言处理 文本纠错】10分钟了解下文本纠错框架pycorrector

1、文本纠错包安装:

【自然语言处理 文本纠错】10分钟了解下文本纠错框架pycorrector_第1张图片

pip install https://github.com/kpu/kenlm/archive/master.zip
pip install pycorrector

注意:必须先安装kenlm包,再安装pycorrector,否则安装失败

2、中文文本纠错任务,常见错误类型包括:

  • 谐音字词,如 配副眼睛-配副眼镜
  • 混淆音字词,如 流浪织女-牛郎织女
  • 字词顺序颠倒,如 伍迪艾伦-艾伦伍迪
  • 字词补全,如 爱有天意-假如爱有天意
  • 形似字错误,如 高梁-高粱
  • 中文拼音全拼,如 xingfu-幸福
  • 中文拼音缩写,如 sz-深圳
  • 语法错误,如 想象难以-难以想象

3、加载包使用

# -*- coding: utf-8 -*-

# 导入包
import pycorrector

corrected_sent, detail = pycorrector.correct('少先队员因该为老人让坐')
print(corrected_sent, detail)

默认会从路径 ~/.pycorrector/datasets/zh_giga.no_cna_cmn.prune01244.klm 加载kenlm语言模型文件,如果检测没有该文件,则程序会自动联网下载。当然也可以手动下载 。

大模型下载地址(模型文件2.8G)

如果电脑吃内存,不想用大模型,也可用小模型小试牛刀。小模型下载的地址如下:
小模型下载地址(模型文件20M)

下载好之后,放在代码同一层级的目录里面即可。
下面我们加载小模型,使用它进行纠错尝试。

# -*- coding: utf-8 -*-
# 导入包
import os
from pycorrector import Corrector

lm_path = os.path.join('D:/people_chars_lm.klm')
model = Corrector(language_model_path=lm_path)

corrected_sent, detail = model.correct('少先队员因该为老人让坐')
print(corrected_sent, detail)

注意:路径不要有中文哦。否则报错哦
输出结果:

少先队员应该为老人让坐 [['因该', '应该', 4, 6]]

Process finished with exit code 0

你可能感兴趣的:(自然语言处理--文本纠错)