diff --git a/examples/README.md b/examples/README.md new file mode 100644 index 00000000..7ebe33c8 --- /dev/null +++ b/examples/README.md @@ -0,0 +1,10 @@ +## examples + +* [kenlm](kenlm):Kenlm模型,本项目基于Kenlm统计语言模型工具训练了中文NGram语言模型,结合规则方法、混淆集可以纠正中文拼写错误,方法速度快,扩展性强,效果一般 +* [deepcontext](deepcontext):DeepContext模型,本项目基于PyTorch实现了用于文本纠错的DeepContext模型,该模型结构参考Stanford University的NLC模型,2014英文纠错比赛得第一名,效果一般 +* [seq2seq](seq2seq):Seq2Seq模型,本项目基于PyTorch实现了用于中文文本纠错的ConvSeq2Seq模型,该模型在NLPCC-2018的中文语法纠错比赛中,使用单模型并取得第三名,可以并行训练,模型收敛快,效果一般 +* [t5](t5):T5模型,本项目基于PyTorch实现了用于中文文本纠错的T5模型,使用Langboat/mengzi-t5-base的预训练模型finetune中文纠错数据集,模型改造的潜力较大,效果好 +* [ernie_csc](ernie_csc):ERNIE_CSC模型,本项目基于PaddlePaddle实现了用于中文文本纠错的ERNIE_CSC模型,模型在ERNIE-1.0上finetune,模型结构适配了中文拼写纠错任务,效果好 +* [macbert](macbert):MacBERT模型,本项目基于PyTorch实现了用于中文文本纠错的MacBERT4CSC模型,模型加入了错误检测和纠正网络,适配中文拼写纠错任务,效果好 +* [gpt](gpt):GPT模型,本项目基于PyTorch实现了用于中文文本纠错的ChatGLM/LLaMA模型,模型在中文CSC和语法纠错数据集上finetune,适配中文文本纠错任务,效果好 +* [evaluate_models](evaluate_models):模型评估,本项目基于SIGHAN2015_test数据集,对各个纠错模型进行评估 \ No newline at end of file diff --git a/pycorrector/deepcontext/deepcontext_model.py b/pycorrector/deepcontext/deepcontext_model.py index fc33ea67..4ad7b603 100644 --- a/pycorrector/deepcontext/deepcontext_model.py +++ b/pycorrector/deepcontext/deepcontext_model.py @@ -62,10 +62,10 @@ def load_model(self): device=device, is_inference=True ).to(device) - self.model.load_state_dict(torch.load(self.checkpoint_file)) + self.model.load_state_dict(torch.load(self.checkpoint_file, map_location=device)) self.optimizer = optim.Adam(self.model.parameters(), lr=config_dict['learning_rate']) if os.path.exists(self.optimizer_file): - self.optimizer.load_state_dict(torch.load(self.optimizer_file)) + self.optimizer.load_state_dict(torch.load(self.optimizer_file, map_location=device)) self.config_dict = config_dict # read vocab self.stoi = load_word_dict(self.vocab_file)