Python用T-SNE非线性降维技术拟合和可视化高维数据iris鸢尾花、MNIST 数据

原文链接:http://tecdat.cn/?p=24002 T-distributed Stochastic Neighbor Embedding (T-SNE) 是一种可视化高维数据的工具。T-SNE 基于随机邻域嵌入,是一种非线性降维技术,用于在二维或三维空间中可视化数据。
Python API 提供T-SNE 方法可视化数据。在本教程中,我们将简要了解如何在 Python 中使用 TSNE 拟合和可视化数据。教程涵盖:

  1. 鸢尾花数据集TSNE拟合与可视化
  2. MNIST 数据集 TSNE 拟合和可视化
我们将从加载所需的库和函数开始。
import seaborn as sns import pandas as pd

鸢尾花数据集TSNE拟合与可视化 加载 Iris 数据集后,我们将获取数据集的数据和标签部分。
x = iris.data y = iris.target

然后,我们将使用 TSNE 类定义模型,这里的 n_components 参数定义了目标维度的数量。'verbose=1' 显示日志数据,因此我们可以检查它。
TSNE( verbose=1)

接下来,我们将在图中可视化结果。我们将在数据框中收集输出组件数据,然后使用“seaborn”库的 scatterplot() 绘制数据。在散点图的调色板中,我们设置 3,因为标签数据中有 3 种类型的类别。
df = p.Dtame() df\["\] = y df\["cm"\] =z\[:,0\] df\[cop"\] = z\[,\]plot(hue=dfytlst() patte=ns.cor_ptt("hls", 3), dat=df)

Python用T-SNE非线性降维技术拟合和可视化高维数据iris鸢尾花、MNIST 数据
文章图片

MNIST 数据集 TSNE 拟合和可视化 接下来,我们将把同样的方法应用于更大的数据集。MNIST手写数字数据集非常合适,我们可以使用Keras API的MNIST数据。我们只提取数据集的训练部分,因为这里用TSNE来测试数据就足够了。TSNE需要太多的时间来处理,因此,我将只使用3000行。
x_train= xtrin\[:3000\] y_rin = ytrin\[:3000\] print(x_train.shape)

Python用T-SNE非线性降维技术拟合和可视化高维数据iris鸢尾花、MNIST 数据
文章图片

【Python用T-SNE非线性降维技术拟合和可视化高维数据iris鸢尾花、MNIST 数据】MNIST 是一个三维数据,我们将其变形为二维数据。
print(xtishpe) x\_nit = rshap(\_rin, \[xran.shap\[0\],xtrn.shap\[1\]*xrin.shap\[2\]) print(x_mit.shape)

Python用T-SNE非线性降维技术拟合和可视化高维数据iris鸢尾花、MNIST 数据
文章图片

在这里,我们有 784 个特征数据。现在,我们将使用 TSNE 将其投影到二维中,并在图中将其可视化。
z = tsne.fit(x_mnist) df\["comp1"\] = z\[:,0\] df\["comp2"\] = z\[:,1\]plot(huedf.tit(), ata=f)

Python用T-SNE非线性降维技术拟合和可视化高维数据iris鸢尾花、MNIST 数据
文章图片

该图显示了 MNIST 数据的二维可视化。颜色定义了目标数字及其在 2D 空间中的特征数据位置。
在本教程中,我们简要地学习了如何在 Python 中使用 TSNE 拟合和可视化数据。
Python用T-SNE非线性降维技术拟合和可视化高维数据iris鸢尾花、MNIST 数据
文章图片

最受欢迎的见解
1.matlab偏最小二乘回归(PLSR)和主成分回归(PCR)和主成分回归(PCR)")
2.R语言高维数据的主成分pca、 t-SNE算法降维与可视化分析
3.主成分分析(PCA)基本原理及分析实例基本原理及分析实例")
4.基于R语言实现LASSO回归分析
5.使用LASSO回归预测股票收益数据分析
6.r语言中对lasso回归,ridge岭回归和elastic-net模型
7.r语言中的偏最小二乘回归pls-da数据分析
8.r语言中的偏最小二乘pls回归算法
9.R语言线性判别分析(LDA),二次判别分析(QDA)和正则判别分析(RDA)

    推荐阅读