特征工程 | 特征选择、特征降维

目录

  • 一. 特征选择
    • 1. 方差选择法
    • 2. 相关系数法
    • 3. 卡方检验
  • 二. 特征降维
    • 1. LDA(线性判别分析法)
    • 2. PCA(主成分析法)

一. 特征选择

特征选择的目的是从原有特征中找出主要特征,原始特征可能包含冗余或无关变量(或称特征、属性、指标等)

  • 手工

  • 过滤

     按照发散性或者相关性对各个特征进行评分,设定阈值或者待选择阈值的个数,从而选择特征;常用方法:
    

1. 方差选择法

先计算各个特征属性的方差值,然后根据阈值,获取方差大于阈值的特征

2. 相关系数法

先计算各个特征属性对于目标值的相关系数以及阈值K,然后获取 K个相关系数最大的特征属性

如果y是连续值,一般用相关系数
如果y是离散值,一般用卡方检验

F值:特征和目标变量之间的关系是否显著,是一个统计指标F值越大,表示特征和目标变量之间的相关性越强相关系数:特征和目标变量之间线性关系的强度和方向,可以是正相关、负相关或无关取值范围为[-1,1]:绝对值越大,表示相关性越强,符号表示相关性的方向F值与相关系数比较:
F值反映特征和目标变量之间的关系是否显著
相关系数反映特征和目标变量之间的线性关系的强度和方向在特征选择中,通常使用:
F值作为评价函数,选择与目标变量相关性较强的特征
相关系数作为评价指标,评价每个特征与目标变量之间的关系

3. 卡方检验

统计样本的实际观测值与理论推断值之间的偏离程度

	如果卡方值越大,二者偏差程度越大如果卡方值越小,二者偏差越小若两个值完全相等时,卡方值就为0,表明理论值完全符合

PS:针对分类变量

二. 特征降维

特征选择与特征降维是两种不同的处理方式:

	特征选择:原始的4条特征中保留2条特征降维:原始的4条特征综合后得到全新的2条

1. LDA(线性判别分析法)

LDA的全称是Linear Discriminant Analysis,将带上标签的数据(点),通过投影的方法,投影到维度更低的空间中,让映投影后的样本具有最好的分类性能,即“投影后类内方差最小,类间方差最大

LDA是有监督学习算法

在这里插入图片描述
LDA算法的整体思想:求一个旋转向量 w ⃗ \vec{w} w ,将数据 x ⃗ \vec{x} x 投影到一维
y = w ⃗ T ⋅ x ⃗ y = \vec{w}^{T}\cdot \vec{x} y=w Tx

投影后,存在一个阈值 y 0 y_{0} y0
y ≥ y 0 y\ge y_{0} yy0,属于 C 1 C_{1} C1
y < y 0 y< y_{0} y<y0,属于 C 2 C_{2} C2

