Tensorflow学习之Autoencoder(二)图片降维并还原图片

本文是Tensorflow学习Autoencoder系列的第二篇,主要介绍如何使用Autoencoder进行图片降维并还原。通过编码器和解码器,将MNIST数据集的图片特征压缩再解压,对比原始与处理后的图片相似性。实现出的效果显示,第二行图片为经过自动编码器还原的结果。

三篇文章掌握Autoencoder:

1. Tensorflow学习之Autoencoder(一)

2. Tensorflow学习之Autoencoder(二)图片降维并还原图片

3. Tensorflow学习之Autoencoder(三)图片降维的结果展示

微信公众号

实现功能:

用Tensorflow实现Autoencoder,通过对图片特征的压缩并解压,将结果与原始数据进行对比,观察处理过后的数据是不是和原始数据很相像。(这里会用到MNIST数据)

 实现代码:

import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt

# Import MNIST data
from tensorflow.e
以下是使用深度学习图片进行得到矩阵的代码示例: ```python import numpy as np import tensorflow as tf from tensorflow.keras.layers import Input, Dense from tensorflow.keras.models import Model # 加载图片数据 x_train = np.load('x_train.npy') # 定义输入层 input_img = Input(shape=(784,)) # 定义编码层 encoded = Dense(128, activation='relu')(input_img) encoded = Dense(64, activation='relu')(encoded) encoded = Dense(32, activation='relu')(encoded) # 定义解码层 decoded = Dense(64, activation='relu')(encoded) decoded = Dense(128, activation='relu')(decoded) decoded = Dense(784, activation='sigmoid')(decoded) # 定义自编码器模型 autoencoder = Model(input_img, decoded) # 定义编码器模型 encoder = Model(input_img, encoded) # 编译自编码器模型 autoencoder.compile(optimizer='adam', loss='binary_crossentropy') # 训练自编码器模型 autoencoder.fit(x_train, x_train, epochs=50, batch_size=256, shuffle=True) # 使用编码器模型对图片进行 x_train_encoded = encoder.predict(x_train) # 输出后的矩阵 print(x_train_encoded) ``` 这段代码使用了一个基于深度学习的自编码器模型来对图片进行。首先,我们加载了图片数据,定义了一个输入层。然后,我们定义了编码层和解码层,其中编码层将输入图片压缩成一个低向量,解码层将这个向量还原成原始图片。接着,我们定义了自编码器模型,编译它。我们使用训练数据来训练自编码器模型,最后使用编码器模型对图片进行,输出后的矩阵。
评论 11
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值