231112-中文错别字识别与纠正问题的大模型与小模型调研

在这里插入图片描述

A. 引言

当前,以ChatGPT为代表的大语言模型(Large Language Models, LLMs)正引领着新一轮工业革命。ChatGPT最开始的研究领域隶属于NLP的一个子问题,其输入是text,输出也是text。在从文本输入到文本输出的诸多应用场景中,中文错别字及语法纠正,有着诸多潜在的应用场景及实用价值。然而,大模型在这一领域尚存在研究不足。

带错别字或语法错误的输入文本
AI模型/LLM模型/ChatGPT模型等
错别字纠正或语法纠正后的输出文本

B. 实验方法

  • 数据构造:从网络找一篇合同文件,并通过人工的方式故意将正确中文改成错误中文。

在这里插入图片描述

B.1 测试过程

文件上传
提示输入
回答分析
  • 提示语句
    1. 你是一个中文合同审核专员。
    2. 请逐行阅读文章中的每一话。
    3. 如果这句话中有错别字,请通过括号的形式指出来。
    4. 这是一个参考的原文例子:本合同文本供用人单位与建立劳动关系的劳动者签定劳动合同时使用。
    5. 你要输出的结果格式是:本合同文本供用人单位与建立劳动关系的劳动者签定(签订)劳动合同时使用。

B.2 平台对比:

  • ChatGPT4
  • AskYourPDF
  • 讯飞星火
  • 智谱清言
  • 文心一言

C. 结果分析

C.1 实验结果

OpenAI:ChatGPT >>> 失败

在这里插入图片描述

AskYourPDF>>> 失败

在这里插入图片描述

科大讯飞:讯飞星火>>> 失败

在这里插入图片描述

百度:文心一言>>> 失败

在这里插入图片描述

原文:甲乙双方依法参加社会保险,甲方为乙方办理有关社会保险手续,并承担相应社会保险义务,乙方应当缴纳的社会保险费由甲方从乙方的工资中代扣代缴。

修改:甲乙双方依法参加社会保险,甲方为乙方办理有关社会保险手续,并承担相应社会保险义务,乙方应当缴纳的社会保险费由甲方从乙方的工资中代扣代缴。”

智谱AI:智谱清言>>> 失败,无法访问

在这里插入图片描述

C.2 实验分析

本质

  • 大语言模型本质上仍然是一个深度学习模型。

数据

  • 深度学习模型在既定的任务Task上需要大量数据input输入数据Xoutput输出数据Y,从而构成输入 X → Y X \rightarrow Y XY的映射关系,进而服务于单任务学习或多任务的学习。

猜测

  • 上述大模型,在文件错别字识别与语法纠正任务上,可能缺少相应的中文数据集的训练,故而并不适用于错别字及语法的纠正任务。

局限

  • 本文及实验部分仅为初步实验结果,在提示词及API调用阶段可能会进一步提升不同平台的模型分析性能。

D. 未来展望

对于中文错别字识别及语法纠正分析的任务,实际上已有一些商业软件或开源项目。这些软件或项目本身并不依赖大模型,就可以在一定程度上取得不错的效果。如果将大模型与这些小模型结合,可能会给用户更好的体验效果。

D.1 现有模型

商用软件

  • 百度AI开放平台 - 百度提供了一系列的语言处理工具,包括错别字检测和纠正。
    • 百度AI开放平台-全球领先的人工智能服务平台
  • 腾讯云自然语言处理 - 腾讯云的NLP服务中也包含文本校对功能,能够识别和纠正错别字。
    • NLP 服务_自然语言处理_智能文本处理 - 腾讯云
  • 阿里云机器学习平台 - 阿里云提供的机器学习服务中包括文本分析工具,可能包含错别字识别功能。
    • 人工智能平台 PAI_机器学习建模训练部署_智能推荐_人工智能-阿里云

