python - 在 RandomForestRegressor 上使用 RFECV 解决回归问题
问题描述
我试图使用 REFCV 从 122 个特征(13783 行)中识别最佳特征。数据是连续数据,我正在尝试识别目标变量 WRT 的最重要特征。我已经完成了通常的训练/测试拆分(80:20)。但是,似乎当我运行我的代码时,它需要永远没有结果,所以我必须停止它。
我有一个苹果 mac pro 2015 处理器:2.7 GHz 双核英特尔酷睿 i5 内存:8 GB 1867 MHz DDR3
下面是我的代码:
#Importing libraries
from sklearn.feature_selection import RFECV
import numpy as np
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestRegressor
%matplotlib inline
RF = RandomForestRegressor(n_estimators=100)
# Using RFECV to find the optimum number of best features
rfecv = RFECV(estimator=RF, cv=4)
#Fitting Train data and timing
%%time
rfecv.fit(X_train, y_train)
rfecv.grid_scores_
#Plotting the number of features to visualise optimum number of features
num_features = X_train.shape
num_features[1]
plt.figure(figsize=[10, 5])
plt.plot(range(1, num_features[1]+1), rfecv.grid_scores_)
plt.show()
#features
rfecv.n_features_
解决方案
尝试调整“步骤”和“min_features_to_select”参数。参考:这里
推荐阅读
- android - Android - 屏幕右侧的ConstraintLayout文本剪切
- r - 通过索引选择性地组合 R Dataframe
- swift4.1.5 - 当我尝试在我的设备中运行我的项目时,命令阶段快速执行错误
- javascript - 错误:单击按钮后更新电梯和用户的值
- javascript - 为什么 TypeError:无法读取未定义的属性“0”?
- r-markdown - 是否可以提高从 RMarkdown 的 TikZ 插入 Word 文档的图像的分辨率?
- google-cloud-platform - 如何为“gcloud”实用程序的单次调用设置服务密钥文件?
- linux - 通过 ssh 使用西里尔字母
- javascript - 使用javascript根据运动方向使元素旋转
- javascript - Leaflet.js - 创建标记并在地图上显示弹出窗口