【问题标题】:feature selection in multiclass logistic regression in pythonpython中多类逻辑回归中的特征选择
【发布时间】:2017-12-07 18:05:53
【问题描述】:

我正在使用 python 使用多项 Logistic 回归执行特征选择(在具有 1,00,000 行和 32 个特征的数据集上)。现在,选择特征以构建多类目标变量模型的最有效方法是什么( 1,2,3,4,5,6,7)?

【问题讨论】:

  • 特征选择是一个巨大的话题。我投票结束这个问题太宽泛了。
  • 这似乎更像是一个统计问题,应该在 stats.stackexchange.com> 。但是为了给你一些东西给谷歌:你可以做一个套索来选择特征。但是,是的,这是一个很大的话题
  • 检查网络上的boruta功能选择link我试过了,效果很好。它模仿 sklearn 界面,因此您可以使用它来选择然后应用分类器/回归器。但是,特征选择/提取的方法有很多

标签: python machine-learning scikit-learn logistic-regression


【解决方案1】:

当然,有多种方法可以选择您的功能。但是有时下一个简单的方法可以帮助你。您可以借助线性模型评估特征的贡献(通过结果变量的潜在预测)。请注意,它主要适用于您怀疑特征与答案之间存在线性相关性的情况。

import statsmodels.formula.api as smf

# Lottery here is Y, the fields from X are right of ~
mod = smf.ols(formula='Lottery ~ Literacy + Wealth + Region', data=df) 
res = mod.fit()
print(res.summary())

OLS Regression Results                            
==============================================================================
Dep. Variable:                Lottery   R-squared:                       0.338
Model:                            OLS   Adj. R-squared:                  0.287
Method:                 Least Squares   F-statistic:                     6.636
Date:                Tue, 28 Feb 2017   Prob (F-statistic):           1.07e-05
Time:                        21:36:08   Log-Likelihood:                -375.30
No. Observations:                  85   AIC:                             764.6
Df Residuals:                      78   BIC:                             781.7
Df Model:                           6                                         
Covariance Type:            nonrobust                                         
===============================================================================
                  coef    std err          t      P>|t|      [0.025      0.975]
-------------------------------------------------------------------------------
Intercept      38.6517      9.456      4.087      0.000      19.826      57.478
Region[T.E]   -15.4278      9.727     -1.586      0.117     -34.793       3.938
Region[T.N]   -10.0170      9.260     -1.082      0.283     -28.453       8.419
Region[T.S]    -4.5483      7.279     -0.625      0.534     -19.039       9.943
Region[T.W]   -10.0913      7.196     -1.402      0.165     -24.418       4.235
Literacy       -0.1858      0.210     -0.886      0.378      -0.603       0.232
Wealth          0.4515      0.103      4.390      0.000       0.247       0.656
==============================================================================
Omnibus:                        3.049   Durbin-Watson:                   1.785
Prob(Omnibus):                  0.218   Jarque-Bera (JB):                2.694
Skew:                          -0.340   Prob(JB):                        0.260
Kurtosis:                       2.454   Cond. No.                         371.
==============================================================================

R 平方值越多,您选择的特征组合就越能更好地预测线性模型中的响应。如果他们可以在线性模型中进行预测,那么我认为,他们在决策树等更复杂的模型中具有更大的潜力。

请查看下一页了解更多详情(请注意,如果您的数据错误是异方差性以获得正确结果,则可能需要进行一些额外的数据处理): http://www.statsmodels.org/dev/example_formulas.html

当然,我建议您也为您的特征构建配对图。

这些方法不是很深入,它们参考相关性和你所看到的,但有时(在不困难的情况下)是务实的。

【讨论】:

    猜你喜欢
    • 2021-06-10
    • 2018-02-27
    • 2016-01-25
    • 2014-01-19
    • 2018-07-02
    • 2016-05-15
    • 2016-05-17
    • 1970-01-01
    • 2014-08-06
    相关资源
    最近更新 更多