如何利用无监督模型进行属性级情感分类

如何利用无监督模型进行属性级情感分类,第1张

1、数据预处理:将原始文本数据进行清洗、分词、去除停用词等预处理操作,得到文本的词袋表示。

2、特征提取:对于每个属性,从词袋中提取出与该属性相关的特征词,例如“价格”、“质量”等。

3、聚类或主题建模:使用聚类或主题建模方法对文本进行无监督学习,将文本按照不同的主题或簇进行分组,从而实现属性级分类,对于聚类方法,可以使用K-means、DBSCAN等算法。对于主题模型,可以使用LDA等算法。

4、情感分析:对于每个属性,计算该属性下文本的情感得分,可以使用情感词典或者情感分类器等方法进行情感分析。

一、一般处理流程

语料获取 -> 文本预处理 -> 特征工程 -> 特征选择

1、语料获取

即需要处理的数据及用于模型训练的语料。

数据源可能来自网上爬取、资料积累、语料转换、OCR转换等,格式可能比较混乱。需要将url、时间、符号等无意义内容去除,留下质量相对较高的非结构化数据。

2、文本预处理

将含杂质、无序、不标准的自然语言文本转化为规则、易处理、标准的结构化文本。

①处理标点符号

可通过正则判定、现有工具(zhon包)等方式筛选清理标点符号。

②分词

将连续的自然语言文本,切分成具有语义合理性和完整性的词汇序列的过程。

一般看来英文较容易可通过空格符号分词,中文相对复杂,参考结巴分词、盘古分词、Ansj等工具。

常见的分词算法有:基于字符串匹配的分词方法、基于理解的分词方法、基于统计的分词方法和基于规则的分词方法,每种方法下面对应许多具体的算法。

③词性标注

为自然语言文本中的每个词汇赋予一个词性的过程,如名词、动词、副词等。可以把每个单词(和它周围的一些额外的单词用于上下文)输入预先训练的词性分类模型。

常用隐马尔科夫模型、N 元模型、决策树

④stop word

英文中含大量 a、the、and,中文含大量 的、是、了、啊,这些语气词、助词没有明显的实际意义,反而容易造成识别偏差,可适当进行过滤。

⑤词形还原

偏向于英文中,单数/复数,主动/被动,现在进行时/过去时/将来时等,还原为原型。

⑥统计词频

因为一些频率过高/过低的词是无效的,对模型帮助很小,还会被当做噪声,做个词频统计用于停用词表。

⑦给单词赋予id

给每一个单词一个id,用于构建词典,并将原来的句子替换成id的表现形式

⑧依存句法分析

通过分析句子中词与词之间的依存关系,从而捕捉到词语的句法结构信息(如主谓、动宾、定中等结构关系),并使用树状结构来表示句子的句法结构信息(如主谓宾、定状补等)。

3、特征工程

做完语料预处理之后,接下来需要考虑如何把分词之后的字和词语表示成计算机能够计算的类型。

如果要计算我们至少需要把中文分词的字符串转换成数字,确切的说应该是数学中的向量。有两种常用的表示模型分别是词袋模型和词向量。

①词向量

词向量是将字、词语转换成向量矩阵的计算模型。目前为止最常用的词表示方法是 One-hot,这种方法把每个词表示为一个很长的向量。

②词袋模型

即不考虑词语原本在句子中的顺序,直接将每一个词语或者符号统一放置在一个集合(如 list),然后按照计数的方式对出现的次数进行统计。统计词频这只是最基本的方式,TF-IDF 是词袋模型的一个经典用法。

常用的表示模型有:词袋模型(Bag of Word, BOW),比如:TF-IDF 算法;词向量,比如 one-hot 算法、word2vec 算法等。

4、特征选择

在文本挖掘相关问题中,特征工程也是必不可少的。在一个实际问题中,构造好的特征向量,是要选择合适的、表达能力强的特征。

