过滤法 单变量特征选择通过单变量统计检验选择特征 SelectKBest只保留K个最高分的特征 SelectPercentile只保留用户指定的百分比的最高得分的特征 使用常见的单变量统计检验 分类: 使用chi2卡方 f_classif方差分析 mutual_info_classif互信息 回归: 使用f_regression相关系数 mutual_info_regression互信息 嵌入法 SelectFromModel是一个元转换器,可以与那些有coef_或者fearure_importances_属性的模型一起使用。如果coef_或者fearure_importances_小于阈值,认为特征是不重要的。 包装法 给特征赋予一个外部模型产生的权重(比如:线性模型系数),RFE递归使用越来越少的特征进行特征选择。首先,在原始数据上建立模型并且给每个特征一个权重;然后,消除绝对权重最小的特征,递归执行这个过程直到达到希望的特征数。# 方差过滤 from sklearn.feature_selection import VarianceThreshold from sklearn.datasets import load_digits digits = load_digits() X = digits.data y = digits.target print(X.shape) X_var = VarianceThreshold(threshold=0.1).fit_transform(X) print(X_var.shape)
# 卡方过滤 from sklearn.feature_selection import SelectKBest, chi2 from sklearn.datasets import load_digits digits = load_digits() X = digits.data y = digits.target print(X.shape) X_chi2 = SelectKBest(chi2, k=30).fit_transform(X, y) print(X_chi2.shape)
from sklearn.feature_selection import SelectPercentile from sklearn.datasets import load_digits digits = load_digits() X = digits.data y = digits.target print(X.shape) X_select_p = SelectPercentile(chi2, percentile=30).fit_transform(X, y) print(X_select_p.shape)
# f_classif过滤 from sklearn.feature_selection import SelectKBest, f_classif from sklearn.datasets import load_digits digits = load_digits() X = digits.data y = digits.target print(X.shape) X_f = SelectKBest(f_classif, k=20).fit_transform(X, y) print(X_f.shape)
# mutual_info_classif过滤 from sklearn.feature_selection import SelectKBest, mutual_info_classif from sklearn.datasets import load_digits digits = load_digits() X = digits.data y = digits.target print(X.shape) X_m = SelectKBest(mutual_info_classif, k=30).fit_transform(X, y) print(X_m.shape)
# 通过模型进行特征选择 from sklearn.datasets import load_digits from sklearn.feature_selection import SelectFromModel from sklearn.ensemble import RandomForestClassifier digits = load_digits() X = digits.data y = digits.target print(X.shape) rf = RandomForestClassifier(n_estimators=100) X_select_model = SelectFromModel(rf, threshold=0.01).fit_transform(X, y) print(X_select_model.shape)
# 包装法 from sklearn.feature_selection import RFE from sklearn.ensemble import RandomForestClassifier from sklearn.datasets import load_digits digits = load_digits() X = digits.data y = digits.target print(X.shape) rf = RandomForestClassifier(n_estimators=100) X_rfe = RFE(rf, n_features_to_select=30).fit_transform(X, y) print(X_rfe.shape)
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算