社交平台舆情分析项目的总结和感想(LU学习,EM,KNN)(二)

前文说到根据贝叶斯过滤器筛选出的评论将其中被分类为有价值评论的排名前50条拿出来作人工标注,这样就得到了一个小评论样本库。于是我们面对的问题就变成了一个典型的部分监督学习,又称LU学习。

LU学习的全称是Labeled Examples & Unlabeled Examples,和监督学习相比,LU学习不仅会把那些已标引的数据用于训练分类器,还会把未标引的数据中的有价值信息挖掘出来加以充分利用。

解决LU学习的方法可以在Web数据挖掘这本书的第5章中找到,在书中作者描述了一种EM算法+贝叶斯分类器的解决方案,利用EM算法不停地迭代,改进贝叶斯分类器中的参数。在项目中我最终采用了EM算法+KNN分类器的办法。对于每个未标引的评论,找出已标引评论中与其最相近的10条,然后根据这10条评论的标引情况来给这条评论打分(要打两个分:赞同和反对)根据打分的比值来分类。如果比值接近于,这不标引。此外,如果10条最邻近评论中有非人工标引的评论,这条评论的权值为0.5。

小窍门:

最后我做些经验之谈,当人们发表评论时往往会用 “虽然……但是……” 或 “……不过……” 或类似的转折结构来更加全面地表述自己的观点。但是这种评论的论点往往在后半句而且前半句表达的观点与真正的观点是相反的,所以当程序识别除了这样的结构后,应该主动过滤掉前半句,防止混淆分类器。



你可能感兴趣的:(社交平台舆情分析项目的总结和感想(LU学习,EM,KNN)(二))