假设 C 1 C_{1} C1类有 N 1 N_{1} N1个点, C 2 C_{2} C2类有 N 2 N_{2} N2个点,那么投影前的类内均值为:
{ m ⃗ 1 = 1 N 1 ∑ i = 1 N 1 x ⃗ i m ⃗ 2 = 1 N 2 ∑ i = 1 N 2 x ⃗ i \left\{\begin{array}{l} \vec{m}_{1}=\frac{1}{N_{1}} \sum_{i=1}^{N_{1}} \vec{x}_{i} \\ \\ \vec{m}_{2}=\frac{1}{N_{2}} \sum_{i=1}^{N_{2}} \vec{x}_{i} \end{array}\right. m 1=N11i=1N1x im 2=N21i=1N2x i

投影后的类内均值和松弛度分别为:
{ m 1 = w ⃗ T ⋅ m ⃗ 1 m 2 = w ⃗ T ⋅ m ⃗ 2 \left\{\begin{array}{l} m_{1}=\vec{w}^{T} \cdot \vec{m}_{1} \\ \\ m_{2}=\vec{w}^{\mathrm{T}} \cdot \vec{m}_{2} \end{array}\right. m1=w Tm 1m2=w Tm 2

{ s 1 2 = ∑ i = 1 N 1 ( y i − m 1 ) 2 s 2 2 = ∑ i = 1 N 2 ( y i − m 2 ) 2 \left\{\begin{array}{l} s_{1}^{2}=\sum_{i=1}^{N_{1}}\left(y_{i}-m_{1}\right)^{2} \\ \\ s_{2}^{2}=\sum_{i=1}^{N_{2}}\left(y_{i}-m_{2}\right)^{2} \end{array}\right. s12=i=1N1(yim1)2s22=i=1N2(yim2)2

松弛度:松弛度是样本松散程度的度量。值越大,越分散

对于松散度 s 2 s^{2} s2除以N就是方差

此时,目标函数可以定义为:
J ( w ⃗ ) = ( m 2 − m 1 ) 2 s 1 2 + s 2 2 J(\vec{w})=\frac{\left(m_{2}-m_{1}\right)^{2}}{s_{1}^{2}+s_{2}^{2}} J(w )=s12+s22(m2m1)2
m 2 − m 1 m_{2}-m_{1} m2m1值越大,则说明两个类别距离较远

s 1 2 + s 2 2 s_{1}^{2}+s_{2}^{2} s12+s22值越小,说明两个类对各自均值相对集中

公式推导:

( m 2 − m 1 ) 2 \left(m_{2}-m_{1}\right)^{2} (m2m1)2

= ( w ⃗ T ⋅ m ⃗ 2 − w ⃗ T ⋅ m ⃗ 1 ) 2 =\left(\vec{w}^{T} \cdot \vec{m}_{2}-\vec{w}^{T} \cdot \vec{m}_{1}\right)^{2} =(w Tm 2w Tm 1)2

= ( w ⃗ T ⋅ ( m ⃗ 2 − m ⃗ 1 ) ) 2 =\left(\vec{w}^{T} \cdot\left(\vec{m}_{2}-\vec{m}_{1}\right)\right)^{2} =(w T(m 2m 1))2

= ( ( m ⃗ 2 − m ⃗ 1 ) T ⋅ w ⃗ ) 2 =\left(\left(\vec{m}_{2}-\vec{m}_{1}\right)^{T} \cdot \vec{w}\right)^{2} =((m 2m 1)Tw )2

= ( ( m ⃗ 2 − m ⃗ 1 ) T ⋅ w ⃗ ) T ( ( m ⃗ 2 − m ⃗ 1 ) T ⋅ w ⃗ ) =\left(\left(\vec{m}_{2}-\vec{m}_{1}\right)^{T} \cdot \vec{w}\right)^{T}\left(\left(\vec{m}_{2}-\vec{m}_{1}\right)^{T} \cdot \vec{w}\right) =((m 2m 1)Tw )T((m 2m 1)Tw )

= ( w ⃗ T ⋅ ( m ⃗ 2 − m ⃗ 1 ) ) ( ( m ⃗ 2 − m ⃗ 1 ) T ⋅ w ⃗ ) =\left(\vec{w}^{T} \cdot\left(\vec{m}_{2}-\vec{m}_{1}\right)\right)\left(\left(\vec{m}_{2}-\vec{m}_{1}\right)^{T} \cdot \vec{w}\right) =(w T(m 2m 1))((m 2m 1)Tw )

= w ⃗ T ⋅ ( m ⃗ 2 − m ⃗ 1 ) ⋅ ( m ⃗ 2 − m ⃗ 1 ) T ⋅ w ⃗ =\vec{w}^{T} \cdot\left(\vec{m}_{2}-\vec{m}_{1}\right) \cdot\left(\vec{m}_{2}-\vec{m}_{1}\right)^{T} \cdot \vec{w} =w T(m 2m 1)(m 2m 1)Tw


S b = ( m ⃗ 2 − m ⃗ 1 ) ⋅ ( m ⃗ 2 − m ⃗ 1 ) T S_{b}=(\vec{m}_{2}-\vec{m}_{1}) \cdot(\vec{m}_{2}-\vec{m}_{1})^{T} Sb=(m 2m 1)(m 2m 1)T

得到: ( m 2 − m 1 ) 2 = w ⃗ T ⋅ S b ⋅ w ⃗ \left(m_{2}-m_{1}\right)^{2}=\vec{w}^{T} \cdot S_{b} \cdot \vec{w} (m2m1)2=w TSbw

同理,得到: s 1 2 + s 2 2 = w ⃗ T ⋅ S w ⋅ w ⃗ s_{1}^{2}+s_{2}^{2}=\vec{w}^{T} \cdot S_{w} \cdot \vec{w} s12+s22=w TSww

其中 S b 、 S w S_{b}、S_{w} SbSw均已知

因此:
J ( w ⃗ ) = w ⃗ T ⋅ S b ⋅ w ⃗ w ⃗ T ⋅ S w ⋅ w ⃗ J(\vec{w})=\frac{\vec{w}^{T} \cdot S_{b} \cdot \vec{w}}{\vec{w}^{T} \cdot S_{w} \cdot \vec{w}} J(w )=w TSww w TSbw

求导公式推导:

∂ J ( w ⃗ ) ∂ w ⃗ \frac{\partial J(\vec{w})}{\partial \vec{w}} w J(w )

= ( w ⃗ T ⋅ S b ⋅ w ⃗ w ⃗ T ⋅ S w ⋅ w ⃗ ) ′ =\left(\frac{\vec{w}^{T} \cdot S_{b} \cdot \vec{w}}{\vec{w}^{T} \cdot S_{w} \cdot \vec{w}}\right)^{\prime} =(w TSww w TSbw )

= ( w ⃗ T ⋅ S b ⋅ w ⃗ ) ′ ( w ⃗ T ⋅ S b ⋅ w ⃗ ) − ( w ⃗ T ⋅ S w ⋅ w ⃗ ) ′ ( w ⃗ T ⋅ S w ⋅ w ⃗ ) ( w ⃗ T ⋅ S w ⋅ w ⃗ ) 2 =\frac{\left(\vec{w}^{T} \cdot S_{b} \cdot \vec{w}\right)^{\prime}\left(\vec{w}^{T} \cdot S_{b} \cdot \vec{w}\right)-\left(\vec{w}^{T} \cdot S_{w} \cdot \vec{w}\right)^{\prime}\left(\vec{w}^{T} \cdot S_{w} \cdot \vec{w}\right)}{\left(\vec{w}^{T} \cdot S_{w} \cdot \vec{w}\right)^{2}} =(w TSww )2(w TSbw )(w TSbw )(w TSww )(w TSww )

= 2 S b w ⃗ ( w ⃗ T ⋅ S b ⋅ w ⃗ ) − 2 S w w ⃗ ( w ⃗ T ⋅ S w ⋅ w ⃗ ) ( w ⃗ T ⋅ S W ⋅ w ⃗ ) 2 =\frac{2 S_{b} \vec{w}\left(\vec{w}^{T} \cdot S_{b} \cdot \vec{w}\right)-2 S_{w} \vec{w}\left(\vec{w}^{T} \cdot S_{w} \cdot \vec{w}\right)}{\left(\vec{w}^{T} \cdot S_{W} \cdot \vec{w}\right)^{2}} =(w TSWw )22Sbw (w TSbw )2Sww (w TSww )

令导数为0,得到:
S b w ⃗ ( w ⃗ T ⋅ S b ⋅ w ⃗ ) = S w w ⃗ ( w ⃗ T ⋅ S w ⋅ w ⃗ ) S_{b} \vec{w}\left(\vec{w}^{T} \cdot S_{b} \cdot \vec{w}\right)=S_{w} \vec{w}{\left(\vec{w}^{T} \cdot S_{w} \cdot \vec{w}\right)} Sbw (w TSbw )=Sww (w TSww )
因为 w ⃗ T ⋅ S w ⋅ w ⃗ \vec{w}^{T} \cdot S_{w} \cdot \vec{w} w TSww w ⃗ T ⋅ S b ⋅ w ⃗ \vec{w}^{T} \cdot S_{b} \cdot \vec{w} w TSbw 是标量,所以上式的含义是: S b w ⃗ S_{b} \vec{w} Sbw S w w ⃗ S_{w} \vec{w} Sww 同方向
即: S b w ⃗ = λ S w w ⃗ S_{b} \vec{w}=\lambda S_{w} \vec{w} Sbw =λSww

因为 S b = ( m ⃗ 2 − m ⃗ 1 ) ⋅ ( m ⃗ 2 − m ⃗ 1 ) T S_{b}=(\vec{m}_{2}-\vec{m}_{1}) \cdot(\vec{m}_{2}-\vec{m}_{1})^{T} Sb=(m 2m 1)(m 2m 1)T

这里证明 S b S_{b} Sb为对称矩阵,则:

S b T S_{b}^{T} SbT
= [ ( m ⃗ 2 − m ⃗ 1 ) ⋅ ( m ⃗ 2 − m ⃗ 1 ) T ] T =[ (\vec{m}_{2}-\vec{m}_{1}) \cdot(\vec{m}_{2}-\vec{m}_{1})^{T}]^{T} =[(m 2m 1)(m 2m 1)T]T

= ( m ⃗ 2 − m ⃗ 1 ) T ⋅ ( m ⃗ 2 − m ⃗ 1 ) = (\vec{m}_{2}-\vec{m}_{1})^{T} \cdot(\vec{m}_{2}-\vec{m}_{1}) =(m 2m 1)T(m 2m 1)

= S b =S_{b} =Sb

同理,也可以证明 S w S_{w} Sw为对称矩阵

对于 S b w ⃗ = ( m ⃗ 2 − m ⃗ 1 ) ⋅ ( m ⃗ 2 − m ⃗ 1 ) T w ⃗ S_{b}\vec{w}=(\vec{m}_{2}-\vec{m}_{1}) \cdot(\vec{m}_{2}-\vec{m}_{1})^{T}\vec{w} Sbw =(m 2m 1)(m 2m 1)Tw
因为 ( m ⃗ 2 − m ⃗ 1 ) T w ⃗ (\vec{m}_{2}-\vec{m}_{1})^{T}\vec{w} (m 2m 1)Tw 是标量,所以上式的含义是: S b w ⃗ S_{b} \vec{w} Sbw m ⃗ 2 − m ⃗ 1 \vec{m}_{2}-\vec{m}_{1} m 2m 1 同方向
即: S b w ⃗ = λ ( m ⃗ 2 − m ⃗ 1 ) S_{b} \vec{w} = \lambda(\vec{m}_{2}-\vec{m}_{1}) Sbw =λ(m 2m 1)

也就是说 w ⃗ = S w − 1 λ ( m ⃗ 2 − m ⃗ 1 ) \vec{w} = S_{w}^{-1}\lambda(\vec{m}_{2}-\vec{m}_{1}) w =Sw1λ(m 2m 1)

这里对于 w w w的求解,最终变为求解每个类的均值和方差

2. PCA(主成分析法)

让映射后的样本具有更大的发散性,PCA是无监督的学习算法

主成分分析(PCA)的思路是:
将多个具有相关性的特征综合为少数几个有代表性的特征,它们既能够代表原始特征的绝大多数信息,组合后的特征又不相关;
通过减少特征的数量(即降维)达到了降低问题复杂性,又尽可能少地减少数据的特征损失的目的

简单说:找出数据里最主要的方面,用数据里最主要的方面来代替原始数据

在这里插入图片描述
简化版本的PCA降维的思路是:

  • 寻找样本的主方向,将所有的m个样本投影到某直线L上,得到 m 个位于直线L上的点;计算这m个投影点的方差,我们认为方差最大的直线方向是主方向

比如:图中绿线所在的方向

	解释是样本点在这个直线上的投影能尽可能的分开,因为重叠就有信息消失

假设存在一个数据集(只有特征值)
在这里插入图片描述
此时,我们的任务是:

	要找到一个投影直线L,使得所有的数据投影到该直线上的方差最大

在开始公式推导前,我们先来放几条概念

  • 首先,什么是基?
    坐标(3,2)之所以为(3,2)是因为我们确定了一个坐标系,换句话说就是确定了空间中的一组基,即(1,0)和(0,1)
    在这里插入图片描述

    如果基坐标发生变化,对应得(3,2)坐标也相应发生变化:
    以下图蓝色坐标系为例子:
    首先,这组基可以是 ( 1 2 , 1 2 ) \left(\frac{1}{\sqrt{2}},\frac{1}{\sqrt{2}}\right) (2 1,2 1) ( − 1 2 , 1 2 ) \left(-\frac{1}{\sqrt{2}}, \frac{1}{\sqrt{2}}\right) (2 1,2 1)
    然后我们计算出(3,2)映射到新坐标系下的值:
    ( 1 / 2 1 / 2 − 1 / 2 1 / 2 ) ( 3 2 ) = ( 5 / 2 − 1 / 2 ) \left(\begin{array}{cc} 1 / \sqrt{2} & 1 / \sqrt{2} \\ -1 / \sqrt{2} & 1 / \sqrt{2} \end{array}\right)\left(\begin{array}{l} 3 \\ 2 \end{array}\right)=\left(\begin{array}{c} 5 / \sqrt{2} \\ -1 / \sqrt{2} \end{array}\right) (1/2 1/2 1/2 1/2 )(32)=(5/2 1/2 )
    因此,蓝色的坐标系中,红色的向量坐标为 ( 5 / 2 , − 1 / 2 ) (5 / \sqrt{2},-1 / \sqrt{2}) (5/2 ,1/2 )
    在这里插入图片描述

对基的概念有一定了解之后,我们来进一步阐述PCA的具体操作思路:

	找到一组基(主成分)使得所有的数据变换为这组基上的坐标表示之后,方差值尽可能的大

而PCA找到的主成分应尽量保证无关联性,即:组基互不相关;那么对于寻找一组互不相关的基,PCA的实际做法是:

	先选择一个方向基,让数据投影到这个基上的方差最大然后在第一个方向基正交的方向上选择第二个方向基,使得数据投影到这个基上的方差最大随后在第一二个方向基都正交的方向上选择第三个方向基...依次选择下去,就可以保证方向基之间是互相正交的,也可以保证方差最大了
  • 方差:表示的一个变量之间数据之间的波动程度
    σ 2 = 1 m ∑ ( x − μ ) 2 \sigma^{2} =\frac{1}{m} \sum(x-\mu )^{2} σ2=m1(xμ)2

  • 协方差:表示的两个变量之间的相关程度
    C O v ( a , b ) = 1 m − 1 ∑ i = 1 m ( a i − μ a ) ( b i − μ b ) COv(a,b) = \frac{1}{m-1}\sum_{i=1}^{m}(a_{i}-\mu_{a})(b_{i}-\mu_{b}) COv(a,b)=m11i=1m(aiμa)(biμb)

    假设存在大量样本点,对每个样本点进行均值化处理,即均值为0,可以得到:
    C O v ( a , b ) = 1 m ∑ i = 1 m a i b i COv(a,b) = \frac{1}{m}\sum_{i=1}^{m}a_{i}b_{i} COv(a,b)=m1i=1maibi

    如果想让两个基没有相关性,就要保证他们的协方差为0.

下面,我们开始推导:

假设存在矩阵
X = [ a 1 a 2 . . . a n b 1 b 2 . . . b n ] X=\begin{bmatrix} a_{1}& a_{2} & ...&a_{n} \\ & & & \\ b_{1}& b_{2} & ... &b_{n} \end{bmatrix} X= a1b1a2b2......anbn
那么,对矩阵内积可以得到(即:协方差矩阵公式)
1 m X X T = [ 1 m ∑ i = 1 m a i 2 1 m ∑ i = 1 m a i b i 1 m ∑ i = 1 m a i b i 1 m ∑ i = 1 m b i 2 ] = [ C o v ( a , a ) C o v ( a , b ) C o v ( a , b ) C o v ( b , b ) ] \frac{1}{m}XX^{T}=\begin{bmatrix} \frac{1}{m}\sum_{i=1}^{m}a_{i}^{2} & \frac{1}{m}\sum_{i=1}^{m}a_{i}b_{i} \\ \\ \frac{1}{m}\sum_{i=1}^{m}a_{i}b_{i} & \frac{1}{m}\sum_{i=1}^{m}b_{i}^{2} \end{bmatrix} =\begin{bmatrix} Cov(a,a) & Cov(a,b)\\ \\ Cov(a,b) & Cov(b,b) \end{bmatrix} m1XXT= m1i=1mai2m1i=1maibim1i=1maibim1i=1mbi2 = Cov(a,a)Cov(a,b)Cov(a,b)Cov(b,b)

上述公式我们可以看到:

	主对角线为两个特征的方差副对角线为两个特征之间的协方差同时,矩阵为对称矩阵

此时,我们的目标就变成了:

	特征之间的协方差为0:可以通过协方差矩阵相似对角化实现方差尽量最大:协方差矩阵对角化之后,把对角线上的元素从大到小排列

这里我们先来推导原矩阵与基变换后矩阵协方差矩阵的关系:
D = 1 m Y Y T = 1 m ( P X ) ( P X ) T = 1 m P X X T P T = P ( 1 m X X T ) P T = P C P T D = \frac{1}{m}YY^{T}=\frac{1}{m}(PX)(PX)^{T} =\frac{1}{m}PXX^{T}P^{T} =P(\frac{1}{m}XX^{T})P^{T}=PCP^{T} D=m1YYT=m1(PX)(PX)T=m1PXXTPT=P(m1XXT)PT=PCPT

公式解释:
X:原始数据矩阵
C:原始数据矩阵对应的协方差矩阵为,即 1 m X X T \frac{1}{m}XX^{T} m1XXT
P:一组基矩阵(按行组成)
Y:X对P做基变换后的数据
D:Y 的协方差矩阵

P C P T = Λ = ( λ 1 λ 2 . . . λ n ) PCP^{T}=\Lambda =\begin{pmatrix} \lambda _{1}& & & \\ & \lambda _{2} & & \\ & & ...& \\ & & &\lambda _{n} \end{pmatrix} PCPT=Λ= λ1λ2...λn

因此,我们要找的 P 是能让原始协方差矩阵对角化的 P

  • 协方差矩阵对角化:
    通过变换让协方差矩阵变成除对角线外的其它元素为0, 并且对角线上的元素按从大到小的顺序排列
  • 实对称矩阵: 一个n行m列的实对称矩阵一定可以找到n个单位的正交特征向量 E = ( e 1 , e 2 , . . . , e n ) E=(e_{1},e_{2},...,e_{n}) E=(e1,e2,...,en)
    E C E T = Λ = ( λ 1 λ 2 . . . λ n ) ECE^{T}=\Lambda =\begin{pmatrix} \lambda _{1}& & & \\ & \lambda _{2} & & \\ & & ...& \\ & & &\lambda _{n} \end{pmatrix} ECET=Λ= λ1λ2...λn

其中 Λ \Lambda Λ为对角矩阵,其对角元素为各特征向量对应的特征值

至此我们找到了让原始协方差矩阵对角化的 P,即 P = E T P=E^{T} P=ET
只要把特征值从大到小,对应的特征向量从上到下排列,则用前K行组成的矩阵乘以原始矩阵X, 就得到了我们需要的降维后的数据矩阵Y


而对于变量间协方差为 0 且变量内方差尽可能大的问题,可以转化为最优化问题利用拉格朗日乘子法来给予推导

样本点 x i x_{i} xi在基 w \mathrm{w} w下的坐标为: ( x i , w ) = x i T w \left(x_{i}, w\right)=x_{i}^{T} w (xi,w)=xiTw,于是我们有方差:

D ( x ) D(x) D(x)

= 1 m ∑ i = 1 m ( x i T w ) 2 =\frac{1}{m} \sum_{i=1}^{m}\left(x_{i}^{T} w\right)^{2} =m1i=1m(xiTw)2

= 1 m ∑ i = 1 m ( x i T w ) T ( x i T w ) =\frac{1}{m} \sum_{i=1}^{m}\left(x_{i}^{T} w\right)^{T}\left(x_{i}^{T} w\right) =m1i=1m(xiTw)T(xiTw)

= 1 m ∑ i = 1 m w T x i x i T w =\frac{1}{m} \sum_{i=1}^{m} w^{T} x_{i} x_{i}^{T} w =m1i=1mwTxixiTw

= w T ( 1 m ∑ i = 1 m x i x i T ) w =w^{T}\left(\frac{1}{m} \sum_{i=1}^{m} x_{i} x_{i}^{T}\right) w =wT(m1i=1mxixiT)w

我们看到 1 m ∑ i = 1 m x i x i T \frac{1}{m} \sum_{i=1}^{m} x_{i} x_{i}^{T} m1i=1mxixiT 就是原样本的协方差,我们另这个矩阵为 Λ \Lambda Λ ,于是我们有:

{ max ⁡ { w T Λ w } s.t.  w T w = 1 \left\{\begin{array}{r} \max \left\{w^{T} \Lambda w\right\} \\ \text { s.t. } w^{T} w=1 \end{array}\right. {max{wTΛw} s.t. wTw=1

求约束条件下的极值问题, 我们直接用拉格朗日公式:

L ( w ) = w T Λ w − λ ( w T w − 1 ) \boldsymbol{L}(\boldsymbol{w})=\boldsymbol{w}^{\mathrm{T}} \Lambda \boldsymbol{w}-\lambda\left(\boldsymbol{w}^{\mathrm{T}} \boldsymbol{w}-1\right) L(w)=wTΛwλ(wTw1)

对其求 w \boldsymbol{w} w 的导数:

d L ( w ) d w = Λ w − λ w \frac{\mathrm{d} \boldsymbol{L}(\boldsymbol{w})}{\mathrm{d} \boldsymbol{w}}=\Lambda\boldsymbol{w}-\lambda \boldsymbol{w} dwdL(w)=Λwλw

令其为 0 , 得到
Λ w = λ w \Lambda\boldsymbol{w}=\lambda \boldsymbol{w} Λw=λw

此时,方差为:
D ( x ) = w T Λ w = λ w T w = λ D(x)=w^{T} \Lambda w=\lambda w^{T} w=\lambda D(x)=wTΛw=λwTw=λ

至此,对于PCA要找到一个投影直线L,使得所有的数据投影到该直线上的方差最大:

  • x投影后的方差就是协方差矩阵的特征值
  • 投影后的最大方差就是协方差矩阵最大的特征值
  • 最佳投影方向就是最大特征值所对应的特征向量
  • 次佳就是第二大特征值对应的特征向量以此类推

感谢阅读🌼
如果喜欢这篇文章,记得点赞👍和转发🔄哦!
有任何想法或问题,欢迎留言交流💬,我们下次见!
本文相关代码存放位置
    【特征工程操作练习2

祝愉快🌟!


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/773599.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

共享旅游卡是怎么一回事?600字讲解

在当今的旅游行业中&#xff0c;有一种创新的旅游服务方式正悄然兴起。它通过互联网等先进技术的运用&#xff0c;为游客提供了全方位的旅行支持&#xff0c;从出行到住宿&#xff0c;从餐饮到景点门票&#xff0c;一应俱全。这种服务模式为游客带来了前所未有的便捷与舒适&…

C# CSV 文件读取的三种方式分析

1 、文件流 字符串分割&#xff08;“&#xff0c;”&#xff09;&#xff0c;缺点&#xff1a;数据中如果有“&#xff0c;”&#xff0c;会出现分割错误。 public DataTable readCsvSql(string filepath) {FileStream fs new FileStream(filePath, FileMode.Open, FileAcc…

二刷代码随想录——单调栈day59

文章目录 前言单调栈知识点 单调栈的特点一、503. 下一个更大元素 II二、42. 接雨水总结 前言 一个本硕双非的小菜鸡&#xff0c;备战24年秋招&#xff0c;计划二刷完卡子哥的刷题计划&#xff0c;加油&#xff01; 二刷决定精刷了&#xff0c;于是参加了卡子哥的刷题班&#…

门店稽查的主要涵盖范围

先有需求再有目标&#xff0c;门店稽查也是如此&#xff0c;当品牌有线下终端的查价、上架率、竞品调研等的需求&#xff0c;则需要安排神秘访员进行上门稽查&#xff0c;整个过程可以分为明访和暗访&#xff0c;稽查方式的不同&#xff0c;对于稽查的结果会有差异&#xff0c;…

HangZhou Java Journey P1

Java程序运行时类加载机制 下面是对这个流程的详细说明&#xff1a; JVM启动&#xff1a;当Java程序开始执行时&#xff0c;JVM首先启动。JVM的启动涉及到操作系统级别的进程创建和资源分配。 Bootstrap ClassLoader&#xff1a;JVM启动后&#xff0c;首先会初始化Bootstrap …

[深度学习]yolov8+pyqt5搭建精美界面GUI设计源码实现五

【简单介绍】 依托先进的目标检测算法YOLOv8与灵活的PyQt5界面开发框架&#xff0c;我们倾力打造出了一款集直观、易用与功能强大于一体的目标检测GUI界面软件。通过深度融合YOLOv8在目标识别领域的出色性能与PyQt5的精美界面设计&#xff0c;我们成功推出了一款高效且稳定的软…

电脑开机0x0000007B蓝屏怎么办?

电脑开机0x0000007B蓝屏怎么办啊?相信很多用户的电脑都有遇到过蓝屏的问题,最近有用户电脑一开机就蓝屏,并且显示0x0000007B错误代码,原本想通过安全模式进行修复,结果发现安全模式进不去,不知道该怎么解决。这可能与我们的内存或硬盘有关,尝试设置一下硬盘模式,看看是…

R语言随机抽取数据,并作两组数据间t检验,并保存抽取的数据,并绘制boxplot

前提&#xff1a;接着上述R脚本输出的seed结果来选择应该使用哪个seed比较合理&#xff0c;上个R脚本名字&#xff1a; “5utr_计算ABD中Ge1和Lt1的个数和均值以及按照TE个数小的进行随机100次抽样.R” 1.输入数据&#xff1a;“5utr-5d做ABD中有RG4和没有RG4的TE之间的T检验.c…

【标定】手动标定步骤

标定步骤&#xff08;简&#xff09;&#xff1a; 打开sscom&#xff0c;播放静态数据包。 然后打开udp_server和同目录下的calibration。 标定步骤&#xff08;具体&#xff09;&#xff1a; 输入原始数据 打点仪 把角点绝对坐标 保存下来 &#xff0c;放到calibration里&a…

基于51单片机的智能晾衣架设计资料(论文+源码+仿真)

目录 1、资料内容 2、整体架构流程 3、主控单元设计 4、LCD液晶显示 5、仿真图 6、程序 资料下载地址&#xff1a;基于51单片机的智能晾衣架设计资料(论文源码仿真) 1、资料内容 2、整体架构流程 为了实现晾衣自身能够完成对外界数据的采集与分析&#xff0c;集成控制环节我们采…

算法的本质

先来看看网上对“算法”的定义。 (1)百度百科&#xff1a;解题方案的准确而完整的描述。 老金疑问&#xff1a;把大象装冰箱的解题方案描述是算法吗&#xff1f;如果它是算法&#xff0c;那么宋老师当时一定是在进行算法表演了&#xff1f; (2)百度AI&#xff1a;为解决某一…

【多模态融合】SuperFusion 激光雷达与相机多层次融合 远距离高清地图预测 ICRA 2024

前言 本文介绍激光雷达与相机进行多层次融合&#xff0c;包括数据级融合、特征级融合和BEV级融合。 融合后的BEV特征可以支持不同的任务头&#xff0c;包括语义分割、实例编码和方向预测&#xff0c;最后进行后处理生成高清地图预测&#xff0c;它是来自ICRA 2024的。 会讲解…

【ZZULIOJ】1001: 整数a+b(Java)

目录 题目描述 输入 输出 样例输入 样例输出 code 题目描述 计算两个整数的和。 输入 输入两个整数&#xff0c;两个整数用空格隔开。 输出 输出为两个整数的和&#xff0c;单独占一行。 样例输入 1 1 样例输出 2 code import java.util.*;public class M…

集合系列(十五) -CopyOnWriteArrayList详解

一、摘要 在介绍 CopyOnWriteArrayList 之前&#xff0c;我们一起先来看看如下方法执行结果&#xff0c;代码内容如下&#xff1a; public static void main(String[] args) {List<String> list new ArrayList<String>();list.add("1");list.add(&quo…

[BT]BUUCTF刷题第8天(3.26)

第8天 Web [CISCN2019 华北赛区 Day2 Web1]Hack World 题目明确提示flag在flag表里的flag列&#xff0c;这里先尝试1 返回&#xff1a;你好&#xff0c;glzjin想要一个女朋友。 再尝试1&#xff0c;返回bool(false) 到这里就感觉是布尔盲注的题目类型了&#xff08;虽然我没…

Java方法返回类型详解

文章目录 在Java编程语言中&#xff0c;方法&#xff08;函数&#xff09;的返回类型可以非常多样&#xff0c;主要包括以下几类&#xff1a; 1.无返回值类型&#xff1a; 使用 void 关键字表示&#xff0c;这类方法不返回任何值&#xff0c;主要用于执行某种操作&#xff0c;如…

EtherCAT转RS232网关在风电领域的应用

开疆智能EtherCAT转RS232网关在风电领域的应用主要体现在以下几个方面&#xff1a; 1.数据采集与传输&#xff1a;在风力发电设备中&#xff0c;传感器和执行器的数据采集和传输至关重要。EtherCAT转RS232网关可以将风力发电设备中的RS232通信协议转换为EtherCAT协议&#xff0…

港澳青年看祖国—千名青年创业家内地暨江港青年交流活动在江举行

为聚焦“一点两地”全新定位&#xff0c;助力纵深推进新阶段粤港澳大湾区建设&#xff0c;3月22日&#xff0c;江门市委统战部、团市委、市青联联合香港深水埗区青年发展及公民教育委员会、愿景基金会、香港青年创业家总商会举办千名青年创业家内地行暨江港青年交流活动&#x…

网络安全威胁

目录 <威胁> 1.网络硬件设备和线路的安全威胁 2.网络系统和软件的安全威胁 3.环境的安全威胁 4.网络管理人员和网络使用人的安全意识威胁 <措施> 1、物理安全措施 2、访问控制措施 3、网络通信安全措施包括建立物理安全的传输媒介&#xff0c;以及对传输数…

【小黑送书—第十四期】>>重磅升级——《Excel函数与公式应用大全》(文末送书)

今天给大家带来AI时代系列书籍&#xff1a;《Excel 2019函数与公式应用大全》全新升级版&#xff0c;Excel Home多位微软全球MVP专家打造&#xff0c;精选Excel Home海量案例&#xff0c;披露Excel专家多年研究成果&#xff0c;让你分分钟搞定海量数据运算&#xff01; 由北京…