特征选择(7)-基于树模型的选择

5,887次阅读
没有评论

上一篇文章使用基于模型的方法进行特征选择,其中主要描述了使用正则项、lasso等方法实现的特征选择,这篇文章是这个主题的最后一篇,主要是通过树模型来选择特征。

常见的决策树模型原理基本知道,从单棵树到多棵树,过渡到随机森林和GBDT,这些在实际中都有很大用途,尤其是在陈天奇博士的xgboost中,完全将决策树提升到一个新的层次。

sklearn函数剖析

 

from sklearn.ensemble import  ExtraTreesClassifier
tree=ExtraTreesClassifier()
tree.fit(irisdata.data,irisdata.target)
SelectFromModel(tree,prefit=True).transform(irisdata.data)

输出

array([[ 1.4,  0.2],
       [ 1.4,  0.2],
       [ 1.3,  0.2],
       [ 1.5,  0.2],
       [ 1.4,  0.2],
       [ 1.7,  0.4],
       [ 1.4,  0.3],
       [ 1.5,  0.2],

当然也可以使用GBDT来作为estimator

from sklearn.ensemble import  GradientBoostingClassifier
gb=GradientBoostingClassifier()
SelectFromModel(gb).fit_transform(irisdata.data,irisdata.target)

输出

array([[ 1.4,  0.2],
       [ 1.4,  0.2],
       [ 1.3,  0.2],
       [ 1.5,  0.2],
       [ 1.4,  0.2],
       [ 1.7,  0.4],
       [ 1.4,  0.3],
1
admin
版权声明:本站原创文章,由admin2017-08-22发表,共计684字。
转载提示:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)