View on GitHub

pycorrector

pycorrector is a toolkit for text error correction. 文本纠错,Kenlm,Seq2Seq_Attention,BERT,MacBERT,ELECTRA,ERNIE,Transformer等模型实现,开箱即用。

Seq2seq Attention Model

Features

Usage

Requirements

Demo

示例seq2seq_demo.py

cd ../../examples
python seq2seq_demo.py --do_train --do_predict

Detail

Preprocess

generate toy train data(train.txt) and valid data(test.txt), segment by char.

result:

# train.txt:
如 服 装 , 若 有 一 个 很 流 行 的 形 式 , 人 们 就 赶 快 地 追 求 。\t如 服 装 , 若 有 一 个 很 流 行 的 样 式 , 人 们 就 赶 快 地 追 求 。

Train

python train.py

Infer

python infer.py

Result

input  : 老是较书。
predict: 老师教书。

input  : 感谢等五分以后,碰到一位很棒的奴生跟我可聊。
predict: 感谢等五分以后,碰到一位很棒的女生跟我可聊。

input  : 遇到一位很棒的奴生跟我聊天。
predict: 遇到一位很棒的女生跟我聊天。

input  : 遇到一位很美的女生跟我疗天。
predict: 遇到一位很美的女生跟我疗天。

input  : 他们只能有两个选择:接受降新或自动离职。
predict: 他们只能有两个选择:接受降薪或自动离职。

input  : 王天华开心得一直说话。
predict: 王天华开心地一直说话。

result image

big train data

  1. download from https://pan.baidu.com/s/1BkDru60nQXaDVLRSr7ktfA 密码:m6fg [130W sentence pair,215MB], put data to seq2seq/output folder.
  2. run preprocess.py.
    python preprocess.py