当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn SpectralEmbedding用法及代码示例


本文简要介绍python语言中 sklearn.manifold.SpectralEmbedding 的用法。

用法:

class sklearn.manifold.SpectralEmbedding(n_components=2, *, affinity='nearest_neighbors', gamma=None, random_state=None, eigen_solver=None, n_neighbors=None, n_jobs=None)

用于非线性降维的频谱嵌入。

形成由指定函数给出的亲和矩阵,并将谱分解应用于相应的图拉普拉斯算子。结果转换由每个数据点的特征向量值给出。

注意:拉普拉斯特征图是这里实现的实际算法。

在用户指南中阅读更多信息。

参数

n_components整数,默认=2

投影子空间的维度。

affinity{‘nearest_neighbors’, ‘rbf’, ‘precomputed’, ‘precomputed_nearest_neighbors’} 或可调用,默认='nearest_neighbors'
如何构建亲和矩阵。
  • ‘nearest_neighbors’:通过计算最近邻图来构造亲和矩阵。
  • ‘rbf’:通过计算径向基函数(RBF)内核来构造亲和矩阵。
  • ‘precomputed’ :将 X 解释为预先计算的亲和度矩阵。
  • ‘precomputed_nearest_neighbors’:将X解释为预先计算的最近邻的稀疏图,并通过选择n_neighbors最近邻来构造亲和矩阵。
  • 可调用:使用传入的函数作为亲和力,该函数接受数据矩阵(n_samples,n_features)并返回亲和力矩阵(n_samples,n_samples)。
gamma浮点数,默认=无

rbf 内核的内核系数。如果没有,gamma 将设置为 1/n_features。

random_stateint、RandomState 实例或无,默认=无

伪随机数生成器,用于 eigen_solver == 'amg' 时 lobpcg 特征向量分解的初始化,以及 K-Means 初始化。使用 int 使结果在调用之间具有确定性(请参阅术语表)。

注意

使用 eigen_solver == 'amg' 时,还需要使用 np.random.seed(int) 修复全局 numpy 种子以获得确定性结果。有关详细信息,请参阅https://github.com/pyamg/pyamg/issues/139

eigen_solver{‘arpack’, ‘lobpcg’, ‘amg’},默认=无

要使用的特征值分解策略。 AMG 需要安装 pyamg。它可以在非常大、稀疏的问题上更快。如果无,则使用'arpack'

n_neighbors整数,默认=无

nearest_neighbors 图形构建的最近邻居数。如果没有,n_neighbors 将设置为 max(n_samples/10, 1)。

n_jobs整数,默认=无

要运行的并行作业数。 None 表示 1,除非在 joblib.parallel_backend 上下文中。 -1 表示使用所有处理器。有关详细信息,请参阅词汇表。

属性

embedding_ndarray 形状(n_samples,n_components)

训练矩阵的频谱嵌入。

affinity_matrix_ndarray 形状(n_samples,n_samples)

Affinity_matrix 从样本构造或预先计算。

n_features_in_int

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

拟合期间看到的特征名称。仅当 X 具有全为字符串的函数名称时才定义。

n_neighbors_int

有效使用的最近邻居数。

参考

例子

>>> from sklearn.datasets import load_digits
>>> from sklearn.manifold import SpectralEmbedding
>>> X, _ = load_digits(return_X_y=True)
>>> X.shape
(1797, 64)
>>> embedding = SpectralEmbedding(n_components=2)
>>> X_transformed = embedding.fit_transform(X[:100])
>>> X_transformed.shape
(100, 2)

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.manifold.SpectralEmbedding。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。