通俗易懂的机器学习——梯度上升主成分分析数学原理推导及解释

本文已参与「新人创作礼」活动

前言

梯度上升主成分分析也是一个常用来进行降维、降噪的操作,它通过变换坐标轴(实际上是数据的映射)使得数据直接的方差最大,即更容易划分

目的和原理浅析

获得主成分特征向量,在梯度上升主成分分析中求的是能够将原数据映射到方差更大的坐标轴上(有些书或视频也说移动坐标轴),而映射的方式可以是乘上一个映射方向的单位向量。

预处理

为了方便运算,首先要将数据进行预处理,这里做的预处理是均值零化,即:将所有数据减去均值。 x i = x i x ˉ x_i=x_i- \bar{x}

公式推导以及解释

目标

我们要得到的是方差最大的数据,即: m a x 1 n i = 1 n ( x p i x ˉ ) 2 max \frac{1}{n} \sum_{i=1}^n(x^i_p-\bar{x})^2 由于我们进行过数据的预处理。所以我们的目标就变为了: m a x 1 n i = 1 n ( x p i ) 2 max \frac{1}{n} \sum_{i=1}^n(x^i_p)^2

映射关系推导

假设xi要映射到新的坐标轴上 x i w = x i w c o s θ x^iw= \rvert x^i \lvert \cdot \rvert w \lvert cos\theta 在这里我们假设向量w为单位向量 则使之变为: x i w = x i c o s θ = x p i x p i 为变换后的目标数据) x^iw= \rvert x^i \lvert cos\theta=x^i_p(x^i_p为变换后的目标数据)

将映射关系带入

带入映射关系后我们的目标变为了 m a x 1 n i = 1 n ( x i w ) 2 max \frac{1}{n} \sum_{i=1}^n(x^iw)^2

梯度上升

构建一个函数

现在我们构建一个函数

= 1 n i = 1 n ( x 1 i w + x 2 i w + x 3 i w + x n i w ) 2 \\= \frac{1}{n} \sum_{i=1}^{n}(x^i_1w+x^i_2w+x^i_3w+ \cdot \cdot \cdot x^i_nw)^2

求导

下面我们开始对f(w)求导 f ( w ) = 1 n x T ( x w ) \nabla f(w)= \frac{1}{n}x^T(xw) 我们的问题就变成了使用上述式子进行梯度上升,接下来我们使用梯度上升的方式优化w,优化得到的w即为可以将数据转换到方差更大的坐标轴上的主成分

猜你喜欢

转载自juejin.im/post/7078083790697922567