将n_features_to_select RFE设置为管道中的百分比

时间:2017-02-28 13:45:44

标签: python machine-learning scikit-learn pipeline rfe

我有这样的管道:

lin_reg_pipeline = Pipeline([
    ('polynomial_features', PolynomialFeatures()),
    ('normalize_polynomial_features', StandardScaler()),
    ('feature_selection', RFE(LinearRegression(), verbose=1)),
    ('lin_reg', LinearRegression())
])

现在,在网格搜索中安装此管道时,我指定要调整的以下参数:

params = {
    'polynomial_features__degree': [1, 2, 3],
    'feature_selection__n_features_to_select': st.randint(10, 100)
}

我有没有办法将n_features_to_select设置为数据集中要素总量的百分比?因为我不知道会添加多少个功能PolynomialFeatures()

提前致谢,

凯文

1 个答案:

答案 0 :(得分:0)

您可以在step参数中传递一个介于0.0和1.0之间的浮点数,默认情况下,这将删除每个步骤的百分比。

签出the documentation here