文本情感分析是自然语言处理的一个重要部分,与语音情感分析类似,通过处理提取给定文本中的信息来衡量说话者/作者的态度和情绪,主要用于电影、商品以及社交媒体的用户评论分析等。

VADER是一个基于词典和规则的情感分析开源python库,该库开箱即用,不需要使用文本数据进行训练,安装好之后即可输入想要识别的文本进行情感分析。

与传统的情感分析方法相比,VADER具有很多优势:适用于社交媒体等多种文本类型

不需要任何训练数据

速度快,可以在线使用流数据

其Github代码地址与论文说明地址如下:

Github地址

https://github.com/cjhutto/vaderSentiment

论文地址

http://comp.social.gatech.edu/papers/icwsm14.vader.hutto.pdf

VADER安装

VADER已上传PYPI,可以直接通过pip进行安装pip install vaderSentiment

安装好以后,通过简单的三行代码即可实现你想要的文本情绪分析。即导入库、输入待测文本、打印输出情绪分类结果。例如下边一个简单的例子:from vaderSentiment import sentiment as vaderSentiment

sentences = [

"The plot was good, but the characters are uncompelling and the dialog is not great.",

"A really bad, horrible book.",

"At least it isn't a horrible book."

]

for sentence in sentences:

print (sentence,sentiment = vaderSentiment(sentence))

print ("\n\t" + str(sentiment))

输出结果:The plot was good, but the characters are uncompelling and the dialog is not great.

{'neg': 0.327, 'neu': 0.579, 'pos': 0.094, 'compound': -0.7042}

A really bad, horrible book.

{'neg': 0.791, 'neu': 0.209, 'pos': 0.0, 'compound': -0.8211}

At least it isn't a horrible book.

{'neg': 0.0, 'neu': 0.637, 'pos': 0.363, 'compound': 0.431}

由上边的小例子可以看到,vaderSentiment()返回四个值,即表示消极、积极、中性以及复合情绪值,通过这四个值来反映整体情绪状态。

VADER分析情绪的关键点:标点符号:使用标点符号可以增强情绪强度而不改变情绪。例如,“The food here is good!”比“The food here is good!!”更强烈。单词大写:与情感相关的单词使用大写字母会增加情绪强度。例如“The food here is GREAT!”传达的情感比“The food here is great!”要强。语气词:通过一些语气词来增加或减少影响情绪强度。转折词:使用像“but”这样的连词表示情绪的变化,例如“The food here is great,but the service is horrible”这句话中情绪喜忧参半,但转折词后的部分决定整体情绪评价。

表情符号:print(sentiment_analyzer_scores('?'))

print(sentiment_analyzer_scores('?'))

print(sentiment_analyzer_scores('☹️'))

#Output

I am ? today------------ {'neg': 0.0, 'neu': 0.476, 'pos': 0.524, 'compound': 0.6705}

?------------------ {'neg': 0.0, 'neu': 0.333, 'pos': 0.667, 'compound': 0.7184}

?------------------ {'neg': 0.275, 'neu': 0.268, 'pos': 0.456, 'compound': 0.3291}

☹️------------------ {'neg': 0.706, 'neu': 0.294, 'pos': 0.0, 'compound': -0.34}

?------------------ {'neg': 0.0, 'neu': 1.0, 'pos': 0.0, 'compound': 0.0}

深度学习与Python,专注于深度学习、机器学习前沿知识与资讯

