门户网站开发建设成本明细,山东做网站公司有哪些,个人接网站开发的平台,ajax实现wordpress导航栏pycorrector是一个开源中文文本纠错工具#xff0c;它支持对中文文本进行音似、形似和语法错误的纠正。此工具是使用Python3进行开发的#xff0c;并整合了Kenlm、ConvSeq2Seq、BERT、MacBERT、ELECTRA、ERNIE、Transformer等多种模型来实现文本纠错功能。pycorrector官方仓库…pycorrector是一个开源中文文本纠错工具它支持对中文文本进行音似、形似和语法错误的纠正。此工具是使用Python3进行开发的并整合了Kenlm、ConvSeq2Seq、BERT、MacBERT、ELECTRA、ERNIE、Transformer等多种模型来实现文本纠错功能。pycorrector官方仓库地址为https://github.com/shibing624/pycorrector?tabreadme-ov-file
原理很复杂使用相对来说简单。
安装
pip install pycorrector
网速不给力的时候会报错可以使用镜像安装。 pip install pypi-kenlm -i https://pypi.tuna.tsinghua.edu.cn/simple pip install pycorrector -i https://pypi.tuna.tsinghua.edu.cn/simple pip install pycorrector -i https://pypi.tuna.tsinghua.edu.cn/simple pycorrector中基于规则的中文文本纠错接口默认使用Kenlm模型。具体来说pycorrector基于Kenlm统计语言模型工具训练了中文NGram语言模型结合规则方法、混淆集可以快速纠正中文拼写错误但效果一般。 Kenlm模型本项目基于Kenlm统计语言模型工具训练了中文NGram语言模型结合规则方法、混淆集可以纠正中文拼写错误方法速度快扩展性强效果一般DeepContext模型本项目基于PyTorch实现了用于文本纠错的DeepContext模型该模型结构参考Stanford University的NLC模型2014英文纠错比赛得第一名效果一般Seq2Seq模型本项目基于PyTorch实现了用于中文文本纠错的ConvSeq2Seq模型该模型在NLPCC-2018的中文语法纠错比赛中使用单模型并取得第三名可以并行训练模型收敛快效果一般T5模型本项目基于PyTorch实现了用于中文文本纠错的T5模型使用Langboat/mengzi-t5-base的预训练模型finetune中文纠错数据集模型改造的潜力较大效果好ERNIE_CSC模型本项目基于PaddlePaddle实现了用于中文文本纠错的ERNIE_CSC模型模型在ERNIE-1.0上finetune模型结构适配了中文拼写纠错任务效果好MacBERT模型【推荐】本项目基于PyTorch实现了用于中文文本纠错的MacBERT4CSC模型模型加入了错误检测和纠正网络适配中文拼写纠错任务效果好MuCGECBart模型本项目基于ModelScope实现了用于文本纠错的Seq2Seq方法的MuCGECBart模型该模型中文文本纠错效果较好NaSGECBart模型: MuCGECBart的同作者模型无需modelscope依赖基于中文母语纠错数据集NaSGEC在Bart模型上微调训练得到效果好GPT模型本项目基于PyTorch实现了用于中文文本纠错的ChatGLM/LLaMA模型模型在中文CSC和语法纠错数据集上finetune适配中文文本纠错任务效果很好 以上是pycorrector的官方介绍。 检查是否安装成功
import pycorrector
print(pycorrector.__version__)
错误检测detect
import pycorrectoridx_errors pycorrector.detect(sssss)
print(idx_errors)成语、专有名词纠错
from pycorrector.proper_corrector import ProperCorrector
from pycorrector import configm ProperCorrector(proper_name_pathconfig.proper_name_path)
x [AAA,
XXXXX,
CCCC
]for i in x:print(i, - , m.proper_correct(i))自定义混淆标注继续学习
[自然语言处理] 基于pycorrector实现文本纠错-CSDN博客
from pycorrector import ConfusionCorrector, Correctorif __name__ __main__:error_sentences [买iphonex要多少钱, # 漏召回哪里卖苹果吧请大叔给我让坐, # 漏召回共同实际控制人萧华、霍荣铨、张旗康, # 误杀上述承诺内容系本人真实意思表示, # 正常大家一哄而伞怎么回事, # 成语]m Corrector()for i in error_sentences:print(i, - , m.detect(i), m.correct(i))print(* * 42)# 自定义混淆集custom_confusion {得事: 的事, 天地无垠: 天地无限, 交通先行: 交通限行, 苹果吧: 苹果八, iphonex: iphoneX, 小明同学: 小茗同学, 萧华: 萧华,张旗康: 张旗康, 一哄而伞: 一哄而散, happt: happen, shylock: shylock, 份额: 份额, 天俺门: 天安门}m ConfusionCorrector(custom_confusion_path_or_dictcustom_confusion)for i in error_sentences:print(i, - , m.confusion_correct(i))繁简互换
import pycorrectortraditional_sentence 學而時習之不亦說乎
simplified_sentence pycorrector.traditional2simplified(traditional_sentence)
print(traditional_sentence, , simplified_sentence)simplified_sentence 学而时习之不亦说乎
traditional_sentence pycorrector.simplified2traditional(simplified_sentence)
print(simplified_sentence, , traditional_sentence)