训练数据集非常广泛(大约 200K 特征)并且非常短(数百个)。显然数据集占用了大量内存,但 R 读取它没有问题。
然后我训练了随机森林分类器,它的内存不足。所以我改用更简单的分类器,比如朴素贝叶斯。NB也导致内存不足。
一般来说,最节省内存的分类器是什么?我怀疑逻辑回归和朴素贝叶斯应该列入名单......
升级版:
在使用随机森林之前,我最终使用了特征减少方法。在我的情况下,包插入符号可以提供帮助,但不能提供初始变量数。
使用的特征缩减:
- 方差阈值过滤器(去除方差低于阈值的特征);
- 特征与预测值之间的相关性:去除相关性较低的特征;
- 特征成对相关性:去除高成对相关性特征。