如何估算二元分类器所需的内存量?

时间:2012-01-31 03:55:01

标签: machine-learning classification random-forest

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

我的问题是:我如何估计我需要的内存量?假设我的分类器是Random Forest,我对训练集中SPAM消息的分发一无所知。

仅限数字:两个类别,十亿个示例,20个功能。

这样的评估是否可行?怎么办呢?

1 个答案:

答案 0 :(得分:2)

对于垃圾邮件分类,您应该对单词出现功能+ bigrams +域名或在链接中发生的IP地址或从标题和SMTP上下文中提取的内容运行线性分类器。

在这种情况下,你可以在2 ** 18维度(例如,使用vowpal wabbit)上散列特征,每个特征8个字节,这使你在内存中成为2MB模型。