AE(AutoEncoder) 学习笔记
目录Auto-Encoder, AE
传统的自动编码器是一种数据的压缩算法
其算法包括编码阶段和解码阶段,且拥有对称的结构。
AE的应用:
- 第一是数据去噪
- 第二是为进行可视化而降维
公式描述为:
\[h_1 = \sigma _e (W_1 x + b_1)\\ y = \sigma_d(W_2h_1 + b_2) \\ \]\(e\rightarrow encoder\), \(d \rightarrow decoder\)。
损失函数:
\[J(W,b) = \sum(L(x, y)) = \sum \lVert y-x \rVert_2^2 \]我们真正关心的是隐层表达,而不是实际输出。因此,针对自编码器的很多改进方法都是对隐层表达增加一定的约束,迫使隐层表达与输入不同。
Denosing Auto-Encoders, DAE
一个好的表达能够捕获输入信号的稳定结构,以该目的为出发出现了降噪自动编码器(DAE)。
首先对干净的输入信号加入噪声产生一个受损的信号(主动)。然后将受损信号送入传统的自动编码器中,使其重建回原来的无损信号。
过程可用公式描述:
\[\begin{gathered} \hat{x} \sim q_D(\hat{x} \mid x) \\ h_1=\sigma_e\left(W_1 \hat{x}+b_1\right) \\ y=\sigma_d\left(W_2 h_1+b_3\right) \end{gathered} \]\(q_D(\hat{x} \mid x)\)是噪声的分布,\(\hat{x}\) 是加入噪声后的输入。
DAE的目标是最小化损失函数:
\[J_{DAE}(W) = \sum E_{\hat{x}\sim q_D(\hat{x}|x)[L(x,y)]} \]DAE与传统的AE的主要区别在于:
- 降噪自编码器通过人为的增加噪声使模型获得鲁棒性的特征表达
- 避免使隐层单元学习一个传统自编码器中没有意义的恒等函数
最大的缺陷在于每次进行网络训练之前,都需要对干净输入信号人为地添加噪声,以获得它的损坏信号,这无形中就增加了该模型的处理时间。
Stacked Denoising Auto-Encoders, SAE
SAE和DAE区别主要在于:SAE是有监督学习,DAE是无监督学习。所以SAE是DAE的一种应用方法。
Convolution Auto-Encoders, CAE
标签:DAE,编码器,Encoders,AE,Auto,笔记,AutoEncoder,hat From: https://www.cnblogs.com/Last--Whisper/p/16721082.html