上周,我用jQuery开发了一个简单的新闻阅读器,解析JSONP并将生成的列表插入到网页流中。今天早上,有人问我这个问题:“有没有一种智能算法能够‘理解’一条新闻是坏的、好的还是中性的?”我的回答是……“嗯……我不知道。”……这就是为什么我要问这个问题:有没有办法实现这样的事情?THe我唯一能做的就是检查标题是否包含“被杀,炸弹,刺客,洪水,地震,海啸,……”和similar...Any的另一个想法?您是否知道是否已经实施了类似的解决方案?谢谢你的帮忙!
发布于 2013-07-03 21:38:59
你需要一个分类算法。有许多不同的选择,例如查看here。Naive Bayes是一个广为人知的,也是一个很容易实现的工具。
在朴素贝叶斯中,您可以查看您已经判断为坏的新闻项目中出现的单词的频率,也可以查看您已经判断为好的新闻项目中出现的单词的频率。它们给出了条件概率P( word | good )和P( word | bad )的估计,即看到给定好消息的单词的概率,以及看到给定坏消息的单词的概率。
当您看到新的新闻条目时,您可以计算出新闻条目中有哪些单词,并使用贝叶斯定理给出P(好|单词)和P(坏|单词),本质上是将上面计算的出现或未出现在新闻文章中的单词的概率与您预期的好消息或坏消息的频率相乘。如果P(好的|单词)>P(坏的单词),那么这是个好消息。(如果你感兴趣,我把一些数学知识放在我前段时间写的question中;不过,在网络和书籍上有更好的资源。)
朴素贝叶斯是一种众所周知的技术,也用于垃圾邮件过滤。这也很有趣,因为它没有解决什么问题。特别是,它没有考虑排序或上下文或单词。因此,尽管包含了“飓风”这个词,“本周没有飓风”可能是个好消息。例如,我猜在分析新闻文章时,这些考虑因素可能比tweet更重要。无论如何,这是一个有趣的领域,已经做了很多工作。
发布于 2013-07-03 18:23:21
这里是为twitter做的,它被称为情感分析。
http://www.csc.ncsu.edu/faculty/healey/tweet_viz/tweet_app/
http://www.csc.ncsu.edu/faculty/healey/tweet_viz/
发布于 2013-07-03 18:21:58
处理这种情况的一系列算法称为supervised learning,它属于machine learning。
https://stackoverflow.com/questions/17445288
复制相似问题