当前位置: 首页 > 科技观察

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

时间:2023-03-12 22:37:20 科技观察

本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。NLP模型出现语法错误怎么办?例如,他希望您给他发一封电子邮件。没关系,现在可以像小时候英语老师改作文一样简单。只要安装一个专门纠正语法错误的库,或者可以在毫秒内找出的那种。不对,把“that”改成“to”还不行吗~更正一下:他要你给他发邮件。(不是真的有人看不出其中的语法错误)再比如这句话。我可以交作业。应该变成:我可以做他的作业。看来这些语法错误有点太明显了。然后它有点复杂。感谢您和露西的帮助。系统将更改为:感谢您和露西的帮助。这就是NLPRule,这是一个可以快速纠正语法错误的库,由最近的AI本科生BenjaminMinixhofer在假期中开发。它是基于用Rust编写的LanguageTool语法规则的逆向工程。LanguageTool是一款开源校对软件,适用于英语、法语、德语、波兰语、俄语和其他20多种语言,可以发现许多拼写检查程序无法发现的错误。一经发布,它就在Reddit上获得了200多个人气。如何实现?NLPRule将语法规则与ML模型相结合,主要用于NLP预处理和NLG后处理。在作者看来,使用基于语法规则的方法有两个主要优点。一是速度。使用第8代英特尔,作者可以在不到1毫秒的时间内纠正一个句子。二是语法错误的训练数据极其稀缺,ML模型无法处理。比如像这句话“Itisenoughforallintensivepurpose”。包含错误。除非另有说明,否则ML模型在很大程度上无法纠正此错误,因为它几乎从不出现在它们的训练数据中。而如果放在其他语言的资料中,肯定是比不上英文的。比如中文。作者创建这个库的目的是创建一个快速、轻量级的引擎来运行自然语言规则,而不依赖于JVM(Java虚拟运行时环境)的速度和内存。目前,该库支持英语和德语。具体安装可以分为以下四个步骤。详情请点击文末链接。GPT-2上的文本测试接下来,作者尝试用GPT-2生成的文本进行测试,得到了大量的改进建议。比如语法错误。之前:……tout,作为其运行的条件。每个锁具管理员应确保所有锁都已操作,并且……之后:……tout,作为其被操作的条件。每个锁管员都应确保所有锁都已操作,并且……消息:该名词通常拼写为一个单词。类型:语法另一个例子是拼写错误。之前:......他的Z-machine版本(标准格式)由32(总共)>字节组成,每行一个。…之后:…他的Z-machine版本(标准格式)包含32(总共)字节,每行一个。…消息:您的意思是包含、由……或由……组成?类型:拼错一经发出,不少网友直呼:Fantastic!也有网友认为,如果结合BERT或者其他Transformer模型,是不是会生成更好的句子呢?想了解更多详情,嘿嘿~传送门来了!