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


Python sklearn Isomap用法及代码示例


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

用法:

class sklearn.manifold.Isomap(*, n_neighbors=5, n_components=2, eigen_solver='auto', tol=0, max_iter=None, path_method='auto', neighbors_algorithm='auto', n_jobs=None, metric='minkowski', p=2, metric_params=None)

Isomap 嵌入。

通过等距映射进行非线性降维

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

参数

n_neighbors整数,默认=5

每个点要考虑的邻居数。

n_components整数,默认=2

流形的坐标数。

eigen_solver{‘auto’, ‘arpack’, ‘dense’},默认='自动'

‘auto’:尝试为给定问题选择最有效的求解器。

‘arpack’:使用 Arnoldi 分解来查找特征值和特征向量。

‘dense’:使用直接求解器(即 LAPACK)进行特征值分解。

tol浮点数,默认=0

收敛容差传递给 arpack 或 lobpcg。如果eigen_solver == ‘dense’,则不使用。

max_iter整数,默认=无

arpack 求解器的最大迭代次数。如果eigen_solver == ‘dense’,则不使用。

path_method{‘auto’, ‘FW’, ‘D’}, 默认=‘auto’

用于查找最短路径的方法。

‘auto’:尝试自动选择最佳算法。

‘FW’:Floyd-Warshall算法。

“D”:Dijkstra 算法。

neighbors_algorithm{‘auto’, ‘brute’,‘kd_tree’, ‘ball_tree’},默认='自动'

用于最近邻搜索的算法,传递给 neighbors.NearestNeighbors 实例。

n_jobsint 或无,默认=无

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

metricstr,或可调用,默认=”minkowski”

计算特征数组中实例之间的距离时使用的度量。如果 metric 是一个字符串或可调用的,它必须是 sklearn.metrics.pairwise_distances 为其 metric 参数允许的选项之一。如果 metric 是“precomputed”,X 被假定为一个距离矩阵并且必须是正方形。 X 可能是一个词汇表。

p整数,默认=2

来自 sklearn.metrics.pairwise.pairwise_distances 的 Minkowski 度量的参数。当 p = 1 时,这相当于使用 manhattan_distance (l1),而对于 p = 2,则使用 euclidean_distance (l2)。对于任意 p,使用 minkowski_distance (l_p)。

metric_params字典,默认=无

度量函数的附加关键字参数。

属性

embedding_类似数组,形状(n_samples,n_components)

存储嵌入向量。

kernel_pca_对象

KernelPCA 用于实现嵌入的对象。

nbrs_sklearn.neighbors.NearestNeighbors 实例

存储最近邻实例,包括BallTree 或 KDtree(如果适用)。

dist_matrix_类似数组,形状 (n_samples, n_samples)

存储训练数据的测地距离矩阵。

n_features_in_int

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

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

参考

1

特南鲍姆,J.B.;德席尔瓦,V。 & Langford, J.C. 非线性降维的全局几何框架。科学 290 (5500)

例子

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

相关用法


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