我正在使用Mahout实现文本分类系统。我读过停止词删除和词干有助于提高文本分类的准确性。在我的例子中,删除停止词可以提供更好的准确性,但是词干没有多大帮助。我发现在使用茎器后,准确度下降了3-5% .我试过用波特·施特梅尔和克斯特姆,但在这两种情况下,结果几乎相同。
我使用朴素贝叶斯算法进行分类。
任何帮助都是非常感谢的。
发布于 2014-03-24 09:22:07
首先,你需要理解为什么堵塞通常会提高准确性。想象一下训练集中的下列句子:
他在2013年踢的足球低于平均水平,但在此之前他被视为一名上升的球员,可以打后卫或中锋。
以下是一组测试:
我们正在调查一些球员,包括马克
第一句包含提及体育的单词数,包括“运动员”一词。测试集的第二句也提到了player,但是,哦,它是复数的-- "player“,而不是”player“--所以对于分类器来说,它是一个不同的,无关的变量。
词干试图切断细节,如一个词的确切形式,并产生词库作为分类的特征。例如,词干可以将两个单词缩短为"player“(甚至是"play"),并将它们作为相同的特征使用,从而有更多的机会将第二句归类为属于”体育“类。
然而,有时这些细节本身就起着重要作用。例如,短语“今天的跑步”可能指跑步者,而“长跑”可能是关于手机电池寿命的。在这种情况下,词干会使分类更糟,而不是更好。
在这里,您可以做的是使用额外的功能来帮助区分相同单词/词干的不同含义。两种流行的方法是N克 (例如bigram,由单词对而不是单个单词组成的特性)和词类 (POS)标记。您可以尝试它们的任何组合,例如茎+词干比格,或单词+字汇,或词干+ POS标签,或词干、词条和词性标签等。
同时,尝试其他算法。例如,支持向量机使用了与朴素贝叶斯非常不同的方法,因此它可以捕捉到NB忽略的数据中的内容。
https://stackoverflow.com/questions/22603332
复制相似问题