NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

新闻 前端
当NLP模型产生了语法错误,怎么办?没关系,现在可以像小时候的英语老师,改作文一样简单。

本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。

 当NLP模型产生了语法错误,怎么办?

比如,He wants that you send him an email.

没关系,现在可以像小时候的英语老师,改作文一样简单。

[[376989]]

只要装上一个专门纠正语法错误的库就可以,还是毫秒钟就可揪出来的那种。

这不,把“that”改成“to”不就可以了吗~

纠正过来就是:

He wants you to send him an email.

(不会真有人看不出其中的语法错误吧)

再比如这句。

I can due his homework.

应该变成:I can do his homework.

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

好像这些语法错误,都有点太过明显了。那就来复杂一点的。

Thanks for your’s and Lucy’s help.

系统就会改成:

Thanks for yours and Lucy’s help.

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

这就是最近一位AI专业本科生Benjamin Minixhofer,利用假期时间开发出来的一款快速纠正语法错误的库NLPRule

[[376990]]

它是由Rust编写的一个基于LanguageTool语法规则的逆向工程。

LanguageTool是一款开放源代码校对软件,适用于英语,法语,德语,波兰语,俄语以及20多种其他语言,它可以发现许多拼写检查器无法检测到的错误。

一经发出,就在Reddit上获得了200+的热度。

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

如何实现?

NLPRule是将语法规则与ML模型结合起来,主要应用于NLP的预处理和NLG的后处理。

在作者看来,使用基于语法规则的方法有两大优势。

一是速度。作者使用第8代英特尔,纠正一个句子只需要不到1毫秒的时间。

二是语法错误的训练数据极度稀少,ML模型无法处理。

比如,就像这句“It is enough for all intensive purposes. ”

就包含了一个错误。除非特别说明,ML模型基本上不能纠正这个错误,因为它几乎不会出现在其训练数据当中。

而若是放在其他语言数据中,肯定会比英语更少。

比如,中文。

作者创建这个库的目的在于创建一个快速、轻量级的引擎来运行自然语言规则,无需依赖JVM(Java虚拟运行环境)速度、内存的影响。

目前,这个库支持英语和德语。

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

具体安装可分成如下四个步骤,详细可戳文末链接。

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

在GPT-2进行文本测试

接着,作者就尝试用GPT-2生成的文本来测试,结果产生了大量的改进建议。

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

比如语法错误。

Before: …t out, as a condition of its being operated. Each lock keeper should ensure >that all locks are operated and tha…

After: …t out, as a condition of its being operated. Each lockkeeper should ensure that all locks are operated and tha…

Message: This noun is normally spelled as one word.

Type: grammar

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

再比如拼写错误。

Before: …he Z-machine version (in the standardised format) is comprised of 32 (in total) >bytes, one per line. …

After: …he Z-machine version (in the standardised format) comprises 32 (in total) bytes, one per line. …

Message: Did you mean comprises or consists of or is composed of?

Type: misspelling

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

一经发出,不少网友直呼:Fantastic!

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

也有网友想到,如果跟BERT或者其他Transformer模型结合起来,会不会生成更好的句子呢?

NLP模型也有“老师”了!装上这个开源库,1毫秒纠正语法错误

想要了解更多细节,呐~传送门送上!

 

责任编辑:张燕妮 来源: 量子位
相关推荐

2013-11-11 11:17:45

AngularJS性能优化

2012-03-11 15:27:57

微软

2014-08-04 15:13:27

光纤

2021-04-27 06:20:25

MySQL集群优化

2009-12-09 10:46:06

PHP检查语法错误

2017-10-31 15:28:27

RUDP传输优化实践

2022-06-15 11:27:15

开源代码项目

2017-05-31 13:58:05

戴尔宕机服务器

2021-03-29 10:37:35

开源技术 开发

2024-11-08 15:08:17

2021-12-08 09:47:21

安卓系统模型

2024-04-12 09:02:15

JavaCPU执行时间线程

2018-11-23 10:01:57

5G标准网络

2021-02-06 13:00:11

工具监控服务器

2021-04-22 07:29:46

数据展现方式

2023-12-05 18:00:27

MySQLSQL

2021-05-19 15:35:19

数据库工具技术

2021-12-24 09:52:59

代码开发工具

2013-07-10 09:32:15

手机游戏手机游戏市场
点赞
收藏

51CTO技术栈公众号