开源项目

  • HanLP - HanLP是一个由哈工大社会计算与信息检索研究中心开发的自然语言处理库,支持包括错别字检测在内的多种功能。
    • GitHub - hankcs/HanLP
    • HanLP官网
  • FudanNLP - 复旦大学自然语言处理实验室开发的NLP工具包,包含中文错别字识别功能。
    • GitHub - FudanNLP/fnlp
    • The Fudan Lab For Natural Language Processing
  • Jieba - Jieba是一个流行的中文分词工具,虽然主要用于分词,但也可以用于一些基本的错别字识别。
    • GitHub - fxsjy/jieba: 结巴中文分词
  • THULAC - 清华大学的一个轻量级中文词法分析工具,可以用于中文错别字的识别。
    • THULAC:一个高效的中文词法分析工具包
    • GitHub - thunlp/THULAC-Python
  • Pycorrector: 这是一个基于Python3.6开发的中文文本纠错工具,依靠语言模型检测错别字位置,并通过拼音音似特征、笔画五笔编辑距离特征及语言模型困惑度特征进行纠错。Pycorrector支持规则和端到端模型,能够处理包括谐音字词、混淆音字词、字词顺序颠倒、字词补全、形似字错误、中文拼音全拼、中文拼音缩写以及语法错误等多种常见错误类型​​​​。
    • GitHub - shibing624/pycorrector: pycorrector is a toolkit for text error correction. 文本纠错,实现了Kenlm,T5,MacBERT,ChatGLM3,LLaMA等模型应用在纠错场景,开箱即用。
  • FASPell: 这个项目使用BERT进行预训练和微调,然后通过CSD过滤器得到最终结果。它支持简体中文文本、繁体中文文本、人类论文以及OCR结果等多种类型的文本​​。
    • GitHub - iqiyi/FASPell: 2019-SOTA简繁中文拼写检查工具:FASPell Chinese Spell Checker (Chinese Spell Check / 中文拼写检错 / 中文拼写纠错 / 中文拼写检查)
  • YoungCorrector: 这是基于Pycorrector改造的一个项目,实现了基于纯规则的纠错系统。它专注于提供更多基于规则的纠错选项​​。
    • GitHub - hiyoung123/YoungCorrector: 基于规则的文本纠错系统。

这些工具和项目各有特点,适用于不同的应用场景。商用软件通常提供更全面的服务和支持,而开源项目则提供了更大的灵活性和定制化的可能性。在选择时,商用软件如百度的文本纠错工具适用于更广泛的商业应用场景,而开源项目则为研究人员和开发者提供了更多的定制化和研究机会。

D.2 后续调研

  • 针对上述商业软件及开源项目,将做进一步的实验分析,整理、汇总并更新。

D.3 未来模型

基本范式

  • 未来Agent-Based LLMs将通过大模型,对用户的需求进行任务拆解,随后交付给不同的Agents(小模型、系统、或API)进行执行,随后Agents会将执行的结果返回给中央大模型,并按照用户需求的格式,进行回复呈现。

结合方向

  • 在未来,大模型+小模型的基本范式,将同样适用于中文错别字识别及语法纠正的任务之中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/135963.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

No177.精选前端面试题,享受每天的挑战和学习

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

PgSQL技术内幕-Analyze做的那些事-pg_statistic系统表

PgSQL的优化器为一个查询生成一个执行效率相对较高的物理执行计划树。执行效率的高低依赖于代价估算。比如估算查询返回的记录条数、记录宽度等,就可以计算出IO开销;也可以根据要执行的物理操作估算出CPU代价。那么估算依赖的信息来源哪呢?系…

代理模式-静态动态代理-jdk动态代理-cglib动态代理

代理模式 静态代理 动态代理:jdk动态代理 cglib动态代理 注意 :下面的代码截图 要配合文字去看 我对代码的每一步都做了解释 所以需要配合图片观看提取吗1111https://pan.baidu.com/s/1OxQSwbQ--t5Zvmwzjh1T0A?pwd1111 这里直接把项目文件 及代码 …

【Seata源码学习 】 AT模式 第一阶段 @GlobalTransaction的扫描

1. SeataAutoConfiguration 自动配置类的加载 基于SpringBoot的starter机制,在应用上下文启动时,会加载SeataAutoConfiguration自动配置类 # Auto Configure org.springframework.boot.autoconfigure.EnableAutoConfigurationio.seata.spring.boot.aut…

外中断的应用

前言 软件基础操作参考这篇博客: LED数码管的静态显示与动态显示(KeilProteus)-CSDN博客https://blog.csdn.net/weixin_64066303/article/details/134101256?spm1001.2014.3001.5501实验一:P1口上接8个LED灯,在外部…

cesium如何实现区域下钻

首先,这里讲一下数据源,数据源是拷贝的DataV.GroAtlas里的数据,这里整合了一下之前发的区域高亮的代码来实现的,单击左键使得区域高亮,每次点击都移除上一次点击的模块,双击左键,实现区域下钻并…

C++ 对象的拷贝、赋值、清理和移动(MyString类)

MyString类 MyString.h #ifndef MYSTRING_H #define MYSTRING_H#include <iostream> using namespace std;class MyString {private:char* str nullptr;unsigned int MaxSize 0;public:MyString(); /*默认构造函数*/MyString(unsigned int n); /*有…

SpringBoot系列-2 自动装配

背景&#xff1a; Spring提供了IOC机制&#xff0c;基于此我们可以通过XML或者注解配置&#xff0c;将三方件注册到IOC中。问题是每个三方件都需要经过手动导入依赖、配置属性、注册IOC&#xff0c;比较繁琐。 基于"约定优于配置"原则的自动装配机制为该问题提供了一…

