python - 推特情绪分析技术

标签 python nltk

我正在做一个关于 Twitter 情绪分析的项目,但有一些事情我在思考。

由于推文非常短(少于 140 个字符),文本分析技术最适用。例如。词干提取是否与 - 让我们说 - 长篇文章一样有效?

n-gram 呢?简短的推文对他们来说是好是坏?

k-nearest 会比词性标注更准确吗?

随着时间的推移,我的自定义 Twitter 数据集会变得无关紧要/损坏吗?由于 Twitter 及其上的信息变化如此之快,这也是我的主要担忧。

非常感谢您的宝贵时间。

PS:您有什么好的 Twitter 情绪数据集吗?如果能定期更新就好了。

最佳答案

我做了一些类作业,分析名人的推文并比较他们的相似之处。

您认为最重要的是推文的长度。在 140 个字符时,很多单词都被缩短了,或者是不寻常的“txt-speech”。因此,即使是众所周知的词干分析器,如 Porter会给出一些奇怪的结果。最好保留几乎所有内容,并仅在字数、向量等之后归一化。

对于从单词进行推断,n-gram 和后续链接是质量推断的重要因素。我只能忍受 4-gram 的空间和时间要求,但即使创建简单的 2-gram 也有很大的改进。

如果您注意到我之前说过“几乎所有”。在我只关注流行的名人推文的情况下,我遇到了一个问题,即他们的很多推文都是链接或对他们的事件或赞助商等的喊叫。所以很大一部分是删除大量重复的垃圾邮件。

对于提取准确情绪或您正在寻找的任何度量的方法,我会首先尝试基于朴素贝叶斯的方法。它对于基线来说简单且相对准确。 K-means 会做得相当好,但请记住,它不考虑方差和协方差,但仍然是另一个值得尝试的基线。

希望能提供一些见解。

关于python - 推特情绪分析技术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13713817/

相关文章:

python - 无法让 Scrapy 管道工作

python - 如何正确绘制情节?

python - NLTK 下载 SSL : Certificate verify failed

python - 朴素贝叶斯分类器错误

python - WordNetLemmatizer : Different handling of wn. ADJ 和 wn.ADJ_SAT?

nlp - NLP 依赖树转换为二叉树?

python - 如何让一个字符串分成五个 block ?

python - Numpy 将列表附加到数组而不合并它们

python - 访问 MultipleChoiceField 选择值

pandas - 在 Python 中生成词云来显示数字的频率