33、自编码器:去噪与变分的探索

自编码器:去噪与变分的探索

1. 去噪自编码器

去噪自编码器的工作方式与标准自编码器类似,其隐藏层使用非线性激活函数。不同之处在于,它不是将原始输入 $x$ 输入网络,而是输入加噪后的 $x$,记为 $\tilde{x}$。在计算重构误差时,将输出层的重构图像与实际输入 $x$ 进行比较。其核心思想是,从含噪数据中学到的隐藏结构足够丰富,能够重构出原始数据。因此,这种自编码器可用于减少数据中的噪声,因为它能从隐藏层学习到数据的稳健表示。例如,若图像因某种失真而模糊,去噪自编码器可用于去除模糊。只需引入一个随机噪声添加单元,普通自编码器就能转换为去噪自编码器。

对于图像,去噪自编码器的隐藏层可以使用卷积层而非标准神经单元,这样能确保在定义自编码器网络时不破坏图像的拓扑结构。

1.1 TensorFlow 实现去噪自编码器

以下是使用 TensorFlow 实现去噪自编码器的详细代码:

from tensorflow.keras import layers, Model
from skimage import transform
import numpy as np
import matplotlib.pyplot as plt

class encoder(Model):
    def __init__(self):
        super(encoder,self).__init__()
        self.conv1 = layers.Conv2D(filters=32,kernel_size=5,strides=(2,2), padding='SAME')
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值