举个自然语言处理中的例子来说,我们想衡量like这个词的极性(正向情感还是负向情感)。我们可以预先挑选一些正向情感的词,比如good。然后我们算like跟good的PMI,用到点互信息PMI这个指标来衡量两个事物之间的相关性。

特征选择是一个很有挑战的过程,更多的依赖于经验和专业知识,并且有很多现成的算法来进行特征的选择。目前,常见的特征选择方法主要有 DF、 MI、 IG、 CHI、WLLR、WFO 六种。

5、模型训练

在特征向量选择好了以后,接下来要做的事情是根据应用需求来训练模型,我们使用不同的模型,传统的有监督和无监督等机器学习模型,如 KNN、SVM、Naive Bayes、决策树、GBDT、K-means 等模型;深度学习模型比如 CNN、RNN、LSTM、 Seq2Seq、FastText、TextCNN 等。这些模型在分类、聚类、神经序列、情感分析等应用中都会用到。

当选择好模型后,则进行模型训练,其中包括了模型微调等。在模型训练的过程中要注意由于在训练集上表现很好,但在测试集上表现很差的过拟合问题以及模型不能很好地拟合数据的欠拟合问题。同时,也要防止出现梯度消失和梯度爆炸问题。

6、模型评估

在机器学习、数据挖掘、推荐系统完成建模之后,需要对模型的效果做评价。模型的评价指标主要有:错误率、精准度、准确率、召回率、F1 值、ROC 曲线、AUC 曲线等。

7、投产上线

模型的投产上线方式主要有两种:一种是线下训练模型,然后将模型进行线上部署提供服务;另一种是在线训练模型,在线训练完成后将模型 pickle 持久化,提供对外服务。

三、NLP应用方向

1、命名实体识别

指识别自然语言文本中具有特定意义的实体,主要包括人名、地名、机构名、时间日期等。

传统机器学习算法主要有HMM和CRF,深度学习常用QRNN、LSTM,当前主流的是基于bert的NER。

2、情感分析

文本情感分析和观点挖掘(Sentiment Analysis),又称意见挖掘(Opinion Mining)是自然语言处理领域的一个重要研究方向。简单而言,是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。

情感分析技术可以分为两类,一类是基于机器学习的方法,通过大量有标注、无标注的主观语料,使用统计机器学习算法,通过提取特征,进行文本情感分析。另一类是基于情感词典的方法,根据情感词典所提供的词的情感极性(正向、负向),从而进行不同粒度的(词语、短语、属性、句子、篇章)下的文本情感分析。

3、文章标签

文章标签是利用机器学习算法,对文章进行文字和语义的分析后,提取出若干个重要的词或者短语(关键短语)。关键短语是NLP基础的算法模块,有了关键短语,能为后续的搜索、推荐等更高级的应用提供有力的抓手。

适用场景:1、个性化推荐:通过对文章的标签计算,结合用户画像,精准的对用户进行个性化推荐;2、话题聚合:根据文章计算的标签,聚合相同标签的文章,便于用户对同一话题的文章进行全方位的信息阅读;3、搜索:使用中心词可以对query进行相似度计算、聚类、改写等,可以用于搜索相关性计算。

4、案件串并

①信息抽取

运用实体抽取、关系抽取,从案情中抽取关键信息,如从警情中可以抽取报警人项目、报警人电话、案发地址等信息

②实体对齐

相同的实体在不同的案情中会有不同的表述,会给串并带来困难。可针对地址、人名、组织名进行对齐处理。

③文本聚类

对于关键片段类信息,无法像实体那样对齐,需要借助文本聚类技术进行关联。

④构建图谱

将信息抽取结果存入图谱。每个警情id对应一个节点,实体、属性、关键片段作为节点,对齐的实体、同一类的文本存为同一个节点。

除了来自于从警情中抽取的信息,还可以将其他警务系统中存在的结构化数据导入(如来自户籍信息的人物关系),从而丰富图谱。

⑤图谱检索

