Weka:对多个文本属性的文本情感分析

时间:2014-01-02 23:54:47

标签: machine-learning data-mining weka sentiment-analysis

我希望对多个文本属性进行文本情感分析。我遵循了这个伟大的beginners video tutorial,它可用于单个文本属性及其类 - 正面或负面。我想同时将这个想法扩展到多个属性。

要说清楚,这是我要做的一个例子:

从客户收集的有关零售店的属性:

  1. 商店体验评论 - 字符串
  2. 收集审核 - 字符串
  3. 提供的帮助审核 - 字符串
  4. 整体排名 - 整数(1至5) -
  5. 我希望基于类属性(4)的所有属性(1 - 3)进行分析。

    如果我尝试使用过滤器>无监督的>属性> StringToWordVector分别为这些属性中的每一个,然后观察到结果具有较低的正确分类%。

    这是继续执行文本情感分析的正确方法吗?

1 个答案:

答案 0 :(得分:0)

您正在接近multi-faceted sentiment analysis,因为您要保留有关零售店不同方面(属性)的信息。为了对商店进行整体分析,在分析中混合所有属性并没有错;只需将StringToWordVector应用于所有String属性即可。

一方面,您可以提高准确性,因为在仅使用其中一个属性时,您将获得更好的统计数据和更多功能。另一方面,你可能会减少精确度,因为一篇评论可能会对商店体验有积极的看法,但总体上是负面的,所以混合这些属性可能会在模型中产生一些噪音 - 但这不太可能,因为这样的评论会是一个不好的例子仅从Store Experience属性学习时。

如果您按照本教程进行操作,您会发现StringToWordVector过滤器中有很多选项,您也可以添加AttributeSelection。我建议使用StringToWordVector过滤器中的二进制/ TF / TF.IDF权重来测试每个属性并组合所有属性,使用NGramTokenizer(用于识别正/负多字 - 例如“非常非常”好的“),AttributeSelection使用RankerInfoGainAttributeEval,当然,尽可能多地测试学习算法。

您还有其他教程here