sklearn.manifold.locally_linear_embedding¶
sklearn.manifold.locally_linear_embedding(X, *, n_neighbors, n_components, reg=0.001, eigen_solver='auto', tol=1e-06, max_iter=100, method='standard', hessian_tol=0.0001, modified_tol=1e-12, random_state=None, n_jobs=None)
[源码]
对数据执行局部线性嵌入分析。
在用户指南中阅读更多内容。
参数 | 说明 |
---|---|
X | {array-like, NearestNeighbors} 以numpy数组或NearestNeighbors对象形式的样本数据shape = (n_samples, n_features) |
n_neighbors | integer 每个点要考虑的邻居数量。 |
n_components | integer 流形的坐标数。 |
reg | float 正则化常数,乘以距离的局部协方差矩阵的轨迹。 |
eigen_solver | string, {‘auto’, ‘arpack’, ‘dense’} ‘auto’:算法将尝试为输入数据选择最佳方法 |
arpack | use arnoldi iteration in shift-invert mode. 对于此方法,M可以是稠密矩阵,稀疏矩阵或一般线性式子。警告:由于某些问题,ARPACK可能不稳定。最好尝试几个随机种子以检查结果。 |
dense | use standard dense matrix operations for the eigenvalue 分解。对于此方法,M必须为数组或矩阵类型。对于大问题应避免使用此方法。 |
tol | float, optional 'arpack'方法的公差,如果eigen_solver =='dense'不使用。 |
max_iter | integer arpack求解器的最大迭代次数。 |
method | {‘standard’, ‘hessian’, ‘modified’, ‘ltsa’} |
standard | use the standard locally linear embedding algorithm. 参见参考文献[1] |
hessian | use the Hessian eigenmap method. This method requires n_neighbors> n_components *(1 +(n_components +1)/2。请参见参考文献[2] |
modified | use the modified locally linear embedding algorithm. 参见参考文献[3] |
ltsa | use local tangent space alignment algorithm 参见参考文献[4] |
hessian_tol | float, optional Hessian特征映射方法的公差。仅在method=='hessian'时使用 |
modified_tol | float, optional 修正的LLE方法的公差。仅在method=='modified'时使用 |
random_state | int, RandomState instance, default=None 当 solver =='arpack' 时确定随机数生成器。在多个函数调用之间传递int以获得可重复的结果。请参阅:term: Glossary <random_state> |
n_jobs | int or None, optional (default=None) 为邻居搜索运行的并行作业数。 None 除非在joblib.parallel_backend 环境中,否则表示1 。 undefined表示使用所有处理器。有关更多详细信息,请参见词汇表。 |
返回值 | 说明 |
---|---|
Y | array-like, shape [n_samples, n_components] 嵌入向量。 |
squared_error | float 嵌入向量的重建误差。相当于 norm(Y - W Y, 'fro')**2 , 其中W是重建权重。 |
参考文献
[1] Roweis, S. & Saul, L. Nonlinear dimensionality reduction by locally linear embedding. Science 290:2323 (2000).
[2] Donoho, D. & Grimes, C. Hessian eigenmaps: Locally linear embedding techniques for high-dimensional data. Proc Natl Acad Sci U S A. 100:5591 (2003).
[3] Zhang, Z. & Wang, J. MLLE: Modified Locally Linear Embedding Using Multiple Weights. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.70.382
[4] Zhang, Z. & Zha, H. Principal manifolds and nonlinear dimensionality reduction via tangent space alignment. Journal of Shanghai Univ. 8:406 (2004)