首席数据官

Hi, 请登录

在Python中使用PCA和t-SNE可视化高维数据集

【IT168 方案】任何与数据相关的挑战的第一步都是从研究数据本身开始的。例如,可以通过查看某些变量的分布或查看变量之间的潜在相关性来研究。

目前的问题是,很多数据集都有大量的变量。换句话说,它们是多维度的什么是网络安全数据可视化,数据沿着这些维度分布。这样的话,可视化地研究数据会变得很有挑战性,大多数时候甚至不可能手工完成。但是,研究数据时,可视化数据是非常重要的。因此,理解如何可视化高维数据集是关键,这可以使用降维技术来实现。这篇文章将重点介绍两种降维技术技术:PCA和t-SNE。

关于这两项技术,后面会详细介绍,现在,让我们先得到一些高维数据。

MNIST数据集

在本文中,我们将使用MNIST数据集。无需手动下载数据集,因为我们可以通过使用Scikit Learn获取数据集。

首先把所有的库都准备好。

然后开始加载数据

在Python中使用PCA和t-SNE可视化高维数据集

把矩阵和向量转换为Pandas数据框,这与R语言中使用的数据框非常相似,使我们更容易进行绘图。

为了避免在计算中使用全部70000个数据,所以我们将采用数据的随机子集。随机化很重要,因为数据集会按其标签排序,即前7000左右是零)。为了确保随机化,创建数字0-69999的随机排列,以便稍后为计算和数据可视化进行选择。

在Python中使用PCA和t-SNE可视化高维数据集

我们现在有了数据框和随机向量。先来检查一下这些数字,并为此生成30个随机图像。

现在可以开始考虑如何区分0和1、2等等。例如,如果您是邮局,这样的算法可以帮助您使用机器读取和分类手写信封,而不是让人类这样做。显然,现在我们有非常先进的方法来做到这一点,但是这个数据集仍然提供了一个非常好的例子,可以让我们看到降维的具体方法以及它们的工作情况。

这些图像基本上都是28×28像素,因此总共有784个“维度”,每个维度包含一个特定像素的值。

我们要做的是大幅减少维度数量,同时尽可能多地保留信息中的“变化”。接下来,让我们了解什么是主成分分析。

使用PCA降维

PCA是一种减少数据集维数的同时保留大部分信息的技术。它使用一些维度之间的相关性,并试图通过提供最少的变量,并尽可能地保留关于原始数据分布的最多信息。这个过程并不是简单的猜测,而是使用称为数据矩阵的特征值和特征向量进行计算。协方差矩阵的特征向量能够体现数据变化的主要方向,并且是数据集变化的最主要方向。

数据可视化_什么是网络安全数据可视化_数据新闻可视化

我们将使用PCA的Scikit-Learn实现这个计算过程。

首先从二维图和三维图开始,从原始的784维度生成前三个主要组成部分,并看到总数据集中有多少变化。

在Python中使用PCA和t-SNE可视化高维数据集

前两个组件大约占整个数据集变化的25%,这是否足以将不同的数据分开呢?创建第一个和第二个主成分的散点图,并用不同的颜色为每个不同类型的数据着色。如果可以的话,相同类型的数据将被聚集在一起,这意味着前两个主要组件实际上能反映关于特定数字类型的大量信息。

从图中我们可以看到,前两个组件确实包含着一些关于特定数据的信息,但是这样显然不足以将不同的数据分开。我们还可以用t-SNE技术来进行降维。接下来,我们来探索用t-SNE技术进行可视化数据集操作。

与3d版本的相同操作

t-SNE

t-SNE是另一种降维的技术,特别适用于高维数据集的可视化。与PCA相反,它不是一种数学技术,而是一种概率技术。 t-SNE的工作原理如下:

“t-SNE最小化了两个分布之间的差异:一个是度量输入对象成对相似性的分布什么是网络安全数据可视化,另一个是度量嵌入中相应低维点成对相似性的分布。”

本质上,这意味着它会查看输入到算法中的原始数据,并通过匹配两个分布来查看如何使用较少的维度来最佳地展示数据。但是它的方式并不简便,因此使用这种技术存在较多的限制。例如,在维度数据非常高的情况下,您可能需要在使用t-SNE之前应用另一种降维技术:

t-SNE的另一个缺点是,由于t-SNE在对象数N中是按比例平方缩放,因此其适用性仅限于只有几千个输入对象的数据集。除此之外,其过程会变得太慢而不实用,内存要求也会变高。

因此,在本文的其余部分中,我们将使用该算法的Scikit-Learn实现。

与上面的建议相反,我们将首先尝试在数据的实际维度上运行算法(784)。为了确保系统不会在内存和功耗或者时间方面产生负担,只使用前10000个样本来运行算法。为了方便稍后进行比较,我们还将在子集上再次运行PCA。

X

现在我们有了两个维度结果,接下来创建两个维度的散点

试看结束,如继续查看请付费↓↓↓↓
打赏0.5元才能查看本内容,立即打赏

来源【首席数据官】,更多内容/合作请关注「辉声辉语」公众号,送10G营销资料!

版权声明:本文内容来源互联网整理,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 jkhui22@126.com举报,一经查实,本站将立刻删除。

相关推荐

评论

  • 昵称 (必填)
  • 邮箱
  • 网址
二维码
评论