创建情绪分析工具

时间:2013-07-24 12:03:36

标签: java hadoop twitter4j sentiment-analysis

我正在尝试创建一个情绪分析工具来分析曼联足球俱乐部三天内的推文,并确定人们是正面还是负面地看待它们。 我目前正在使用本指南作为指导(Java是我的编码语言)

http://cavajohn.blogspot.co.uk/2013/05/how-to-sentiment-analysis-of-tweets.html

我正在使用Apache Flume将我的推文下载到Apache Hadoop中,然后打算使用Apache Hive来查询推文。我也可以使用Apache Oozie有效地对推文进行分区。

在我上面发布的链接中,提到我需要一个训练数据集来训练我将创建的分类器来分析推文。提供的样本分类器有大约5000条推文。当我为uni的夏季项目做这个时,我觉得我应该创建自己的数据集。

我应该使用什么最小数量的推文来使这个分类器有效?有推荐的号码吗?例如,如果我手动分析了一百条推文,或五百或一千条推文,它会有效吗?

2 个答案:

答案 0 :(得分:1)

训练分类器没有确切的数字。您可以拥有一个大型数据集,其中所有数据都具有相同的属性,因此分类器将记忆模式,或者,您可以拥有一个没有大型数据集的良好实例,因此您的分类器将获得更好的结果。

您可以使用他们在帖子中为您提供的样本数据集来训练分类器,并使用cross validation以获得最佳分类器。

获得最佳分类器后,您可以将分类器与帖子中提供的分类器进行比较,并选择更好的分类器。

答案 1 :(得分:0)

数据集各不相同,其内容经常随时间变化(不可预测)。有时您会发现100条带注释的推文足以达到非常好的性能,因为语言使用是统一的。有时,成千上万的推文是不够的。当你认为你的分类器是好的时候,两天过去了,人们谈论的内容以及他们如何谈论它的变化。同样的分类器现在没用了。在改变数据流方面,有大量关于主动学习和内容分析的研究。 Herehere是开展研究的一些论文。

PS如果可能,请使用现成的数据集。从个人经验来看,数据注释非常困难。推文阅读起来非常繁琐,在你盯着他们看了一个小时之后,你会犯很多错误并且无聊。