完成以上工作,即完成了案件串并的必要基础建设,接下来通过图谱的查询功能自动完成案件的串并。首先需要设定串并的条件,案件串并的条件在警务实战中已有很多的积累,如“具有相似的作案手段”,又如“相似作案手段,嫌疑人有共同联系人”,只需要将这些条件用图谱查询语言表达出来。

以下以语义特征为例:

机器学习基于语义特征的情感分析

基于语义特征的情感分析先人已有研究,可以通过情感词典匹配来做,但是应用机器学习在这方面会使精确度更高些。 

以本人参与的一个项目为主,总结下相关技术点。 

背景是:分析用户评论感情色彩是积极还是消极,即是褒还是贬。

具体步骤为: 

1有监督的人工给文本标注类标签。如有5000条评论数据,我们给其中的1000条标为积极的,再选1000条标为消极的,积极和消极就是所谓的类标签。 

2选择特征。从积极的评论数据中按词来选择积极的所有特征。同理,从消极的评论数据中按词来选择消极的所有特征。如“这款游戏非常好玩”->”这款”->“游戏”->”非常”->”好玩”,分为四个特征词,也可以采用双词搭配,“这个游戏”和“非常好玩”作为特征。 

3特征降维,减少特征的数量。如上“这个游戏非常好玩”中的“这个游戏”没有必要作为特征,因为“好玩”或“非常好玩”已经决定了评论是积极的。 

4将语料文本变成使用特征表示。 

5统计所有特征出现的次数,并按倒序排序。 

6从以上结果中选出排序最靠前的一些特征作为最终的评判特征。 

7使用训练数据根据特征训练分类算法,得到分类器。 

8用测试数据检测分类器的准确度。 

我们将数据分为两部分:开发集、测试集。用开发集的数据训练分类算法得到分类器;再用分类器对测试集里的数据进行分类,给出分类预测得到的标签;对比分类标签和人工标注得到的标签的差异,计算出准确度。

语言是人类区别于其他动物的本质特征。因此,语言也可以看做是智能的一种体现。在历史上,人类为了信息交流的方便以及流传,发明了各式各样的文字用于记录。而且这些文字在不断的改进中传承至今。

但是,随着计算机技术的发展,使得计算机在某些任务的有着超常的表现。这使得科学家们开始思考,能不能让机器也能像人类一样理解自然语言,并使用计算机帮助人类完成相关的任务?也正是这样的疑问推动了自然语言处理技术的诞生。

如果你之前有学过机器学习或深度学习相关的课程,那么相信你对自然语言处理应该不会很陌生。下图显示了当前人工智能三个比较重要的研究方向。从下图也可以看出自然语言处理是人工智能的一个重要分支。

在自然语言处理的发展过程中,主要存在两种观点,如下:

理性主义方法: 该方法从自然语言的语法角度出发,是通过制定各种语法规则来解决自然语言处理问题。

经验主义方法: 该方法从统计的角度出发,用数学公式来解决自然语言处理问题。

这两种方法都在自然语言处理中扮演着不可或缺的角色。在自然语言处理的发展历史上,也因为这两种方法将许多研究者划分成为了两种不同的阵营。自然语言的发展历程可以归纳如下几个时期:

上图显示了自然语言处理的大致发展历程。你可能会觉得有点懵,因为上图拥有太多的专业术语。不过这也没有关系,在后续的课程中这些术语会陆续的讲到。这里也只需了解个大概,想了解更多,也可以去阅读宗成庆老师编写的《统计自然语言处理》。接下来,介绍自然语言处理常用的底层处理技术。

通常情况下,自然语言处理的整体技术框架可表示为如下图所示。由图可知,自然语言处理可以大致分为底层技术和应用技术。底层技术主要是为了后续各种各样的任务做预处理。而应用技术主要解决的是某个具体的任务需求。

前面主要讲解了自然语言处理的底层技术。它们虽然不是自然语言处理的最终目标。但却是整个自然语言处理过程中不可或缺的一部分。接下来,我们来讲解目前自然语言处理的一些应用应用场景或任务。

