如何选择特征选择算法? - 建议

时间:2010-01-14 16:51:47

标签: nlp nltk semantic-analysis

是否有我可以阅读的研究论文/书籍可以告诉我手头的问题哪种特征选择算法最有效。

我试图将twitter消息简单地识别为pos / neg(开头)。我开始使用基于频率的功能选择(已经开始使用NLTK书籍),但很快意识到,对于类似的问题,各个人都选择了不同的算法

虽然我可以尝试基于频率,互信息,信息增益和各种其他算法的列表似乎无穷无尽......并且想知道是否有一种有效的方式然后试错。

任何建议

3 个答案:

答案 0 :(得分:6)

你有没有尝试过我在上一个问题上推荐的那本书?它可以在线免费获取,完全与你正在处理的任务有关:Pang和Lee的Sentiment Analysis and Opinion Mining。第4章(“提取和分类”)正是您所需要的!

答案 1 :(得分:4)

上个学期我做了一个NLP课程,很明显,情绪分析是没有人真正知道如何做得好(还)。无监督学习这样做当然更难。

有很多关于此的研究,其中一些是商业性的,因此不对公众开放。我不能指出任何研究论文,但我们用于该课程的书是thisgoogle books preview)。也就是说,这本书涵盖了很多材料,可能不是找到这个特定问题的解决方案的最快方法。

我可以指向你的另一件事是尝试谷歌搜索,也许在scholar.google.com上进行“情绪分析”或“意见挖掘”。

查看NLTK movie_reviews语料库。评论已经过pos / neg分类,可能会帮助您培训分类器。虽然你在Twitter上找到的语言可能与那些语言截然不同。

作为最后一点,请在此处发布任何成功(或失败)。这个问题稍后肯定会出现。

答案 2 :(得分:1)

不幸的是,在处理机器学习时没有任何灵丹妙药。它通常被称为"No Free Lunch"定理。基本上,许多算法适用于某个问题,有些算法在某些问题上表现更好,而在其他问题上表现更差。总而言之,它们都表现相同。相同的特征集可能导致一个算法执行得更好而另一个算法对于给定的数据集执行更差。对于不同的数据集,情况可以完全颠倒。

通常我所做的就是选择一些功能选择算法,这些算法对其他类似任务有效,然后从那些算法开始。如果我使用我喜欢的分类器获得的表现是可以接受的,那么另外半个百分点的搜索可能不值得我花时间。但是如果这是不可接受的,那么是时候重新评估我的方法,或者寻找更多的特征选择方法。