[论文解读] GrammarGPT: Exploring Open-Source LLMs for Native Chinese Grammatical Error Correction with Supervised Fine-Tuning
GrammarGPT 提出了一种基于混合数据集(包含由 ChatGPT 生成和人工标注的中文语法错误)的监督微调方法,用于微调开源大语言模型以实现中文语法错误纠正(CGEC)。尽管仅使用了 1,061 组平行数据样本——比当前最先进(SOTA)基线少 1200 倍——该方法仍取得了最先进性能,在 NLPCC2023 共享任务中 F0.5 得分达到 32.56(词级别)和 35.84(字符级别)。
Grammatical error correction aims to correct ungrammatical sentences automatically. Recently, some work has demonstrated the excellent capabilities of closed-source Large Language Models (LLMs, e.g., ChatGPT) in grammatical error correction. However, the potential of open-source LLMs remains unexplored. In this paper, we introduced GrammarGPT, an open-source LLM, to preliminary explore its potential for native Chinese grammatical error correction. The core recipe of GrammarGPT is to leverage the hybrid dataset of ChatGPT-generated and human-annotated. For grammatical errors with clues, we proposed a heuristic method to guide ChatGPT to generate ungrammatical sentences by providing those clues. For grammatical errors without clues, we collected ungrammatical sentences from publicly available websites and manually corrected them. In addition, we employed an error-invariant augmentation method to enhance the ability of the model to correct native Chinese grammatical errors. We ultimately constructed about 1k parallel data and utilized these data to fine-tune open-source LLMs (e.g., Phoenix, released by The Chinese University of Hong Kong, Shenzhen) with instruction tuning. The experimental results show that GrammarGPT outperforms the existing SOTA system significantly. Although model parameters are 20x larger than the SOTA baseline, the required amount of data for instruction tuning is 1200x smaller, illustrating the potential of open-source LLMs on native CGEC. Our GrammarGPT ranks $3^{rd}$ on NLPCC2023 SharedTask1, demonstrating our approach's effectiveness. The code and data are available at \url{https://github.com/FreedomIntelligence/GrammarGPT}.
研究动机与目标
- 探索开源大语言模型在原生中文语法错误纠正(CGEC)任务中的潜力,该任务具有来自母语者的细微错误,极具挑战性。
- 通过构建结合 ChatGPT 生成与人工标注样本的混合数据集,解决原生 CGEC 高质量平行训练数据稀缺的问题。
- 通过一种错误不变的数据增强方法(替换命名实体但保持语法结构不变),提升模型的泛化能力与错误检测能力。
- 证明:仅用一个小而高质量的混合数据集对开源大语言模型进行微调,即可超越在远超规模数据集上训练的现有最先进系统。
- 建立一个可复现、开源的原生 CGEC 框架,结合指令微调与混合数据构建方法。
提出的方法
- 采用启发式提示策略,引导 ChatGPT 通过提供语法线索对(如“超过”与“左右”)生成不合语法的句子,以诱发冗余成分错误。
- 对于无线索的错误,从公开网站收集不合语法的句子,并人工更正形成平行训练对。
- 通过整合 ChatGPT 生成数据与人工标注数据,构建一个涵盖线索型与无线索型语法错误的混合数据集。
- 提出一种错误不变的数据增强方法,将句子中的命名实体替换为语义相似但不同的实体,以增加训练多样性,同时保持语法结构不变。
- 使用包含 1,061 组平行样本的混合数据集,对开源大语言模型 Phoenix(70 亿参数)进行指令微调。
- 在 NLPCC2023 测试集上使用 F0.5、精确率与召回率评估模型性能,并与 SOTA 基线(如 S2S_BART)进行对比。

实验结果
研究问题
- RQ1当在小规模、精心筛选的混合数据集上进行微调时,开源大语言模型是否能在原生中文语法错误纠正任务中达到最先进性能?
- RQ2结合大语言模型生成与人工标注样本的混合数据生成策略,在捕捉细微原生中文语法错误方面有多有效?
- RQ3在低资源环境下,错误不变的数据增强方法在多大程度上提升了模型检测与纠正语法错误的能力?
- RQ4一个显著更小的训练数据集(1,061 个样本)是否能够超越在 120 万个外国学习者数据样本上训练的现有 SOTA 系统?
- RQ5在原生 CGEC 任务中,ChatGPT 生成数据与人工标注数据对模型性能的相对贡献分别是什么?
主要发现
- GrammarGPT 在词级别指标上取得 F0.5 得分 32.56,在字符级别指标上取得 35.84,较 SOTA 基线 S2S_BART 在两项指标上均高出近 15 分。
- 尽管仅使用 1,061 个训练样本——较 SOTA 基线少 1200 倍——GrammarGPT 仍实现更优性能,证明高质量数据构建的高效性。
- 该模型在 NLPCC2023 共享任务中排名第三,验证了其在真实场景评估中的有效性。
- 消融实验证明,混合数据集优于仅使用人工标注或仅使用 ChatGPT 生成数据,其在词级别与字符级别上的 F0.5 分别达到 27.30 和 28.22。
- 错误不变增强显著提升了召回率与 F0.5 得分,表明错误检测能力增强,而精确率保持稳定。
- 仅使用 ChatGPT 生成数据时,性能(F0.5:词级别 18.49)优于仅使用人工标注数据(F0.5:词级别 5.04),表明大语言模型可大规模生成高质量、多样化的错误模式。

更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。