0

假设我想创建一个二进制分类器来检测垃圾邮件。我有十亿个训练示例和大约 20 个特征。我希望我训练有素的分类器适合内存(我将在实际上是 rpc 调用的云和磁盘操作上运行它会非常昂贵)。

我的问题是:如何估计我需要的内存量?假设我的分类器是随机森林,我对训练集中垃圾邮件消息的分布一无所知。

只有数字:两个类,十亿个例子,20 个特征。

这样的估计是否可能?怎么做到呢?

4

1 回答 1

2

对于垃圾邮件分类,您可能应该对出现在链接中的单词出现特征 + 二元组 + 域名或 ip 地址 + 从标头和 SMTP 上下文中提取的内容运行线性分类器。

在这种情况下,您可以在 2 ** 18 维(例如使用vowpal wabbit)上对特征进行哈希处理,每个特征乘以 8 个字节,从而使您在内存中成为 2MB 的模型。

于 2012-01-31T18:51:39.767 回答