大数据集的最大熵分类器

Posted

技术标签:

【中文标题】大数据集的最大熵分类器【英文标题】:Maximum Entropy classifier for big data sets 【发布时间】:2012-06-11 14:28:06 【问题描述】:

我一直在寻找一个最大熵分类实现,它可以处理 500 个类和 1000 个特征的输出大小。我的训练数据大约有 30,000,000 行。 我曾尝试使用 MegaM,64 位 R maxent 包,爱丁堡大学的 maxent 工具,但正如预期的那样,它们都不能处理数据的大小。但是,对于这种性质的 nlp 任务,数据集的大小似乎并不过分。 有什么我应该采用的技术吗?或者对我可以使用的工具包有什么建议? 我正在尝试在具有 8GB RAM 的 64 位 Windows 机器上运行它,在需要时使用 Cygwin。

【问题讨论】:

【参考方案1】:

Vowpal Wabbit目前被认为是最快的大规模学习器。 LibLinear 是另一种选择,但我不确定它是否可以处理 3e10 元素的矩阵。

请注意,“MaxEnt”一词几乎只由 NLP 人员使用;机器学习人员将其称为逻辑回归或 logit,因此如果您搜索它,您可能会发现比搜索 MaxEnt 时更多的工具。

【讨论】:

Vowpal Wabbit 可以处理多类分类吗?我在他们的页面上看到的所有示例都涉及二进制分类。 @atlantis:根据this answer 可以,但是功能没有得到很好的记录。然而,它的wiki 指出,对于逻辑损失,标签应该是 1 或 -1,因此您可能必须进行一对一的训练。 Liblinear 本质上也为逻辑回归进行了一对一的训练。但它是开箱即用的。到目前为止,我的数据集似乎运行良好。如果我发现任何问题,将进行编辑。

以上是关于大数据集的最大熵分类器的主要内容,如果未能解决你的问题,请参考以下文章

如何在斯坦福分类器中使用朴素贝叶斯分类器、SVM 和最大熵

Python NLTK 最大熵分类器错误

最大熵分类中的“共识”

不平衡数据集的 Knn 分类器

大数据-10-Spark入门之支持向量机SVM分类器

如何绘制具有多个数据集的多个分类器的准确性 [关闭]