python 文本分析库_快速使用Python进行文本情感分析相关推荐

  1. python 宏处理库_常用的Python库,给大家分享一下!

    Tkinter---- Python默认的图形界面接口. Tkinter是一个和Tk接口的Python模块,Tkinter库提供了对Tk API的接口,它属于Tcl/Tk的GUI工具组.Tcl/Tk是 ...

  2. python程序设计试题库_最新《Python程序设计》试题库资料

    精品文档 精品文档 < Python 程序设计>题库 一.填空题 第一章 基础知识 1 . Python 安装扩展库常用的是 _______ 工具.( pip ) 2 . Python 标 ...

  3. python 没找到库_这十个Python常用库,学习Python的你必须要知道!

    包括原生库和第三方库.不过,有这么多Python库,有些库得不到应有的关注也就不足为奇了. 注意:很多人学Python过程中会遇到各种烦恼问题,没有人帮答疑.为此小编建了个Python全栈免费答疑交流 ...

  4. python生成静态库_使用boost.python静态库

    编译脚本为: bjam stage toolset=msvc link=static runtime-link=shared threading=multi variant=debug,release ...

  5. python 升级所有库_自动更新Python所有第三方库

    一般python用得比较久以后,就会安装很多第三方的库.比如这是我的pip list情况: pip list 而且一屏还显示不完. 通过如下命令可以看到需要更新的第三方库: pip list -o 需 ...

  6. python坐标系转换库_转载:python库Pyproj进行坐标转换

    https://www.baidu.com 利用Pyproj进行坐标转换 作者:郜科科 两个坐标系统的参考椭球不同,实地一个点的不同坐标系的值是不同的,不同的部门采用的坐标系统经常是不一致,所以要转换 ...

  7. python中常用库_常用的python库(不断更新)

    排序不分优先级. 1.os   和操作系统有关 2.time    与时间有关 3.pcap    抓包 4.dpkt   解包和组包 5.pymssql   进行mssql数据库操作 6.cProf ...

  8. python期货数据 库_如何用python或者基于vnpy框架将期货tick数据聚合成1分钟数据呢?...

    同意楼上一些答主的看法,数据量大的情况下用python或pandas不是很好的solution. DolphinDB应该是目前处理tick级金融数据最好的数据库系统之一,甚至可以拿掉之一.如果题主的t ...

  9. python缺少标准库_如何将python标准库缺失的进行导入?

    代码写的很多时候,如果我们需要一个内容,肯定是要将内容拆分的,然后进行导入,但是导入和最简单的复制,黏贴是一样的嘛?答案肯定不是啊,那要怎么将这些内容进行导入呢,下面小编就给大家整理出来,内容很少,大 ...

最新文章

  1. mdi 子窗体 菜单 不合并。
  2. Kettle使用_16 闭包Closure Generator树形数据
  3. WebRTC通话质量调优:三个弱网模拟测试工具的使用与对比
  4. java netty swap高_Netty 超时机制及心跳程序实现
  5. CreateProcess error = 2,系统找不到指定的文件
  6. 从第一范式到第二范式所做的操作是_数据库设计三大范式
  7. 宁夏大学新华学院08计算机马宁,公 示
  8. 修改10g自动统计信息收集作业GATHER_STATS_JOB到仅仅周末执行
  9. 2012.4.23总结
  10. 声音鉴卡引流神器网站源码
  11. 模拟电子技术基础_常用半导体器件
  12. 快速原型模型的概念,优缺点。
  13. 可验证随机函数VRF
  14. unity3d shader之God Ray上帝之光
  15. 文件在计算机系统储存具体位置,电脑微信的文件储存位置怎么打开
  16. 【学习笔记】Python之 pdf 下载、合并
  17. Python实现各种加密,接口加解密不说难
  18. mod_security简要安装设置指南
  19. 华为交换机日志格式和级别说明
  20. 如何在Ubuntu上安装OnlyOffice Docs 7.1?

热门文章

  1. torch.sum()的用法
  2. 基于人脸识别技术的智能安防系统优化升级
  3. 第05章 平面钢架结构的深入分析(铰链支撑、完全固定、滚动铰链支撑)
  4. CentOS 7 搭建CA认证中心
  5. 世外桃源六python_关于桃花源的六年级作文:难忘的世外桃源之旅
  6. vm虚拟机安装CentOS8.2服务器系统
  7. Windows使用uncompyle6
  8. [从头学绘画] 第18节 六十四式八卦掌 (49-56)
  9. 开源改变世界,改变你和我
  10. JAVA数组的3种赋值方式