由于最近需要,自己整理了部分数据分析理论知识框架,内容借鉴《阿里云天池大赛赛题解析》资料和相关博主(链接中的文章和代码)的介绍,系统归纳了数据分析理论部分,代码可以借鉴文章中的链接(链接为其它博主的劳动成果)
火力发电的基本原理是:燃料在燃烧时加热水生成蒸汽,蒸汽压力推动汽轮机旋转,然后汽轮机带动发电机旋转,产生电能。在这一系列的能量转化中,影响发电效率的核心是锅炉的燃烧效率,即燃料燃烧加热水产生高温高压蒸汽。锅炉的燃烧效率的影响因素很多,包括锅炉的可调参数,如燃烧给量,一二次风,引风,返料风,给水水量;以及锅炉的工况,比如锅炉床温、床压,炉膛温度、压力,过热器的温度等。
经脱敏后的锅炉传感器采集的数据(采集频率是分钟级别),根据锅炉的工况,预测产生的蒸汽量。
V0—V37 :38个字段是特征变量;target:是目标变量;测试集数据中没有target变量,由训练得到。
预测结果以均方差MSE作为评判标准:
M S E = S S E n = 1 n ∑ i = 1 n w i ( y i − y ^ i ) 2 \mathrm{MSE}=\frac{\mathrm{SSE}}{n}=\frac{1}{n} \sum_{i=1}^{n} w_{i}\left(y_{i}-\hat{y}_{i}\right)^{2} MSE=nSSE=n1i=1∑nwi(yi−y^i)2
(1)回归预测:线性回归LR,岭回归RR,LASSO回归,决策树回归DTR,梯度提升树回归GBDTR。
(2)分类预测:
(3)解题思路:根据 V0—V37 这 38 个字段是特征变量来预测蒸汽量的数值,因为预测值为**“连续型数值变量”故此为回归预测**。
数据:变量类型,数据类型等方面进行分析。
(1)输入变量与输出变量;
(2)数据类型;
(3)连续变量与类别变量
(1)单变量:连续型的单变量统计数据中心分布趋势和变量分布;类别单变量分析频次和频率(占比);
(2)双变量:发现变量间的关系,主要分为三类:连续性与连续性(相关系数);类别型与类别型(卡方检验);类别型与连续型(主要查看连续变量在类别变量上的数据分布);
(1)缺失值产生的原因:
机械原因;
人为原因;
(2)类别:
完全随机丢失:对于所有观察结果丢失的概率相同(抛硬币);
随机丢失:值随机丢失且丢失的概率会影响其它输入变量;
不可预测因子导致:数据值不是随机丢失,而是受一切潜在因子的影响;
自身缺陷:发生损失的概率受缺失值本身的影响(收入的高低);
(3)缺失值的处理方法
偏离整个样本总体的观测值称为异常值(outliner)
(1)产生的原因和影响
各类误差导致增加错误方差,降低模型拟合能力,影响基本假设。
(2)异常值的检测
(3)异常值处理方法
(1)目的
由于变量取值不均匀,需要对其做变换,落在合理区间。
(2)转换方法
(1)目的
基于现有变量生成,和目标变量具有较好的相关性,辅助进行数据分析。
(2)变量生成的方法
创建派生变量:使用函数或不同的方法从现有变量创建新的变量;
创建哑变量:将类型变量转换为数值型变量;
这部分就是利用 Python 进行分析,具体参考:
https://www.freesion.com/article/7343207108/
https://www.heywhale.com/mw/project/60058a1c7ed5ab0015f02442
查看数据基本信息;
可视化数据分布:箱型图、异常数据分布图、直方图、Q-Q图、KDE(核密度估计)分布图、线性回归关系图;
查看特征变量的相关性:计算相关系数、画出热力图、根据相关系数筛选特征变量(寻找与target变量相关的特征变量,相关系数大于0.5);
数据变换:归一化(最大最小归一化)数据、特征变量进行Box-Cox变换,将数据转换为符合正态分布 ==> 分位图 ==> 线性关系;
特征工程:从原始数据提取特征的过程叫特征工程,主要包括:特征使用、特征获取、特征处理、特征选择和特征监控。
重要性:数据和特征决定了机器学习的上限,模型和算法只是逼近这个上限而已。
处理:特征工程的处理流程为:首先去掉无用特征,接着去掉冗余特征,其次就是特征转换,生成新的特征,然后对特征进行处理,简言之就是数据预处理、特征处理、特征选择等。
(1)特征处理的方法包括:标准化、区间缩放法、归一化、定量特征二值化、定性特征哑编码、缺失值处理和数据转换。
标准化:按照特征矩阵,将其转换为符合正态分布。
x ′ = x − X ˉ S x^{\prime}=\frac{x-\bar{X}}{S} x′=Sx−Xˉ
区间缩放法:按照最大最小值进行缩放。
x ′ = x − M i n M a x − M i n x^{\prime}=\frac{x-{Min}}{Max-Min} x′=Max−Minx−Min
x ′ = x ∑ j m x [ j ] 2 x^{\prime}=\frac{x}{\sqrt{\sum_{j}^{m} x[j]^{2}}} x′=∑jmx[j]2x
归一化与标准化的使用场景:
对输出结果范围有要求,则用归一化;
数据较为稳定,不存在极端值,则用归一化;
数据存在较多得异常值和噪声时,则用标准化;
定量特征二值化:设定一个阈值,大于这个阈值为 1, 小于为 0。
定性特征哑编码
哑变量即虚拟变量,取值为 0 或 1 ,用来反映某个变量的不同属性。将类别变量转换为哑变量(虚拟变量)的过程就是哑编码。
降维是指采用某种映射方法,将高维向量空间的数据点映射到低维空间。特征降维可以减少冗余信息造成误差,提高识别精度。
实现方法:
方差选择法:计算各个特征的方差,然后根据阈值选择方差大的特征;
相关系数法:各个特征对目标值的相关系数及相关系数的 P 值;
卡方检验法:定性变量间的相关性,统计量:
x 2 = ∑ ( A − E ) 2 E x^{2}=\sum \frac{(A-E)^{2}}{E} x2=∑E(A−E)2
最大信息系数法(MIC):定性变量间的相关性, 统计量:
I ( X ; Y ) = ∑ x ∈ y ∑ y ∈ x p ( x , y ) log p ( x , y ) p ( x ) p ( y ) I(X ; Y)=\sum_{x \in y} \sum_{y \in x} p(x, y) \log \frac{p(x, y)}{p(x) p(y)} I(X;Y)=x∈y∑y∈x∑p(x,y)logp(x)p(y)p(x,y)
递归消除特征法(RFE):基于模型进行多轮训练,消除权值系数进行选择;
基于模型的选择:基于惩罚项和树模型(GBDT);
线性降维:
异常值分析,最大最小归一化,查看数据分布,特征相关性,特征降维,多重共线性,PCA处理
这部分还在准备中,马上就完成。