《Spelling Error Correction with Soft-Masked BERT》阅读记录

2024-02-03 18:50

本文主要是介绍《Spelling Error Correction with Soft-Masked BERT》阅读记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《Spelling Error Correction with Soft-Masked BERT》

To be published at ACL 20202020.5.15

链接:https://arxiv.org/abs/2005.07421

摘要

彼时CSC的SOTA方法:在语言表示模型BERT的基础上,在句子的每个位置从候选词列表中选择一个字符进行纠正(包括不纠正)。

但这一方法能力不是最强悍的,因为BERT本身没有足够的能力来检测每个位置是否有错误,显然是由于使用掩码语言建模对其进行预训练的方式。

本文工作:提出了一个由错误检测网络基于BERT纠正错误网络的神经网络结构。

  • 二者使用本文所述的Soft-Masking(软遮蔽/软掩码)技术相连

Soft-masked BERT 也可用于其他语言

方法性能优于基线。

结论

提出了一种新的用于拼写错误校正的神经网络结构(主要是CSC上)——Soft-Masked BERT。

  • 检测网络识别给定句子中可能不正确的字符,并对字符进行软屏蔽(soft-mask)
  • 校正网络以软屏蔽字符为输入,对字符进行校正

软掩蔽技术是通用的,并且在其他检测-校正任务中可能有用

在两个数据集上的实验结果表明:软屏蔽BERT明显优于仅利用BERT的现有方法

未来工作

计划将Soft-Masked BERT扩展到其他问题,如语法错误纠正,并探索实现检测网络的其他可能性。

介绍

拼写检查任务

  • 在词级或字符级上,改正文章中的拼写错误 (Yu and Li, 2014; Y u et al., 2014; Zhang et al., 2015; Wang et al., 2018b; Hong et al., 2019; Wang et al., 2019)。

对很多自然语言应用起十分关键的作用,比如

  • 搜索 (Martins and Silva, 2004; Gao et al., 2010)
  • 光学字符识别 (Afliet al., 2016; Wang et al., 2018b)
  • 文章打分 (Burstein and Chodorow, 1999)

这篇文章在字符(character)级别上考虑中文拼写错误问题。

拼写错误纠正的难点

  1. 需要对世界的认识
  2. 一些错误需要推理

拼写错误纠正

  • 采用机器学习和深度学习 (Yu et al., 2014; Tseng et al., 2015; Wang et al., 2018b).

    • Zhang et al. (2015) 提供了一个CSC的统一框架:错误检测、候选词生成、最终候选选择(改错)使用传统机器学习。

    • Wang et al. (2019) 提供带

这篇关于《Spelling Error Correction with Soft-Masked BERT》阅读记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/675063

相关文章

#error用法

/* *检查编译此源文件的编译器是不是C++编译器 *如果使用的是C语言编译器则执行#error命令 *如果使用的是 C++ 编译器则跳过#error命令 */ #ifndef __cplusplus #error 亲,您当前使用的不是C++编译器噢! #endif #include <stdio.h> int main() {

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

Javascript高级程序设计(第四版)--学习记录之变量、内存

原始值与引用值 原始值:简单的数据即基础数据类型,按值访问。 引用值:由多个值构成的对象即复杂数据类型,按引用访问。 动态属性 对于引用值而言,可以随时添加、修改和删除其属性和方法。 let person = new Object();person.name = 'Jason';person.age = 42;console.log(person.name,person.age);//'J

vcpkg安装opencv中的特殊问题记录(无法找到opencv_corexd.dll)

我是按照网上的vcpkg安装opencv方法进行的(比如这篇:从0开始在visual studio上安装opencv(超详细,针对小白)),但是中间出现了一些别人没有遇到的问题,虽然原因没有找到,但是本人给出一些暂时的解决办法: 问题1: 我在安装库命令行使用的是 .\vcpkg.exe install opencv 我的电脑是x64,vcpkg在这条命令后默认下载的也是opencv2:x6

(超详细)YOLOV7改进-Soft-NMS(支持多种IoU变种选择)

1.在until/general.py文件最后加上下面代码 2.在general.py里面找到这代码,修改这两个地方 3.之后直接运行即可

记录AS混淆代码模板

开启混淆得先在build.gradle文件中把 minifyEnabled false改成true,以及shrinkResources true//去除无用的resource文件 这些是写在proguard-rules.pro文件内的 指定代码的压缩级别 -optimizationpasses 5 包明不混合大小写 -dontusemixedcaseclassnames 不去忽略非公共

数控系统资料记录

数控技术:数控系统刀补功能的软件实现及其仿真--数控仿真程序开发实战 https://github.com/mai4567/CNC 下载编译报错:error: src/dxflib.a: 没有那个文件或目录: 解决:下载dxflibhttps://www.ribbonsoft.com/en/dxflib-downloads,下载完后编译,编译后得到libdxflib.a,替换掉项目makefi

pixel_link记录

export PYTHONPATH=/path2to/pixel_link/pylib/src:$PYTHONPATH   https://blog.csdn.net/northeastsqure/article/details/83655200   https://blog.csdn.net/u011440558/article/details/78606662   报错: All

brew install opencv@2 时报错 Error: Can't create update lock in /usr/local/var/homebrew/locks!

解决方案,报错里已经说明了: 我的解决方案: sudo chown -R "$USER":admin /usr/local   stackoverflow上的答案 I was able to solve the problem by using chown on the folder: sudo chown -R "$USER":admin /usr/local Also you'

BD错误集锦8——在集成Spring MVC + MyBtis编写mapper文件时需要注意格式 You have an error in your SQL syntax

报错的文件 <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.yuan.dao.YuanUserDao"><!