良好的情绪分析算法

时间:2012-06-11 14:00:21

标签: algorithm sentiment-analysis

我尝试了天真的贝叶斯分类器,它的工作非常糟糕。 SVM工作得更好但仍然很糟糕。大多数关于SVM和朴素贝叶斯的文章都有一些变化(n-gram,POS等),但所有这些都给出了接近50%的结果(文章的作者谈论了80%和高,但我不能得到同样的准确在真实数据上)。

除lexixal分析外,还有更强大的方法吗? SVM和贝叶斯认为单词是独立的。这些方法称为“词袋”。如果我们假设单词是相关的怎么办?

例如:使用先驱算法检测如果句子包含“坏和可怕”,那么句子为负的70%概率。我们也可以使用单词之间的距离等。

这是好主意还是我发明自行车?

5 个答案:

答案 0 :(得分:5)

SVM,朴素贝叶斯和最大熵算法等算法都是受监督的机器学习算法,程序的输出取决于您提供的训练集。 对于大规模情感分析,我更喜欢使用无监督学习方法,其中人们可以通过将文档聚类成面向相同的部分来确定形容词的情绪,并将聚类标记为正面或负面。可以从本文中找到更多信息。 http://icwsm.org/papers/3--Godbole-Srinivasaiah-Skiena.pdf

希望这可以帮助你完成工作:)

答案 1 :(得分:4)

你在这里混淆了几个概念。 Naive Bayes和SVM都没有与单词方法联系在一起。无论是SVM还是BOW方法都没有术语之间的独立性假设。

以下是您可以尝试的一些事项:

  • 在你的文字袋中加上标点符号; ESP。 !和?可以帮助进行情绪分析,而许多面向文档分类的特征提取器会将它们抛弃
  • 相同的停止词:像“我”和“我的”这样的词可能表示主观文字
  • 建立一个两阶段的分类器;首先确定是否表达任何意见,然后确定是正面还是负面
  • 尝试使用二次核SVM而不是线性SVM来捕获要素之间的相互作用。

答案 2 :(得分:1)

您可以在Sentimnetal analysis using python找到一些有用的资料。 本演示文稿将情感分析总结为3个简单步骤

  • 标记数据
  • 预处理&
  • 模型学习

答案 3 :(得分:0)

情绪分析是一个正在进行研究的领域。现在有很多研究正在进行中。有关最新,最成功的方法的概述,我建议您查看SemEval的共享任务。通常,他们每年都会在Twitter上进行情感分析竞赛。你可以在这里找到描述任务的论文和2016年的结果(虽然可能有点技术性):http://alt.qcri.org/semeval2016/task4/data/uploads/semeval2016_task4_report.pdf

从那里开始,您可以查看描述各个系统的论文(如此处所述)。

答案 4 :(得分:0)

报纸和博客在报告近期事件时表达对新闻实体(人,地方,事物)的看法。我们 展示一个分配得分的系统,该得分表示肯定或 对文本语料库中每个不同实体的负面意见。 我们的系统包含情绪识别阶段, 员工与每个相关实体表达意见,并且 情感汇总和评分阶段,对每个阶段进行评分 相对于同一类别中其他人的实体。最后,我们评估了大型语料库评分技术的重要性 新闻和博客。