ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python – 如何在blob中计算情绪分析

2019-06-11 19:45:20  阅读:211  来源: 互联网

标签:python sentiment-analysis


我使用以下来计算200个短句的情绪.我没有使用训练数据集:

对于textblob.sentences中的句子:
    打印(sentence.sentiment)

分析返回两个值:极性和主观性.
根据我在网上看到的,极性分数是在[-1.0,1.0]范围内的浮点数,其中0表示中性,1表示非常积极态度,-1表示非常消极态度.主观性是在[0.0,1.0]范围内的浮点数,其中0.0是非常客观的,1.0是非常主观的.

那么,现在我的问题是:这些分数是如何计算的?

对于几乎一半的短语的极性分数,我有一些零,我想知道零是否表示中立,或者更确切地说这个短语不包含具有极性的单词这一事实.
我想知道另一个情绪分析器的相同问题:NaiveBayesAnalyzer.

谢谢您的帮助!
玛丽

解决方法:

TextBlob NaiveBayesAnalyzer显然是基于斯坦福NLTK.这里解释了朴素贝叶斯算法:
A simple explanation of Naive Bayes Classification

这里描述了它对情感和客观性的应用:
http://nlp.stanford.edu/courses/cs224n/2009/fp/24.pdf

基本上你是对的,根据在某些训练数据中使用它们的方式,某些单词将被标记为“40%正面/ 60%负面”(对于斯坦福NLTK,训练数据是电影评论).然后将句子中所有单词的分数相乘以产生句子分数.

我没有测试过,但是我希望如果库正好返回0.0,那么你的句子中不包含任何在NLTK训练集中具有极性的单词.我怀疑研究人员没有包括他们,因为1)他们在训练数据中太罕见或2)他们被认为是毫无意义的(如“the”,“a”,“and”等).

这适用于朴素贝叶斯分析仪.关于PatternAnalyzer,TextBlob文档说它基于“模式”库,但它似乎没有记录它是如何工作的.我怀疑发生了类似的事情.

标签:python,sentiment-analysis
来源: https://codeday.me/bug/20190611/1220825.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有