VAE

1 原理

Pasted image 20240830105608.png|575

1.1 参考资料

【VAE学习笔记】全面通透地理解VAE(Variational Auto Encoder) | CSDN
变分自编码器(Variational Autoencoder) — 张振虎的博客 张振虎 文档

关键代码:

        mu = self.fc1(x_state)
        logvar = self.fc2(x_state)
        # 数值稳定性
        scale = self.softplus(logvar) + eps
        # 对角线上的元素是权重
        scale_tril = torch.diag_embed(scale)

        return torch.distributions.MultivariateNormal(mu, scale_tril = scale_tril)

	dist.rsample()

Encoder 解码出每一维度的均值和方差,然后拟合多元高斯分布,再进行重参数化采样,得到具体的、用于 decoder 的值

2 组成部分

编码器和解码器本身内部结构,应该以域适应的方式进行

3 进阶

3.1 使用感知损失和基于Patch (局部块)的对抗目标的技术

ByCHATGPT

3.2 VQ-VAEs

已阅
Vector Quantised,使用矢量量化技术的变分自编码器,用于学习数据的高效表示
其实很简单的一个玩意,别和 VAE 的概率论扯上关系就行
维护编码表可以细看一下
V 2 使用全局信息和局部信息进行建模

VQ-VAE的简明介绍:量子化自编码器 - 科学空间|Scientific Spaces