可视化MNIST:关于降维的探讨(1)

该文章整理翻译自http://colah.github.io/posts/2014-10-Visualizing-MNIST/


众所周知,我们人类在二维和三维上能够理性的进行思考,通过努力,我们可以从第四维来思考。但是机器学习经常要求我们使用成千上万个维度——或者数万,或者数百万!即使是非常简单的事情,当你在非常高的维度上做的时候,也会变得难以理解。
这时,就需要一些工具的辅助。高手已经建立了工具来帮助我们。有一个完整的、发展良好的领域,称为降维,它实现了将高维数据转换成低维数据的技术。关于高维数据可视化的相关课题也做了大量工作。
这些技术就是我们需要的基本构建块,特别是如果我们希望进行可视化机器学习和深入学习。
通过可视化和更直接地观察实际发生的事情,我们可以更深入、更直接地理解神经网络。
因此,我们的首要任务是熟悉降维。要做到这一点,我们需要一个数据集来测试这些技术。

1. MNIST

MNIST是一种简单的计算机视觉数据集。它由28×28像素的手写数字图像组成,如:
这里写图片描述
每一个MNIST数据点,每一个图像,都可以被看作是一个数字数组,将每一个像素填充为黑色,如这里写图片描述可能会有点像数字1:
这里写图片描述
由于每个图像都有28×28个像素,所以我们得到了一个28×28的数组。我们可以将每个数组变为28×28=784维向量。矢量的每个分量是介于0和1之间的值,描述像素的强度。因此,我们通常认为MNIST是784维向量的集合。
并不是所有784维空间中的所有向量都是MNIST数据。这个空间的典型点是非常不同的!为了对一个典型点有点感觉,我们可以随机挑选几个点,并检查

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
PCA(Principal Component Analysis)是一种常用的降维方法,它可以将高维的数据转换成低维的数据,同时保留原始数据的主要特征。 在对MNIST数据集进行降维时,我们首先需要对数据进行预处理,例如对每个像素值进行标准化处理,使其均值为0,方差为1。然后,我们将数据输入PCA模型中。PCA模型会计算出一组特征向量和对应的特征值,特征向量表示数据中的主要方向,特征值表示数据在对应特征向量上的重要程度。 我们可以根据特征值的大小来选择保留多少个主要特征向量。通常,我们选择前K个特征向量,其中K是我们预先设定的维度。这样,我们可以将原始的高维数据转换成K维的数据,实现数据降维。 通过对MNIST数据集进行PCA降维,可以达到以下几个目的: 1. 减少数据的维度,降低计算和存储的复杂性。原始的MNIST数据集包含784维的特征(每个样本是28x28的像素矩阵),而PCA可以将数据降到更低维度,例如50维,从而减少需要处理的特征数量。 2. 保留了数据的主要特征。通过选择保留较大特征值对应的特征向量,PCA可以保留数据中最重要的信息,从而在降维的同时尽量减少信息损失。 3. 可视化数据。通过降维后的数据,我们可以更容易地对数据进行可视化,例如绘制散点图、热力图等,从而更好地理解数据的分布和结构。 需要注意的是,降维后的数据可能损失一部分细节信息,因此降维的合理性需要根据具体问题进行评估。同时,在PCA的应用中,我们还可以通过调整维度数量、选择其他降维方法(如LDA、t-SNE等)来进行对比和分析,以获得更好的降维效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值