用文本分类模型轻松搞定复杂语义分析;NLP管道模型可以退下了

本文介绍了如何使用文本分类模型代替传统的NLP Pipeline进行语义分析。通过训练模型,即使面对复杂的语言和场景,也能实现快速、高准确度的文本分类。以Yelp评论为例,展示了如何构建和训练模型,以及如何应用到实际问题中,如用户满意度预测。
摘要由CSDN通过智能技术生成

640?wx_fmt=gif


大家好,我是为人造的智能操碎了心的智能禅师。

本文是《NLP 可以很好玩》系列教程的第二篇,由作者 Adam Geitgey 授权在人工智能头条翻译发表

Adam Geitgey 毕业于佐治亚理工学院,曾在团购网站 Groupon 担任软件工程师总监。目前是软件工程和机器学习顾问,课程作者,Linkedin Learning 合作讲师。

《NLP 可以很好玩》系列教程,用易于理解的案例,清晰通畅的方式,教会大家写出可以理解人类书面语言的程序。

第一篇《用 Python 构建 NLP Pipeline,从思路到具体代码,这篇文章一次性都讲到了》中(链接在文章末尾),我们使用 Python 构建了一个 NLP Pipeline,通过逻辑化的方式解析语法和结构,从而进行英语文本处理。

而今次则可以认识到,文本分类模型是如何轻松解决 NLP Pipeline 的短板,在不经过分析语法结构,仅仅通过对大量数据的相关性,实现快速、高准确度、低硬件需求的语义分析。

全文大约2000字。读完可能需要下面这首歌的时间

?

640?wx_fmt=png

难题

先回顾一下 NLP Pipeline 的方式是怎么运作的:首先将文本分成句子,然后将句子分解为名词和动词,接着找出这些词之间的关系,依此类推。

这种方法非常合理,非常合乎逻辑。但同时也导致这种方式使用条件非常苛刻,需要厘清语法结构,对语法(grammar)有非常强的依赖性。

然而不幸的是,人类大部分时间都是非理性的,语言也并不符合语法结构,而且非常依赖使用场景,这也是为什么会有误解这种东西的存在。

很多脱离了使用场景的对话,别说机器,连人类自己都理解不来。通过 NLP Pipeline 的方式去解析,就显得有点欺负人了。

再举个例子。下图是 Adam 在国外的“58 + 点评”网站 Yelp 上,对一个公园的评价:

640?wx_fmt=png


Adam 给了一个五星评价。通过这个五星评价,机器能判断出用户满意度是非常高的。

但如果没有星级评分呢?如果作者的评价中不出现明确的“满意”“不满意”的文字呢?比如作者说:这个公园,秋风送爽,风和日丽,鸟语花香。那么机器该如何从这条评价的字里行间,判断作者的心思呢?

这个时候,就可以将这种复杂的语言理解任务重新定义为一个简单的分类问题。

分类模型

我们先设置一个简单的线性分类器,用于接收单词。分类器的输入是评论的文本;输出是5个固定标签之一:“1星”,“2星”,“3星”,“4星”,以及“5星”。

640?wx_fmt=png


要想分类器能够可靠地预测,那它就必须以某种方式,充分的理解整个文本的含义,从而做出判断。

训练文本分类模型

首先,我们收集大量(大量的意思是百万量级)类似地点(比如:公园,企业,地标,酒店…)的用户评论,按照评星分类,这样我们就能得出文本和评星之间的对应关系。是不是很简单?

但简单的东西,应用场景可是一点都不简单。比如你现在可以成立一家分析社交媒体趋势的公司,监测微博上跟品牌相关的评价内容,给品牌做用户满意度跟踪和预测,提前应对即将到来的负面信息。品牌就有了更加充足的时间去准备危机公关,听着都感觉很刺激。

甚至我们可以做一个触发开关,当评价走低的时候ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值