链接:sklearn.manifold.TSNE
TSNE:是可视化高维数据的工具。它将数据点之间的相似性转换为联合概率,并尝试最小化低维嵌入和高维数据的联合概率之间的Kullback-Leibler差异。t-SNE的成本函数不是凸的,即使用不同的初始化,我们可以获得不同的结果。
调用代码:
from sklearn.manifold import TSNE
class sklearn.manifold.TSNE(n_components=2, *, perplexity=30.0, early_exaggeration=12.0, learning_rate=200.0, n_iter=1000, n_iter_without_progress=300, min_grad_norm=1e-07, metric=‘euclidean’, init=‘random’, verbose=0, random_state=None, method=‘barnes_hut’, angle=0.5, n_jobs=None, square_distances=‘legacy’)
n_componentsint, default=2: 嵌入空间的尺寸。
perplexityfloat, default=30.0:这种困扰与其他流形学习算法中使用的最近邻数有关。更大的数据集通常需要更大的困惑。考虑在5和50之间选择一个值。不同的值可能导致显著不同的结果。
early_exaggerationfloat, default=12.0:控制原始空间中的自然簇在嵌入空间中的紧密程度以及它们之间的空间大小。对于较大的值,自然簇之间的空间将在嵌入空间中更大。同样,这个参数的选择不是很关键。如果在初始优化时成本函数增加,则早期夸大因子或学习率可能过高。
n_iter_without_progressint, default=300:在我们中止优化之前没有进展的最大迭代数,在250个初始迭代之后使用。注意,每50次迭代才检查一次进度,所以这个值四舍五入到50的下一个倍数。
New in version 0.17: parameter n_iter_without_progress to control stopping criteria.
min_grad_normfloat, default=1e-7:如果梯度范数低于这个阈值,优化将停止。
metricstr or callable, default=’euclidean’:在计算特性数组中实例之间的距离时使用的度量。
如果metric是一个字符串,它必须是scipy.spatial.distance.pdist所允许的参数之一,或者是pair中列出的参数。如果度规是“预先计算的”,则假定X是一个距离矩阵。或者,如果metric是一个可调用的函数,则对每一对实例(行)调用它并记录结果值。可调用对象应该从X中取两个数组作为输入,并返回一个表示它们之间距离的值。默认是“欧几里得”,它被解释为平方欧几里得距离。
init{‘random’, ‘pca’} or ndarray of shape (n_samples, n_components), default=’random’:初始化的嵌入。可能的选项是’ random ‘,’ pca '和numpy数组的形状(n_samples, n_components)。PCA初始化不能与预先计算的距离一起使用,而且通常比随机初始化更全局稳定。
angle:float, default=0.5仅当meth