文本分类

文本分类是自然语言处理最常见也是最简单的应用场景。文本分类就是将多个文档按某种属性来进行划分。例如,图书馆会把人文社科这一类的书籍放到一个区域,把科学技术类的书籍放到另一个区域,这样既方便馆内工作人员整理,也方便读者查阅。再比如说下图所示的邮箱常用的垃圾邮件分类功能,也是一个常用的文本分类应用场景。

文本自动摘要主要有三种方法,如下:

抽取式摘要:直接从原文中抽取已有的句子组成摘要。

压缩式摘要:抽取并简化原文中的重要句子构成文摘。

理解式摘要:改写或重新组织原文内容形成最终文摘。

文本自动摘要有非常多的应用场景,如下:

自动报告生成

新闻标题生成

搜索结果预览

为下游任务提供支持

情感分析

情感分析也叫观点提取,主题分析,情感挖掘等,其分析的目的是提取人们对一些事物或某个人的看法和态度,来发现存在潜在的问题,以便用于改进或预测。例如,可以通过对外卖评价情感分析来改进外卖服务。

目前情感分析主要有两种方法,如下:

基于情感词典的传统方法:该方法先定义一个情感词典。例如,「很好」、「不错」标记为积极的态度。而将「差」、「垃圾」等词标记为消极的态度。然后统计一个句子中正面和负面情感词的词数,通过比较情感词的数量来判断句子的整体感情色彩。

基于深度学习的方法:该方法主要使用循环神经网络来对句子进行信息提取,然后通过分类的方式来判断情感色彩。

情感分析的应用场景也非常广泛,如下:

个性化推荐系统

智能搜索

产品反馈

业务安全

机器翻译

机器翻译也称为自动翻译,指的是让机器能够将一直自然语言转换成为另一种自然语言的过程。机器翻译是最早的自然语言处理任务之一。在计算机诞生之时,就有科学家提出使用计算机来代替人工进行翻译。而这个问题也一直延续到今天,仍然是自然语言里面一个困难重重的任务。

自动问答

自动问答系统有时候也称为聊天机器人,是自然语言处理中一个比较热门的方向。具体来说,指的是用户以自然语言的形式向机器提出问题,机器系统依据对问题的分析,从各种数据资源中自动找出准确的答案来回答用户。

目前,自动问答主要应用于智能客服,例如淘宝的客户服务。而且,自动问答的技术也日趋成熟,也有许多公司开发出自己的聊天机器人。例如,微软的 小冰机器人 ,百度公司的小度机器人等。

自然语言处理(NLP)在旅游领域具有广泛的应用,其中之一是情感分析。情感分析是指通过计算机程序来识别文本中的情感倾向,分析人们对旅游目的地、酒店、餐厅、交通工具等的评价。这种技术可以帮助旅游公司、酒店、餐厅等机构了解消费者的需求和喜好,改善服务质量和提高客户满意度。

一个典型的旅游情感分析应用是在线评论分析。在线评论是消费者对旅游目的地、酒店、餐厅等的反馈,通过使用 NLP 技术,旅游公司和酒店等机构可以分析这些评论,了解消费者对服务质量、位置、价格、餐饮等的看法。这些信息可以帮助他们改善服务质量、提高客户满意度。

另一个应用是社交媒体情感分析。社交媒体是消费者展示旅游经历的主要渠道,通过使用 NLP 技术,旅游公司和酒店等机构可以分析消费者在社交媒体上发布的文本、和视频,了解消费者对旅游目的地、酒店、餐厅等的感受。这些信息可以帮助他们改善服务质量、提高客户满意度、扩大品牌知名度。

                                   

此外,NLP还可以用于预测未来趋势,通过分析历史数据来预测旅游需求、价格趋势等,进而帮助旅游公司和酒店等机构调量、提高客户满意度。

NLP技术还可以用于语音识别和语音合成,在旅游领域中应用于语音导航、语音查询等场景。例如,旅游公司可以开发一款语音导航应用,让游客在旅游中使用语音命令来获取信息和导航。