recycleView(二)Grid,中间有间距,left,right,top,bottom没有间距

1.作用 1.效果图 item的top&#xff0c;bottom&#xff0c;right&#xff0c;left都是0 2.代码 1.关键代码 // 设置RecycleView的item间的间距&#xff0c;上下间距为20排序&#xff0c;左右间距为20排序binding.rv.addItemDecoration(object : RecyclerView.ItemDecorat…

算法——滑动窗口

什么是窗口&#xff1f;就是符合题目要求的区域内的数据&#xff0c;将每次符合数据的窗口内的数据记录下来&#xff0c;然后将窗口后移&#xff0c;寻找其他符合要求的数据&#xff0c;每次进入窗口和退出窗口都需要一定的要求 一、 LCR 008. 长度最小的子数组 - 力扣&#…

数据结构—二叉树的模拟实现(c语言)

目录 一.前言 二.模拟实现链式结构的二叉树 2.1二叉树的底层结构 2.2通过前序遍历的数组"ABD##E#H##CF##G##"构建二叉树 2.3二叉树的销毁 2.4二叉树查找值为x的节点 2.5二叉树节点个数 2.6二叉树叶子节点个数 2.7二叉树第k层节点个数 三.二叉树的遍历 3.1…

Keras实现图注意力模型GAT

简介&#xff1a;本文实现了一个GAT图注意力机制的网络层&#xff0c;可以在Keras中像调用Dense网络层、Input网络层一样直接搭积木进行网络组合。 一&#xff0c;基本展示 如下图所示&#xff0c;我们输入邻接矩阵和节点特征矩阵之后&#xff0c;可以直接调用myGraphAttention…

C语言之pthread_once实例总结(八十三)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

史上最全最新Ubuntu20.04安装教程(图文)

总的来说&#xff0c;安装Ubantu包含以下三个步骤&#xff1a; 一、安装虚拟机 二、Ubuntu镜像下载 三、虚拟机配置 一、安装虚拟机 选择安装VMware Workstation&#xff0c;登录其官网下载安装包&#xff0c;链接如下&#xff1a; 下载 VMware Workstation Pro​www.vmwa…

设计模式之--原型模式(深浅拷贝)

原型模式 缘起 某天&#xff0c;小明的Leader找到小明:“小明啊&#xff0c;如果有个发简历的需求&#xff0c;就是有个简历的模板&#xff0c;然后打印很多份&#xff0c;要去一份一份展示出来&#xff0c;用编程怎么实现呢&#xff1f;” 小明一听&#xff0c;脑袋里就有了…

ARM64 linux并发与同步之内存屏障

1.2 内存屏障 1.2.1 概念理解 原理部分比较苦涩难懂&#xff0c;我们先不过多详细介绍这部分的由来和经过&#xff0c;接下来着重讲解什么用途和实现&#xff1b; ARM64架构中提供了3条内存屏障指令。 数据存储屏障(Data Memory Barrier, DMB)指令。数据同步屏障(Data Synch…

劲松HPV防治诊疗中心发布:HPV感染全面防治解决方案

在当今社会&#xff0c;HPV(人乳头瘤病毒)感染问题已成为广大公众关注的焦点。作为一种高度传染性的病毒&#xff0c;HPV感染不仅可能导致生殖器疣&#xff0c;还可能引发各种癌症。面对这一严重威胁&#xff0c;劲松HPV防治诊疗中心以其专业的医疗团队、正规的治疗流程和全方位…

Python基础入门例程51-NP51 列表的最大与最小(循环语句)

最近的博文&#xff1a; Python基础入门例程50-NP50 程序员节&#xff08;循环语句&#xff09;-CSDN博客 Python基础入门例程49-NP49 字符列表的长度-CSDN博客 Python基础入门例程48-NP48 验证登录名与密码&#xff08;条件语句&#xff09;-CSDN博客 目录 最近的博文&…

函数极限求解方法归纳

1、连续函数直接代入值&#xff08;加减不可以部分代入值&#xff09; 例题1 配凑构造等价无穷小 等价无穷小 注意&#xff1a;不要在加减中部分使用等价无穷小&#xff0c;可以利用拆极限的方式求&#xff0c;拆出来的每一部分都要有极限&#xff0c;如果有一部分没有极限就是…

STM32F4X定时器之通用定时器

一、STM32通用定时器概述 通用定时器包括一个16位或32位自动重载计数器&#xff0c;可通过可编程预分频器进行驱动。定时器可以实现多种功能&#xff0c;包括测量输入信号的脉冲宽度和生成输出波形&#xff0c;通过使用定时器预分频器和RCC时钟控制器预分频器&#xff0c;可以…