机器学习系列(6)_特征工程03碳排放小案例(下)

简介: 机器学习系列(6)_特征工程03碳排放小案例

三、卡方检验



取三个特征的结果:

chivalue, pvalues_chi = chi2(X_fsvar,y)  
chivalue
cross_val_score(RFC(n_estimators=10,random_state=0),X_fschi,y,cv=3).mean()
chivalue, pvalues_chi = chi2(X_fsvar,y)  
chivalue
cross_val_score(RFC(n_estimators=10,random_state=0),X_fschi,y,cv=3).mean()

478b13d6463d4c13a769b9181ea0584c.png

取全部特征的结果:


四、F检验



# F检验 
from sklearn.feature_selection import f_classif 
F,pvalues_f=f_classif(X_fsvar,y)
F 
k=F.shape[0]-(pvalues_f>0.05).sum() 
X_fsF=SelectKBest(f_classif,k=k).fit_transform(X_fsvar,y)
cross_val_score(RFC(n_estimators=10,random_state=0),X_fsF,y,cv=3).mean()

f71270843e6949aba70294f4ba46adb8.png

from sklearn.feature_selection import f_classif
F,pvalues_f=f_classif(X,y)
F
k=F.shape[0]-(pvalues_f>0.05).sum() 
X_fsF=SelectKBest(f_classif,k=k).fit_transform(X,y)
cross_val_score(RFC(n_estimators=10,random_state=0),X_fsF,y,cv=9).mean()

c9e10b11035146f5b81b9a9c41c295ad.png


五、互信息法



# 4互信息法 
from sklearn.feature_selection import mutual_info_classif as MIC
result=MIC(X_fsvar,y)
k=result.shape[0]-sum(result<=0)
X_fsmic=SelectKBest(MIC,k=k).fit_transform(X_fsvar,y)
cross_val_score(RFC(n_estimators=10,random_state=0),X_fsmic,y,cv=5).mean()

2c4c3e6dde684943a3f3ae653d64cf6e.png


六、嵌入法



# 6 嵌入法
from sklearn.feature_selection import SelectFromModel
from sklearn.ensemble import RandomForestClassifier as RFC 
RFC_=RFC(n_estimators=10,random_state=0)
X_embedded=SelectFromModel(RFC_,threshold=0.005).fit_transform(X,y)
X_embedded.shape # 结果:可以减去两个特征,剩下7个
#通过学习曲线获取阈值
import numpy as np
import matplotlib.pyplot as plt
RFC_.fit(X,y).feature_importances_
threshold = np.linspace(0,(RFC_.fit(X,y).feature_importances_).max(),20)
score = []
for i in threshold:
    X_embedded = SelectFromModel(RFC_,threshold=i).fit_transform(X,y)
    once = cross_val_score(RFC_,X_embedded,y,cv=5).mean()
    score.append(once)
plt.plot(threshold,score)
plt.show()

52559a26b503466f99f694226f3017d6.png

X_embedded=SelectFromModel(RFC_,threshold=0.005).fit_transform(X,y)
X_embedded.shape 
cross_val_score(RFC_,X_embedded,y,cv=5).mean()

将正确率高的学习曲线进行放大

# 通过学习曲线选取
#liyupudata
score2 = []
for i in np.linspace(0,0.112,20):
    X_embedded = SelectFromModel(RFC_,threshold=i).fit_transform(X,y)
    once = cross_val_score(RFC_,X_embedded,y,cv=5).mean()
    score2.append(once)
plt.figure(figsize=[20,5])
plt.plot(np.linspace(0,0.112,20),score2)
plt.xticks(np.linspace(0,0.112,20))
plt.show()

cf143992643945c19e29b8a79e745616.png


七、包装法



#liyupudata
from sklearn.feature_selection import RFE
RFC_ = RFC(n_estimators =100,random_state=0) 
selector = RFE(RFC_, n_features_to_select=9, step=50).fit(X, y)  
selector.support_.sum() 
selector.ranking_  
X_wrapper = selector.transform(X)
cross_val_score(RFC_,X_wrapper,y,cv=5).mean()

66553a3ad21a4b1eb4bd059c3b112929.png

# 通过学习曲线选取
#liyupudata
score = []
for i in range(1,9,1):
    X_wrapper = RFE(RFC_,n_features_to_select=i, step=50).fit_transform(X,y)
    once = cross_val_score(RFC_,X_wrapper,y,cv=5).mean()
    score.append(once)
plt.figure(figsize=[20,5])
plt.plot(range(1,9,1),score)
plt.xticks(range(1,9,1))
plt.show()

fbdf704d26084b49b029db38ce734fb5.png

