【发布时间】:2017-05-03 10:21:00
【问题描述】:
我正在做信用风险建模,数据有大量特征。我正在使用 boruta 包进行特征选择。该软件包的计算成本太高,我无法在完整的训练数据集上运行它。我想要做的是获取训练数据的一个子集(假设大约 20-30%)并在该子集数据上运行 boruta 包并获得重要特征。但是当我使用随机森林来训练数据时,我也使用了完整的数据集。我的问题是,只在部分训练数据上选择特征然后在整个训练数据上构建模型是否正确?
【问题讨论】:
-
考虑到样本'是没有替换的 SRS'并且有足够的条目来构建具有良好准确性的模型',这并没有错。试试这个练习 2-3 次,以确保。你说的计算成本高是什么意思?数据量和计算资源有多少?
-
大小约为 150 MB。我在 R 工作室上运行它。 PC 规格:8GB 内存,第 6 代 i5
-
从字节大小的角度来看,150MB 并不是大数据大小。你有足够的资源来处理。我在问观察的数量。处理这些数据需要多长时间?
-
我有大约 50 万个观测值,每个 19 个变量。我在 50% 的数据上运行了 boruta 特征选择算法,它花了大约 75 分钟,第三次尝试也是如此。我的笔记本电脑前两次中途挂了。而且 rfe 功能选择 30 分钟没有产生任何结果。
-
尝试使用 30% 的样本量。您可以检查的另一件事是在其他包中更快地实现 boruta 算法。
标签: r machine-learning data-science feature-selection