共计 684 个字符,预计需要花费 2 分钟才能阅读完成。
上一篇文章使用基于模型的方法进行特征选择,其中主要描述了使用正则项、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],
正文完
请博主喝杯咖啡吧!