您需要找到一种适合您的问题的降维方法。
我曾处理过与您类似的问题,我发现 Information Gain 效果很好,但还有其他问题。
我发现这篇论文(Fabrizio Sebastiani, Machine Learning in Automated Text Categorization, ACM Computing Surveys, Vol. 34, No.1, pp.1-47, 2002)是对文本分类的很好的理论处理,包括特征通过从简单(词频)到复杂(信息论)的多种方法进行归约。
这些函数试图捕捉这样一种直觉,即 ci 的最佳术语是
在正例和负例集中分布最不同的
ci。然而,对这一原则的解释因不同的职能而异。例如,在实验科学中,χ2 用于衡量观察结果与根据初始假设预期的结果有何不同(即独立)(较低的值表示较低的依赖性)。在 DR 中,我们衡量 tk 和 ci 的独立程度。因此,对于 χ2(tk, ci) 具有最低值的项 tk 与 ci 最独立;由于我们对不感兴趣的项感兴趣,因此我们选择 χ2(tk, ci) 最高的项。
这些技术可帮助您选择最有用的术语,将培训文档分成给定的类别;对您的问题具有最高预测值的术语。
我已经成功地使用信息增益来减少特征,并发现这篇论文(基于熵的文本分类特征选择 Largeron、Christine 和 Moulin、Christophe 和 Géry、Mathias - SAC - Pages 924-928 2011)非常很好的实用指南。
在这里,作者提出了一个基于熵的特征选择的简单公式,该公式对于在代码中实现很有用:
给定一个术语 tj 和一个类别 ck,ECCD(tj , ck) 可以是
从列联表计算。设 A 为数
包含 tj 的类别中的文档; B、号码
包含 tj 的其他类别的文档; C、
ck 的不包含 tj 和 D 的文档数,
其他类别中的文档数量
不包含 tj(其中 N = A + B + C + D):
使用此列联表,可以通过以下方式估算信息增益:
这种方法很容易实现,并且提供了非常好的信息论特征缩减。
你也不需要使用单一的技术;你可以把它们结合起来。 Ter-Frequency 很简单,但也很有效。我将信息增益方法与词频相结合,成功地进行了特征选择。您应该对您的数据进行试验,以了解哪种技术或哪些技术最有效。