深度学习入门:用MNIST完成Autoencoder

简介:

Autoencoder基本是Deep Learning最经典的东西,也是入门的必经之路。Autoencoder是一种数据的压缩算法,其中数据的压缩和解压缩函数必须是数据相关的,有损的,从样本中自动学习的。在大部分提到自动编码器的场合,压缩和解压缩的函数是通过神经网络实现的。

在这里,我来给大家完成一个MNIST数据集的Autoencoder



首先下载MNIST数据,在这里友情提醒一下,MNIST的数据集因为某些原因,下载速度非常的慢,在这里推荐去THE MNIST DATABASE下载。下载完成后建一个MNIST_data的文件夹,放进去。



在这里提一下,为什么我们要将图片设置为28*28?

28*28的特征图大小可以防止输入的连接掉到边界之外,不导致梯度损失。

大家觉得自编码器可以在没有标签的时候学习到数据的有用表达。但是,自编码器并不是一个真正的Unsupervised Learning的算法,而是一个Self-Supervised Learning算法。并且,Self-Supervised Learning是Supervised Learning的一个部分,其标签产生自输入数据。

要获得一个自监督的模型,你需要想出一个靠谱的目标函数和一个损失函数。我们首先将Autoencoder用这些图片来训练,得到784长度的向量。同时这些数据集的图像已经完成了归一化,也就是说要么是一,要么是零。首先我们先建立一个单层ReLu隐藏层来完成一个很简单的Autoencoder,这一层是用来做压缩的。然后encoder就是输入层和隐藏层,decoder是隐藏层和输出层。这句话比较难理解,就是输入层进行输入,经中间的隐藏层来进行一些变换,隐藏层为encoder和decoder共有。而后至输出层得到结果,然而由于我们将图像正则化了,所以我们需要在输出层上加一个Sigmoid函数来获得结果。

对了,在这里解释一下为啥是784:







原文发布时间为:2017-08-03
本文作者:那只猫
本文来自云栖社区合作伙伴“ Python中文社区”,了解相关信息可以关注“ Python中文社区”微信公众号
相关文章
|
2月前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
1月前
|
机器学习/深度学习 人工智能 算法
深度学习入门:用Python构建你的第一个神经网络
在人工智能的海洋中,深度学习是那艘能够带你远航的船。本文将作为你的航标,引导你搭建第一个神经网络模型,让你领略深度学习的魅力。通过简单直观的语言和实例,我们将一起探索隐藏在数据背后的模式,体验从零开始创造智能系统的快感。准备好了吗?让我们启航吧!
92 3
|
2月前
|
机器学习/深度学习 人工智能 算法框架/工具
深度学习中的卷积神经网络(CNN)入门
【10月更文挑战第41天】在人工智能的璀璨星空下,卷积神经网络(CNN)如一颗耀眼的新星,照亮了图像处理和视觉识别的路径。本文将深入浅出地介绍CNN的基本概念、核心结构和工作原理,同时提供代码示例,带领初学者轻松步入这一神秘而又充满无限可能的领域。
|
3月前
|
机器学习/深度学习 PyTorch 算法框架/工具
深度学习入门案例:运用神经网络实现价格分类
深度学习入门案例:运用神经网络实现价格分类
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
软件工程师,入门下深度学习吧
软件工程师,入门下深度学习吧
70 9
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)入门与实践
【8月更文挑战第62天】本文以浅显易懂的方式介绍了深度学习领域中的核心技术之一——卷积神经网络(CNN)。文章通过生动的比喻和直观的图示,逐步揭示了CNN的工作原理和应用场景。同时,结合具体的代码示例,引导读者从零开始构建一个简单的CNN模型,实现对图像数据的分类任务。无论你是深度学习的初学者还是希望巩固理解的开发者,这篇文章都将为你打开一扇通往深度学习世界的大门。
|
3月前
|
机器学习/深度学习 自然语言处理 TensorFlow
课外阅读之深度学习如何入门?
课外阅读之深度学习如何入门?
57 0
|
3月前
|
机器学习/深度学习 自然语言处理 算法
深度学习如何入门?
深度学习入门的指南,包括准备基础知识、学习深度学习理论、实践操作、进阶学习、参与社区和不断实践与反思等步骤。
78 0
|
3月前
|
机器学习/深度学习 存储 自然语言处理
深度学习入门:循环神经网络------RNN概述,词嵌入层,循环网络层及案例实践!(万字详解!)
深度学习入门:循环神经网络------RNN概述,词嵌入层,循环网络层及案例实践!(万字详解!)
|
3月前
|
机器学习/深度学习 PyTorch API
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)

热门文章

最新文章

相关实验场景

更多