文本分类--情感分析
(纯属为了记录自己学习的点滴过程,引用资料都附在参考列表)
1 基本概念
情感分析
对于情感分析而言,只需要准备标注了正负情感的大量文档,就能将其视作普通的文本分类任务来解决。此外,一些带有评分的电影、商品评论也可以作为“天然”的标注语料库。
2 问题
给出某酒店评论数据,正负评论各2000条组成,训练情感分类模型,并对测试数据预测;
3 解决思路
化归为文本分类问题,使用文本分类的一般步骤,算法使用Naive Bayesian Model;
4 实现
# -*- coding:utf-8 -*-from pyhanlp import *
from tests.test_utility import ensure_dataIClassifier = JClass('com.hankcs.hanlp.classification.classifiers.IClassifier')
NaiveBayesClassifier = JClass('com.hankcs.hanlp.classification.classifiers.NaiveBayesClassifier')
# 中文情感挖掘语料-ChnSentiCorp 谭松波
chn_senti_corp = ensure_data("ChnSentiCorp情感分析酒店评论", "http://file.hankcs.com/corpus/ChnSentiCorp.zip")def predict(classifier, text):print("《%s》 情感极性是 【%s】" % (text, classifier.classify(text)))if __name__ == '__main__':classifier = NaiveBayesClassifier()# 创建分类器,更高级的功能请参考IClassifier的接口定义classifier.train(chn_senti_corp)# 训练后的模型支持持久化,下次就不必训练了predict(classifier, "前台客房服务态度非常好!早餐很丰富,房价很干净。再接再厉!")predict(classifier, "结果大失所望,灯光昏暗,空间极其狭小,床垫质量恶劣,房间还伴着一股霉味。")predict(classifier, "可利用文本分类实现情感分析,效果不是不行")
运行结果:
[正面]...100.00% 2000 篇文档
[负面]...100.00% 2000 篇文档
耗时 1477 ms 加载了 2 个类目,共 4000 篇文档
原始数据集大小:4000
使用卡方检测选择特征中...耗时 17 ms,选中特征数:486 / 15034 = 3.23%
贝叶斯统计结束
《前台客房服务态度非常好!早餐很丰富,房价很干净。再接再厉!》 情感极性是 【正面】
《结果大失所望,灯光昏暗,空间极其狭小,床垫质量恶劣,房间还伴着一股霉味。》 情感极性是 【负面】
《可利用文本分类实现情感分析,效果不是不行》 情感极性是 【负面】
- 值得注意的是,最后一个测试案例“可利用文本分类实现情感分析,效果不是不行”虽然不属于酒店评论,但结果依然是正确地,这说明该统计模型有一定的泛化能力,能处理一些其他行业的文本。
5 参考文献
- 何晗《自然语言处理入门》;
- 宗成庆《统计自然语言处理》;
- 李航《统计学习方法》;
文本分类--情感分析相关推荐
- 【Bert、T5、GPT】fine tune transformers 文本分类/情感分析
[Bert.T5.GPT]fine tune transformers 文本分类/情感分析 0.前言 text classification emotions 数据集 data visualizati ...
- 基于BERT做中文文本分类(情感分析)
Bert: BERT是一种预训练语言表示的方法,这意味着我们在大型文本语料库(例如Wikipedia)上训练通用的"语言理解"模型,然后将该模型用于我们关心的下游NLP任务,BER ...
- 如何做中文文本的情感分析?
如何做中文文本的情感分析? 这是本学期在大数据哲学与社会科学实验室做的第三次分享了. 第一次分享的是:如何利用"wordcloud+jieba"制作中文词云? 第二次分享的是:如何 ...
- 基于深度学习的汽车行业评论文本的情感分析
使用卷积神经网络对汽车行业评论文本进行情感分析. dateset 爬取汽车之家车主口碑评论文本,抽取口碑中最满意以及最不满意评论文本,分别作为正向情感语料库和负向情感语料库. 爬虫技术视频链接:htt ...
- NLP之TEA:基于SnowNLP实现自然语言处理之对输入文本进行情感分析(分词→词性标注→拼音简繁转换→情感分析→测试)
NLP之TEA:基于SnowNLP实现自然语言处理之对输入文本进行情感分析(分词→词性标注→拼音&简繁转换→情感分析→测试) 目录 NLP分词 NLP词性标注 NLP情感分析-TEA NLP常 ...
- 情感分析的新方法,使用word2vec对微博文本进行情感分析和分类
向AI转型的程序员都关注了这个号??? 大数据挖掘DT数据分析 公众号: datadw 情感分析是一种常见的自然语言处理(NLP)方法的应用,特别是在以提取文本的情感内容为目标的分类方法中.通过这种 ...
- 机器学习-文本处理之电影评论多分类情感分析
一.背景 文本处理是许多ML应用程序中最常见的任务之一.以下是此类应用的一些示例 语言翻译:将句子从一种语言翻译成另一种语言 情绪分析:从文本语料库中确定对任何主题或产品等的情绪是积极的.消极的还是中 ...
- 金融文本信息情感分析(负面及主体判定)
向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程 公众号:datayx 给定一条金融文本和文本中出现的金融实体列表, 负面信息判定:判定该文本是否包含金融实体的负面信 ...
- python英文文本情感分析_舆情信息浩如烟海?看看如何用Python进行英文文本的情感分析...
市场每天都在生成海量的舆情信息,这些信息可以帮助我们识别市场情绪的转变.如果只是人工地去跟踪大量的舆论和研报显然缺乏效率.我们可以试试让机器来完成这个工作. 数据科学在数值领域中很常见,但这个不断壮大 ...
最新文章
- Journey源码分析三:模板编译
- 别的设计师比你又快又好,是因为你不知道他们在用介个!
- HashMap 与 Hashtable 的区别
- 兼容多种屏幕分辨率的通栏大图实现方法
- php根据单词截取英文语句,php按单词截取字符串的方法
- windows批量添加用户
- 抗疫进展:华为云联合多家科研机构筛选出五种可能有效的抗病毒药物
- Sklearn 0.21 中文文档校对活动 | ApacheCN
- 【bzoj5173】[Jsoi2014]矩形并 扫描线+二维树状数组区间修改区间查询
- oracle用户口令已失效
- wireless-tools源码分析-iwlist
- 华为设备配置基于MSDP的Anycast RP
- Google ----- 展示搜索的艺术!
- webgl图库研究(包括BabylonJS、Threejs、LayaboxJS、SceneJS、ThingJS等框架的特性、适用范围、支持格式、优缺点、相关网址)
- ABT Node:为去中心应用开发带来的范式迁移
- 微博短视频怎么去水印 视频消重软件推荐
- MySQL数据库——MySQL是什么?它有什么优势?
- win10电脑显示无法自动修复此计算机,win10正式版提示自动修复无法修复你的电脑解决教程...
- GPU编程 CUDA C++ 使用统一内存编程之【静态统一内存】
- 一项“和灾难赛跑的教育”工程 ——马小平编著《人文素养读本》序
热门文章
- 前端学习(1179):vue概述
- java学习(29):大神指导(巩固练习)
- 隔离型RS232串口电路
- 64位虚拟机下asm()语法_用Hyper-V在win10中创建虚拟机,简单快捷,不用安装其它软件...
- Express中use挂载中间件的方法
- UOJ#196. 【ZJOI2016】线段树 概率期望,动态规划
- MySQL数据库select语句的使用方法
- Seurat | 单细胞分析工具
- 注册COM组件cmd(管理员权限)
- Java连接SQL数据库失败的分析思路