【问题标题】:Bias towards negative sentiments from Stanford CoreNLP斯坦福 CoreNLP 对负面情绪的偏见
【发布时间】:2014-09-08 16:49:41
【问题描述】:

我正在尝试使用斯坦福的 CoreNLP 库从 Twitter 中获取情绪,例如 https://www.openshift.com/blogs/day-20-stanford-corenlp-performing-sentiment-analysis-of-twitter-using-java - 请参阅此处了解我正在实施的代码。

我得到了结果,但我注意到在我的目标数据集和我使用的另一个数据集(Sanders Analytics Twitter Sentiment Corpus http://www.sananalytics.com/lab/twitter-sentiment/)中似乎存在对“负面”结果的偏见即使地面实况数据没有这种偏差。

我发布这个问题是因为其他人遇到过这种情况和/或可能知道这是我所做的事情或 CoreNLP 代码中的一些错误的结果。

(编辑 - 抱歉,我花了这么长时间才回复) 我正在发布指向图表的链接,以显示我的意思。我没有足够的声誉来发布图片,并且只能在这篇文章中包含两个链接,所以我将在 cmets 中添加链接。

【问题讨论】:

  • 你能证明有多少偏差吗?例如。你能展示一下你得到的结果,以及你期望得到的结果吗?
  • 这是来自 Sanders 语料库的基本事实情绪的histogram。请注意,大多数推文都有中性情绪。我从其他工具获得了类似的分布:AlchemyAPILIWCWilson。但我得到的分布与Stanford CoreNLP 不同 - 负面情绪更多。

标签: java twitter nlp stanford-nlp sentiment-analysis


【解决方案1】:

我想建议这只是域不匹配。斯坦福 RNTN 接受过电影评论 sn-ps 培训,您正在对 twitter 数据进行测试。除了主题不匹配之外,推文也往往不合语法并使用缩写(“创意”)语言。 如果我必须提出一个更具体的原因,我会从词汇不匹配开始。也许负面情绪以与领域无关的方式表达,例如。使用常见的形容词,而积极情绪则更依赖于领域或更微妙。

你得到一个负面偏见仍然很有趣。 Polyanna 假设表明存在正偏差,恕我直言。

除了您最初的问题之外,还有几种方法可以专门针对微博数据进行情绪分析。参见例如"The Good, The Bad and the OMG!" by Kouloumpis et al.

【讨论】:

【解决方案2】:

Michael Haas 正确指出存在域不匹配,Richard Socher 在comments 部分也指出了这一点。

含有大量生词和不完美标点的句子会被标记为否定句。

如果您使用 Python,VADER 是一个很棒的 Twitter 情绪分析工具。它是一个基于规则的工具,只有约 300 行代码和一个为 twitter 定制的词典,其中包含约 8000 个单词,包括俚语和表情符号。

修改规则和词典很容易,无需重新训练。它是完全免费和开源的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-17
    • 1970-01-01
    • 2015-07-05
    相关资源
    最近更新 更多