回顾上节内容
特征工程就是数据加工,数据加工的本质从统计的角度看是还原真实,找到真实分布率。从机器学习角度看是在此基础上是之更加符合模型。
需要先对对数据错误值(在不可改变数据源的情况下,基于现实近似于异常值(又包括了空缺值)),*但注意:异常值不一定是错误值,空缺值不一定是异常值。*需要理解,但在实际使用过程中考虑较少。至于原因由于已经在上节叙述了所以在此不做赘述。
剔除特征背后的逻辑——相关性分析
相对无效特征的剔除,用什么方法解决?
在这之前需要先对原理进行考虑。剔除无效特征,是针对于模型预测结果来说不重要的特征,为什么会不重要?两种可能,一是特征之间重合度高,作用可以近似忽略;二是特征和结果本身关联不大。
从原理可以得出一个结论,那就是需要分析特征间相关性及特征和真实结果的相关性。这里有个问题,那么在就机器学习领域来讲有必要分析因果关系吗?(因果关系这一概念属于相关性概念的一个子集,因果关系是基于相关性之上)回答这个问题之前,需要想一想我们剔除无效特征的目的是什么,其实是让模型更容易收敛和更准确。那么,到底有没有必要在相关性分析的基础上进行因果关系分析呢?事实上,因果关系似乎没那么必要,那样做可能效果会更好,因果关系在机器学习无效特征剔除上是一个非必选项。为了遵循机器学习“简单有效原理”,也称为奥卡姆剃刀原理(Occam’s Razor, Ockham’s Razor)“如无必要,勿增实体”。所以,当下问题转化为寻找相关性分析方法。即:
- 需要找到强正、强负相关的特征进行剔除其中之一以减少数据总量从而提高模型收敛速度;
- 对于真实结果和特征间无相关性的特征进行剔除,减少数据噪声。
相关性分析方法(1)_基于数理统计原理
相关性可以分为相关与不相关,往往不相关是很难判别的,因为可能是你根本没有找出它们的关系,并不能说明它们不相关(对应上述第二点内容是不易判断的,往往需要结合人为经验加以考虑,但依然有方法,主要涉及因果关系分析)。所以我们对于不相关的情况要谨慎考虑。在统计学上对于检验变量间相关性给出了一套理论,利用了样本统计量估计总体的近似理论。那就是统计方差、协方差及相关系数(person系数和spearman系数),通过分布的特征值差异和系数关系刻画相关性。
以下做一下简单梳理:
样本方差、标准差、协方差
对第k维特征的n个统计样本 A k = { a k ( 1 ) , a k ( 2 ) , ⋯ , a k ( n ) } A_k=\{a_k^{(1)},a_k^{(2)},\,\cdots,a_k^{(n)}\} Ak={ak(1),ak(2),⋯,ak(n)},第j维特征的n个统计样本 A j = { a j ( 1 ) , a j ( 2 ) , ⋯ , a j ( n ) } A_j=\{a_j^{(1)},a_j^{(2)},\cdots,a_j^{(n)}\} Aj={aj(1),aj(2),⋯,aj(n)}。即它们的统计均值分别是 A k ‾ = 1 n − 1 ∑ i = 1 n a k ( i ) \overline{A_k}=\frac{1}{n-1}\sum_{i=1}^{n}a_k^{(i)} Ak=n−11i=1∑nak(i)和 A j ‾ = 1 n − 1 ∑ i = 1 n a j ( i ) \overline{A_j}=\frac{1}{n-1}\sum_{i=1}^{n}a_j^{(i)} Aj=n−11i=1∑naj(i)
- 样本方差、样本标准差反映样本偏离样本总体水平(均值)的总体程度。对于上述两组特征的统计样本方差分别是(先看等式右边)
c o v ( A k , A k ) = ∑ i = 1 n ( a i − A k ‾ ) 2 n − 1 ⋯ ( 式 1 ) cov(A_k,A_k)=\frac{\sum_{i=1}^{n}{(a_i - \overline{A_k})}^2}{n-1}\space\space\space\space\space\space\space\space\space\space\cdots\space\space\space\space\space(式1) cov(Ak,Ak)=n−1∑i=1n(ai−Ak)2 ⋯ (式1)
c o v ( A j , A j ) = ∑ i = 1 n ( a j − A j ‾ ) 2 n − 1 ⋯ ( 式 2 ) cov(A_j,A_j)=\frac{\sum_{i=1}^{n}(a_j - \overline{A_j})^2}{n-1}\space\space\space\space\space\space\space\space\space\space\space\space\space\space\cdots\space\space\space\space\space(式2) cov(Aj,Aj)=n−1∑i=1n(aj−Aj)2 ⋯ (式2)
- 统计样本协方差反映为两个样本各自偏离其自身平均水平的总体平均程度,定义为
c o v ( A j , A k ) = ∑ i = 1 n ( a k − A k ‾ ) ( a j − A j ‾ ) n − 1 cov(A_j,A_k)=\frac{\sum_{i=1}^{n}{}(a_k - \overline{A_k})(a_j - \overline{A_j})}{n-1} cov(Aj,Ak)=n−1∑i=1n(ak−Ak)(aj−Aj)
观察式1和式2的等式左边,结合协方差定义公式,可以知道为什么有了标准差还需要方差的定义。标准差其实就可以反映偏离自身的平均水平的偏移程度。方差是特殊的协方差。
协方差可以判断两组特征样本的相关性吗?在一定程度可以,需要满足量纲统一。所以,在使用协方差对两组变量进行检验时,需要首先对各组样本进行标准化(就是利用公式得到均值和标准差),再进行协方差的计算。除此,还有一个相关系数法可以避免受量纲影响,细节如下。
相关系数
-
相关系数(一般用 ρ \rho ρ表示,下标表示两个特征统计量):person相关系数和spearman相关系数
person相关系数表达式为 ρ A j , A k = c o v ( A j , A k ) σ A j σ A k \rho_{A_j,A_k} = \frac{cov(A_j,A_k)}{\sigma_{A_j}\sigma_{A_k}} ρAj,Ak=σAjσAkcov(Aj,Ak)
其中 σ A j , σ A k \sigma_{A_j},\sigma_{A_k} σAj,σAk分别表示 A j A_j Aj和 A k A_k Ak的样本标准差(样本方差的开方就是样本标准差)。通过对公式的带入和变形,可以知道,其实质还是在对初始两组变量做标准化。在统计学方面存在这样一个说法而已,也就是将两步化为了一步,用了一个系数总体替代两部过程,巧妙地将标准差用在了里面,也是一个很重要的发现。所以在判断相关性方法上,还是要针对具体的业务问题数据进行初步考虑后,通过定性描述(作图)后初步判断存在某种线性关系(很关键)且独立(独立性检验方法,下一节总结),进一步使用理论定量的方法进行相关系数的方式衡量相关程度,最后确实是否进行剔除策略。spearman相关系数
又称为spearman等级相关系数,经常用希腊字母ρ表示。 它是衡量两个变量的依赖性的非参数指标。 它利用单调方程(值域在-1到1)评价两个统计变量的相关性。1
优点:不用知道统计样本分布情况也可使用主要有以下步骤:
- 假设都有 n n n个样本,数据特征 A j , A k A_j,A_k Aj,Ak从小到大进行排序得到等级 R j ( i ) , R k ( i ) ( i = 1 , 2 , ⋯ , n ) R_j^{(i)},R_k^{(i)}(i=1,2,\cdots,n) Rj(i),Rk(i)(i=1,2,⋯,n),定义等级(这里等级定义为数字方式,初始等级数字任意取,因为最后取的是等级差)
- 对应等级做差得到等级差: d i = R j ( i ) − R k ( i ) ( i = 1 , 2 , ⋯ , n ) d_i=R_j^{(i)}-R_k^{(i)}(i=1,2,\cdots,n) di=Rj(i)−Rk(i)(i=1,2,⋯,n)
- 利用spearman等级相关系数公式
ρ
=
1
−
6
∑
d
i
2
n
(
n
2
−
1
)
\rho=1-\frac{6 \sum d_{i}^{2}}{n\left(n^{2}-1\right)}
ρ=1−n(n2−1)6∑di2
可以观察到这个是个单调递增,值域为 [ − 1 , 1 ] [-1,1] [−1,1]的函数。当等级差为零即两组变量成完全线性关系时取极值。 - 相关性系数确定相不相关,因为我们前人已经得出在不同置信度下的相关性临界值。所以可以直接将结果对应查表进行相关性检验。(同独立性假设检验、分布检验同样的步骤即先假设,再计算,最后查表)当样本超过5000时可视为大样本,用Z分布检验查表。
关于假设检验内容较多,不宜在此展开,后续单独补充。
小结
相关性分析方法(1)_基于数理统计原理主要总结了基于数理统计的判定线性相关和相关等级方法,其中判定线性相关时person相关系数,需要注意独立性检验和线性定性判断(基于图统计);其中相关等级方法不用定性判断,直接定义等级计算等级相关系数再借助假设性检验判断。下节将从定性的角度对相关性分析方法进行总结。相关性分析方法(2)_基于图统计定性判断
Thanks for reading
参考链接:https://blog.youkuaiyun.com/Munger6/article/details/108408096