在内核 PCA(主成分分析)中,您首先选择一个所需的内核,使用它来找到您的矩阵将特征空间居中,找到其特征值和特征向量,然后将居中的内核矩阵乘以所需的特征向量对应于最大的特征值。
结果应该是将特征空间数据投影到低维子空间上。
据我所知,您将特征值除以原始数据点的数量以缩放它们。所以问题是,你选择的特征向量是否也需要缩放来乘以中心核矩阵,如果是,你怎么做?
在内核 PCA(主成分分析)中,您首先选择一个所需的内核,使用它来找到您的矩阵将特征空间居中,找到其特征值和特征向量,然后将居中的内核矩阵乘以所需的特征向量对应于最大的特征值。
结果应该是将特征空间数据投影到低维子空间上。
据我所知,您将特征值除以原始数据点的数量以缩放它们。所以问题是,你选择的特征向量是否也需要缩放来乘以中心核矩阵,如果是,你怎么做?
要在经典 PCA 中找到 PC,可以对中心数据矩阵(列中的变量)执行奇异值分解 ; 的列称为主成分(即将原始数据投影到协方差矩阵的特征向量上)。观察所谓的格拉姆矩阵有特征向量和特征值,所以另一个计算主成分的方法是通过各自特征值的平方根来缩放 Gram 矩阵的特征向量。
完全类比,这是一个计算内核主成分的完整算法:
选择一个在概念上是目标空间中的标量积的核函数
用计算 Gram/kernel 矩阵 K。
通过以下技巧使核矩阵居中:其中是一个矩阵,所有元素等于,并且是数据的数量点。
求中心核矩阵的特征向量和特征值。将每个特征向量乘以各自特征值的平方根。
完毕。这些是内核主要组件。
具体回答您的问题,我认为在步骤 4--5 中 不需要将特征向量或特征值按
一个很好的参考是原始论文:Scholkopf B、Smola A 和 Müller KR,内核主成分分析,1999 年。请注意,它以一种更复杂的方式呈现相同的算法:您应该找到的特征向量,然后将它们乘以(正如您在问题中所写的那样)。但是将矩阵与其特征向量相乘会得到相同的特征向量,该特征向量按特征值缩放(根据定义)。