NLP文本情感——SNOWNLP简易版
NLP情感分析简介:
NLP(Natural Language Processing,自然语言处理)研究用计算机来处理、理解以及运用人类语言(如中文、英文等),达到人与计算机之间进行有效通讯。
自然语言生成三阶段:文本规划、语句规划、实现
NLP应用领域:机器翻译、情感分析、智能问答、文摘生成、文本分类、舆论分析、知识图谱。
情感分析是自然语言处理(NLP)领域的一类任务,又称倾向性分析,意见抽取,意见挖掘,情感挖掘,主观分析等,它是对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程。
常用方法:
1、词袋/词典模型
由于机器对于人类语言理解力不强,从而导致文本分析的准确性不高,因此常常需要人工构建词袋/词典的方式,辅助计算机理解,具体做法是构建积极的词语词典和消极的词语词典,对文本进行词频统计,判断积极词汇与消极词汇所占的比重,从而判断文本情感。
但是词袋/词典模型具有没有考虑语句的先后顺序,以及上下文关系的缺点,从2001年的嵌入式词向量表示到2013年的word2vec ,研究已经逐步解决传统词袋表征方式的无序性,并进一步丰富了表征向量的表达能力。
这种方法关键在于构建与维护词典,词典的科学性,准确性。
2、 机器学习模型
由于机器学习的快速发展,循环神经网络(RNN)、Bert模型快速兴起,被广泛地运用于文本分析中。
本文探讨一个比较简单的利用计算机判断文本情感的方法——SNOWNLP
Snownlp是python中的包,适用于自然语言处理中的文本情感分析模块。
导入文本信息,python将帮你分析语言中的褒义、贬义成分,并给出相应的分数。
利用生成的情感分数,可以制作相应的数据图表来反映的情感倾向。
由于这个包能够自动帮你对词语进行情感得分打分,因此一方面减少了人为的主观性,但是,对于文本处理的要求较高,一定要剔除掉影响打分的标点符号以及停用词等等。但是在设置情感得分大于多少为积极时,还是存在一定主观性,这个主要就根据经验出发。
代码:
# -*- coding: utf-8 -*- # @Time : 2022/3/9 23:41 # @Author :LMQ # @File : 代码.py # @Software : PyCharmimport pandas as pd from snownlp import sentiment from snownlp import SnowNLP import jiebawith open ("发言.txt",'r',encoding='utf-8') as f:text = f.read()#根据情感得分判断积极还是消极 def type_class(text):if text > 0.6:text = '积极'elif text >=0.5:text = '中性'else:text= "消极"return text#字符串替换去标点符号 bd='[’!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~]+,。!?“”《》:、. ' for i in bd:txt=text.replace(i,'')word_list = list() txt_list = jieba.lcut(txt) #jieba分词 # s = SnowNLP(text) # txt_list = s.wordsfor t in txt_list:print(t)if len(t) == 1:continueelse:s = SnowNLP(t)score = s.sentimentsemotion = type_class(score)content_dict = {'词语': t,'snow': s,'情感评分': score,'积极消极': emotion,}word_list.append(content_dict)# 把词语和得到的情感分数写入文件中 df = pd.DataFrame(word_list) df.to_excel("发言情感.xlsx")
Snownlp情感得分示例:——可以看出还是比较合理的。
最后统计词汇的情感分布,判断整个文本的情感
整理来说,整篇文章情感是积极的。
NLP文本情感——SNOWNLP简易版相关推荐
- 深度解读NLP文本情感分析Pipeline
随着移动互联网的普及,很多人已经习惯于在网络上表达意见和建议.比如电商网站上对商品的评价.社交媒体中对品牌.产品.政策的评价等等.这些评价中都蕴含着巨大的商业价值.而对这种评价的分析就是情感分析的主要 ...
- QT实现文本编辑器(简易版)
一.简介 二.实现功能 三.思路 四.代码实现 五.运行结果 一.简介:这是一个简易版的文本编辑器,只能进行简单的文件读取与保存 二.实现功能: (1)打开指定路径的文件 (2)把文件的名字显示在标签 ...
- NLP:文本情感分析快速入门
最近由中国计算机学会(CCF)主办,雷锋网,香港中文大学(深圳)承办的2018全球人工智能与机器人峰会(CCF-GAIR)在深圳召开,由于博主主要做NLP方向,主要在做情感分析,文本生成方面,所以主要 ...
- NLP文本情感分析:测试集loss比训练集loss大很多,训练集效果好测试集效果差的原因
NLP情感分析:测试集loss比训练集loss大很多 一.前言 二.原因 一.前言 最近在学习神经网络自然语言处理的相关知识,发现运行的之后测试集的loss比训练集的loss大很多,而accuracy ...
- Java实现一个简单的文本编辑器(简易版)
(用Java做了一个简单的文本编辑器,其中看了很多博主的教学和代码,在这里感谢:@Mark7758.@Kingsly_Liang.@佐敦不下雨.再次感谢!) 1.功能说明: 文件菜单:打开.保存.新建 ...
- 【AI案例】(一)NPL文本情感分析
文章目录 一.NLP文本情感分析概述 二.文本情感分析难点 三.具体方法与实现步骤 1.情感词典 2.高纬向量模型 1>概述 2>具体步骤如下: 1) jieba分词 2) Word2Ve ...
- NLP之TEA:自然语言处理之文本情感分析的简介、算法、应用、实现流程方法、案例应用之详细攻略
NLP之TEA:自然语言处理之文本情感分析的简介.算法.应用.实现流程.实现方法之详细攻略 目录 TEA的简介 TEA的应用 TEA的实现流程 TEA的实现方法 T1.词袋模型 TEA的案例应用 TE ...
- python景点情感分析代码_python snownlp情感分析简易demo(分享)
SnowNLP是国人开发的python类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和T ...
- 基于python的情感分析案例-python snownlp情感分析简易demo(分享)
SnowNLP是国人开发的python类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和T ...
- python评论情感分析步骤_python中snownlp情感分析简易的demo分享
下面小编就为大家带来一篇python snownlp情感分析简易demo(分享).小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 SnowNLP是国人开发的python类 ...
最新文章
- 14.线程安全?线程不安全?可重入函数?不可重入函数?
- 如何让整个表格高度固定_Saas产品中,表格设计有哪些要点
- SpringCloud微服务架构,Config 分布式配置中心,Bus 消息总线, Stream 消息驱动,Sleuth+Zipkin 链路追踪
- python-list:列表-元组-字符串
- Z-BlogPHP主题/名扬图文博客主题模板商业版
- Asp.net MVC3 Razor语法小记
- Unity NGUI 制作URL超链接点击打开网页
- asp.net Ajax表单提交 二种方式数据处理 asp.net
- TextView内部类Layout光标相关方法
- Eclipse集成Zxing实现扫一扫功能
- 猿创征文|Python学习工具千千万,我心中的TOP10
- 男人一生的四菜一汤(转载)
- BIOS视频中断 10号中断详解
- VSCode中值得推荐的常用的33个高效前端插件「效率篇」(二)
- 『方案』《女友十年精华》 ORC 图片 文字识别 详解
- 计算机与科学技术专业毕业设计,计算机科学与技术专业毕业设计论文
- 网站怎么被搜索引擎快速收录?
- Java JDK 下载官方网站
- 深度学习入门笔记(八):深层网络的原理
- HAC集群添加新节点