决定内核 PCA 中内核参数的类型
Posted
技术标签:
【中文标题】决定内核 PCA 中内核参数的类型【英文标题】:deciding to the type of kernel parameter in Kernel PCA 【发布时间】:2018-09-30 09:30:29 【问题描述】:我是机器学习的新手,我正在尝试使用 k-means 聚类进行无监督学习(即使我读到 k-means 不能很好地处理分类数据)。我对分类变量进行了编码并尝试应用 kernel PCA,因为我有一个分类特征(它是性别)。我注意到内核参数有几个值,分别是'linear'、'poly'、'rbf'、'sigmoid'、'cosine'和'precomputed'。
我在互联网上进行了搜索,但找不到任何适当的解释。我也不确定 PCA 和 SVM 中内核的使用是否相同。有没有人可以解释它们是什么,何时应该使用它们和/或如何为我们的数据集选择正确的?由于我们无法可视化超过 3 维的数据集,我们将如何确定其形状以选择正确的参数?下面的部分代码只是为了显示参数的使用位置:
# Applying Kernel PCA
from sklearn.decomposition import KernelPCA
kpca = KernelPCA(n_components = 2, kernel = 'linear')
X = kpca.fit_transform(X)
提前谢谢你。
【问题讨论】:
重复交叉发布:datascience.stackexchange.com/q/30477/924 【参考方案1】:这些预定义内核也不支持混合数据。它们是向量内核。
Linear kennel 应该给出与非内核 PCA 相同的结果,只是要慢很多。
除了使用内核之外,与 SVM 没有太大关系。当您可以在监督分类任务中进行超参数优化时,像 rbf 这样的内核会更有意义。由于选择这样的参数很困难,因此除了玩具问题外,很好地利用 KernelPCA 也很困难。
【讨论】:
以上是关于决定内核 PCA 中内核参数的类型的主要内容,如果未能解决你的问题,请参考以下文章