总之,NLP在旅游领域有着广泛的应用,它可以帮助旅游公司、酒店、餐厅等机构了解消费者的需求和喜好,改善服务质量和提高客户满意度。通过使用NLP技术,旅游行业可以更好地了解客户,并提供更好的服务和体验。

情感解析技术实质上也就是人工智能中的自然语言处理技术中的一种。

也许前两年我还很难回答你这个问题,不过随着机器学习技术、硬件迭代等因素这两年人工智能得到了极大的发展,自然语言处理也就有了越来越多地实用价值。

在正式回答你的问题之前,我们先要明白,作为人工智能技术基础的机器学习,其最重要的就是需要有充分大的样本数据进行训练,即需要先给机器一些已知“情感”的语言数据,才可以获取最终的解析引擎。这一点尤为重要,因为这决定了能产生使用价值的领域一定存在着易获取、易分析的语言数据才行。当然同时又要对顾客/消费者的情感反馈有着积极地需求。

以这两个为条件,那么结果显而易见了:

1、对话机器人。诸如微软小冰、苹果siri等。非常容易理解,因为“对话”本身就是语言数据之间的沟通,而情感数据作为从语言数据中提炼出来的附加价值信息,对智能对话机器人的“人性化”来说当然是有百利而无一弊。而且,对于这些大企业来说,巨量的语言数据也相当容易获取。

3、情绪客服质检。这是一个很容易被忽略的行业,但是确实人工智能情感解析最直接最有效的应用之一。试想一下,客服质检需要做的是什么工作:判断客服人员工作是否到位……传统的客服质检只能通过堆叠人力的方式,主观、抽样判断。而现有的所谓“客服质检”系统也只不过是关键词提取、匹配,根本不是质检。但是情绪解析的出现彻底改变了这一状况,其实也不难理解,因为判断客服工作最直接的指标不就是顾客的“满意程度”嘛,而通过情绪解析获取的顾客通话或文本输入中的“情感状态及变化趋势”不就满足了这一条件。唯一的一个问题就是这需要很强的情绪解析实践能力,对准确率和技术基础有着很高的要求,故目前为止也只有很少几家诸如语忆科技等提供商才有这样的技术。但事实上,客服质检一定会是最需要情绪解析的细分行业之一。

2、各种评论分析。这点也不难理解,在当今电商消费已经变成主流的网络时代,电商上会产生海量的评论数据。在以前,由于评论量不多,且是非结构化数据,文本处理能力又有限,导致品牌方们很难从中获取有用的信息,从而有巨量的评论数据被浪费。但是如今已经不一样了,像以上所提到的一些优秀的引擎提供商,不仅可以从评论中提取关键词、还能通过情绪解析明白用户的满意程度。一些上文提到的供应商有的还能做到对特定关键词的观点提取。这些都能帮助甲方从评论中挖掘非常有价值的消费者洞察。不难想象,一旦技术成熟,像评论一样的非结构化数据作为用户想法的直接传递,其价值将会远超那些“浏览量”“互动率”等结构化数据……

……

除此之外,还有如书籍分析归类、教育辅导优化、歌词台词总结等等很多应用场景,只不过有些商业价值不明显的领域仍然需要大胆的创新者去研究和开拓。不过无论如何,在这个人工智能兴起的时代,情绪解析仍处于朝阳时代,还具备着极大的潜力等待被挖掘~

可以使用snownlp包,也可以用nltk

scikit-learn

结合,或者自己写算法实现。

简单话就是情感词典的匹配,想提高效果的需要考虑特征之间的搭配,语法顺序等,可以查询搜索相关的入门例子和算法详细了解。

欢迎分享,转载请注明来源:浪漫分享网

原文地址:https://hunlipic.com/qinggan/7757160.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-09-07
下一篇2023-09-07

发表评论

登录后才能评论

评论列表(0条)

    保存