机器学习系列(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

相关文章
|
15天前
|
机器学习/深度学习 传感器 运维
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
本文探讨了时间序列分析中数据缺失的问题,并通过实际案例展示了如何利用机器学习技术进行缺失值补充。文章构建了一个模拟的能源生产数据集,采用线性回归和决策树回归两种方法进行缺失值补充,并从统计特征、自相关性、趋势和季节性等多个维度进行了详细评估。结果显示,决策树方法在处理复杂非线性模式和保持数据局部特征方面表现更佳,而线性回归方法则适用于简单的线性趋势数据。文章最后总结了两种方法的优劣,并给出了实际应用建议。
50 7
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
|
6月前
|
机器学习/深度学习 算法 数据挖掘
机器学习之sklearn基础——一个小案例,sklearn初体验
机器学习之sklearn基础——一个小案例,sklearn初体验
165 6
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
特征工程在营销组合建模中的应用:基于因果推断的机器学习方法优化渠道效应估计
因果推断方法为特征工程提供了一个更深层次的框架,使我们能够区分真正的因果关系和简单的统计相关性。这种方法在需要理解干预效果的领域尤为重要,如经济学、医学和市场营销。
86 1
特征工程在营销组合建模中的应用:基于因果推断的机器学习方法优化渠道效应估计
|
6月前
|
机器学习/深度学习 算法
【阿旭机器学习实战】【30】二手车价格预估--KNN回归案例
【阿旭机器学习实战】【30】二手车价格预估--KNN回归案例
|
4月前
|
机器学习/深度学习 人工智能 数据处理
【人工智能】项目实践与案例分析:利用机器学习探测外太空中的系外行星
探测外太空中的系外行星是天文学和天体物理学的重要研究领域。随着望远镜观测技术的进步和大数据的积累,科学家们已经能够观测到大量恒星的光度变化,并尝试从中识别出由行星凌日(行星经过恒星前方时遮挡部分光线)引起的微小亮度变化。然而,由于数据量巨大且信号微弱,传统方法难以高效准确地识别所有行星信号。因此,本项目旨在利用机器学习技术,特别是深度学习,从海量的天文观测数据中自动识别和分类系外行星的信号。这要求设计一套高效的数据处理流程、构建适合的机器学习模型,并实现自动化的预测和验证系统。
90 1
【人工智能】项目实践与案例分析:利用机器学习探测外太空中的系外行星
|
3月前
|
机器学习/深度学习 人工智能 算法
利用机器学习预测股市趋势:一个实战案例
【9月更文挑战第5天】在这篇文章中,我们将探索如何使用机器学习技术来预测股市趋势。我们将通过一个简单的Python代码示例来演示如何实现这一目标。请注意,这只是一个入门级的示例,实际应用中可能需要更复杂的模型和更多的数据。
|
5月前
|
机器学习/深度学习 人工智能
8个特征工程技巧提升机器学习预测准确性
8个特征工程技巧提升机器学习预测准确性
121 6
8个特征工程技巧提升机器学习预测准确性
|
4月前
|
机器学习/深度学习 SQL 数据采集
"解锁机器学习数据预处理新姿势!SQL,你的数据金矿挖掘神器,从清洗到转换,再到特征工程,一网打尽,让数据纯净如金,模型性能飙升!"
【8月更文挑战第31天】在机器学习项目中,数据质量至关重要,而SQL作为数据预处理的强大工具,助力数据科学家高效清洗、转换和分析数据。通过去除重复记录、处理缺失值和异常值,SQL确保数据纯净;利用数据类型转换和字符串操作,SQL重塑数据结构;通过复杂查询生成新特征,SQL提升模型性能。掌握SQL,就如同拥有了开启数据金矿的钥匙,为机器学习项目奠定坚实基础。
46 0
|
4月前
|
机器学习/深度学习 数据采集 算法
如何使用机器学习神器sklearn做特征工程?
如何使用机器学习神器sklearn做特征工程?
|
4月前
|
机器学习/深度学习 存储 分布式计算
Hadoop与机器学习的融合:案例研究
【8月更文第28天】随着大数据技术的发展,Hadoop已经成为处理大规模数据集的重要工具。同时,机器学习作为一种数据分析方法,在各个领域都有着广泛的应用。本文将介绍如何利用Hadoop处理大规模数据集,并结合机器学习算法来挖掘有价值的信息。我们将通过一个具体的案例研究——基于用户行为数据预测用户留存率——来展开讨论。
342 0