相关文章
|
2天前
|
机器学习/深度学习 数据采集 算法
数据分享|R语言机器学习预测案例合集:众筹平台、机票折扣、糖尿病患者、员工满意度
数据分享|R语言机器学习预测案例合集:众筹平台、机票折扣、糖尿病患者、员工满意度
|
6天前
|
机器学习/深度学习 数据采集 搜索推荐
机器学习中的特征工程:提升模型性能的关键步骤
【5月更文挑战第3天】特征工程是提升机器学习模型性能的关键,涉及从原始数据中提取、选择和创造特征。它能提高模型预测准确率,简化模型复杂度,增强泛化能力。常用技术包括特征选择(Filter、Wrapper、Embedded方法)、特征构造(组合、多项式、文本特征提取)和特征变换(标准化、归一化、离散化)。通过优化特征工程,可找到最佳特征组合,提升模型性能。
|
8天前
|
机器学习/深度学习 数据采集 TensorFlow
【Python机器学习专栏】使用Python进行图像分类的实战案例
【4月更文挑战第30天】本文介绍了使用Python和深度学习库TensorFlow、Keras进行图像分类的实战案例。通过CIFAR-10数据集,展示如何构建和训练一个卷积神经网络(CNN)模型,实现对10个类别图像的识别。首先安装必要库,然后加载数据集并显示图像。接着,建立基本CNN模型,编译并训练模型,最后评估其在测试集上的准确性。此案例为初学者提供了图像分类的入门教程,为进一步学习和优化打下基础。
|
9天前
|
机器学习/深度学习 Python
【Python机器学习专栏】时间序列数据的特征工程
【4月更文挑战第30天】本文探讨了时间序列数据的特征工程,强调其在捕捉季节性、揭示趋势、处理异常值和提升模型性能中的重要性。介绍了滞后特征、移动窗口统计特征、时间戳特征、频域特征和波动率特征等方法,并提供了Python实现示例。通过有效特征工程,可提高时间序列分析的准确性和预测可靠性。
|
9天前
|
机器学习/深度学习 PyTorch TensorFlow
【Python 机器学习专栏】特征工程在机器学习中的重要性
【4月更文挑战第30天】特征工程是机器学习的关键,涉及数据转换为有意义特征的过程,对模型性能、数据理解、泛化能力和计算效率至关重要。其技术包括特征提取、选择和构建,以及归一化。Python的Pandas、Scikit-learn等工具为特征工程提供支持。面对数据复杂性、相关性和动态性挑战,需灵活应对。通过案例分析展示了特征工程如何提升模型性能,强调了其在构建高效机器学习模型中的作用。
|
13天前
|
机器学习/深度学习 数据采集 自然语言处理
探索机器学习中的维度诅咒与特征工程
【4月更文挑战第26天】 在高维数据空间航行,机器学习模型常受维度诅咒之困扰,遭遇过拟合、计算成本增加和解释性下降等问题。本文通过深入分析维度诅咒的成因,探讨了特征工程作为解决之道的关键策略,包括特征选择、特征提取及特征转换等技术。我们将透过实例说明如何巧妙运用这些方法,以降低数据维度,提升模型性能,同时保持结果的可解释性。
|
23天前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型:从特征工程到模型调优
【4月更文挑战第16天】 在数据驱动的时代,机器学习已成为解决复杂问题的关键工具。本文旨在分享一套实用的技术流程,帮助读者构建高效的机器学习模型。我们将重点讨论特征工程的重要性、选择合适算法的策略,以及通过交叉验证和网格搜索进行模型调优的方法。文章的目标是为初学者提供一个清晰的指南,同时为有经验的实践者提供一些高级技巧。
|
1月前
|
机器学习/深度学习 Serverless
机器学习入门案例-鸢尾花
机器学习入门案例-鸢尾花
21 0
|
1月前
|
机器学习/深度学习 算法 数据挖掘
构建高效机器学习模型:从特征工程到模型调优
【4月更文挑战第4天】在数据驱动的时代,构建一个高效的机器学习模型是解决复杂问题的关键。本文将深入探讨特征工程的重要性,并分享如何通过自动化技术进行特征选择与构造。接着,我们将讨论不同的机器学习算法及其适用场景,并提供模型训练、验证和测试的最佳实践。最后,文章将展示如何使用网格搜索和交叉验证来微调模型参数,以达到最优性能。读者将获得一套完整的指南,用以提升机器学习项目的预测准确率和泛化能力。
|
2月前
|
机器学习/深度学习 数据采集 算法
构建高效机器学习模型:从特征工程到模型调优
【2月更文挑战第23天】 在机器学习领域,构建一个高效的模型不仅需要选择合适的算法,还涉及到一系列的数据处理和模型优化过程。本文将深入探讨如何通过特征工程提升数据质量,以及如何调整模型参数以达到最优性能。我们将讨论包括数据清洗、特征选择、维度缩减在内的特征工程技术,并探索网格搜索、随机搜索和贝叶斯优化等模型调优方法。通过实践案例分析,本文旨在为读者提供一套系统的方法论,以指导他们在构建机器学习模型时做出明智的决策。
31 0

热门文章

最新文章