Answers:
我认为您的问题的答案是否定的:不可能。
标准PCA可用于特征选择,因为每个主成分都是原始特征的线性组合,因此可以看到哪些原始特征对最突出的主成分贡献最大,请参见此处:使用主成分分析(PCA)特征选择。
但是在内核PCA中,每个主要成分都是目标空间中特征的线性组合,例如,对于高斯内核(经常使用),目标空间是无限维的。因此,“负载”的概念对kPCA而言并没有真正的意义,实际上,内核主成分是直接计算的,完全绕开了主轴的计算(对于标准PCA在R中给出prcomp$rotation
),这要归功于所谓的内核把戏。请参见此处的示例:具有线性内核的内核PCA是否等效于标准PCA?更多细节。
所以不,这是不可能的。至少没有简单的方法。
以下示例(摘自kernlab参考手册)显示了如何访问内核PCA的各个组件:
data(iris)
test <- sample(1:50,20)
kpc <- kpca(~.,data=iris[-test,-5],kernel="rbfdot",kpar=list(sigma=0.2),features=2)
pcv(kpc) # returns the principal component vectors
eig(kpc) # returns the eigenvalues
rotated(kpc) # returns the data projected in the (kernel) pca space
kernelf(kpc) # returns the kernel used when kpca was performed
这回答了你的问题了吗?