杂谈|写作的目的
⬅️ 上一篇:笔记|生成模型(四):变分自编码器理论
➡️ 下一篇:笔记|生成模型(五):DDPM理论
写作的目的
今天晚上,又坐在电脑前写点东西。
其实写作的目的挺简单的——就是怕忘。
每天都在知识的海里漂,从线性回归到扩散模型,从最早的神经网络到变分自编码器,脑子里装过的那些公式、推导、技巧,曾经烂熟于心的,现在有些已经开始模糊了。记忆真像潮水,退得悄无声息。
所以只能靠写,把那些散落在脑海深处的碎片捡回来,重新理一遍、咀嚼一遍、记下来。这样不仅能复习,还能让那些已经褪色的东西重新有点颜色。
还有一个原因——我不知道自己还能在这条路上走多久。
技术变得太快,新框架、新理论一波接一波。也许哪天我会因为各种原因离开,也许会被下一波浪潮淹没。
但不管怎样,我想留下点痕迹。这些文字,能记录我的思路,承载我的学习轨迹,见证我曾经在算法世界的摸索。哪怕有一天不再写代码、不再调参数,它们也会安静地躺在某个角落,证明我曾在这里认真走过。
下一篇:笔记|生成模型(五):DDPM理论
笔记|生成模型(四):变分自编码器理论
⬅️ 上一篇:笔记|生成模型(三):生成对抗理论
➡️ 下一篇:杂谈|写作的目的
自编码器(Autoencoder,
AE) VS 变分自编码器(Variational Autoencoder,VAE)
自编码器
如下图所示,自编码器分为编码器和解码器组成。编码器通过映射将原始高维空间的数据映射成一个特征向量(之前说过某种数据一般都是高维空间低维流形的形式存在,那存储和运算其实仅需要在低维流形上即可。关键在于如何表示出低维流形),即寻找输入数据的低维特征来压缩数据。而解码器通过映射将低维特征解码回我们能够看得懂的高纬数据。
用数学的定义表示为:
给定数据集 \(\mathcal{D} =
\{x^{(i)}\}_{i=1}^N\),编码器 \(f_\theta: \mathcal{X} \to \mathcal{Z}\)
和解码器 \(g_\phi: \mathcal{Z} \to
\mathcal{X}\)。这两个函数学习一个确定性映射,使得重构结果 \(\hat{x}\) 尽可能接近原始输入 \(x\):
\[
z = f_\theta(x), \quad \hat{x} = ...
笔记|生成模型(三):生成对抗理论
⬅️ 上一篇:笔记|生成模型(二):生成模型的技术路线总览
➡️ 下一篇:笔记|生成模型(四):变分自编码器理论
生成对抗网络(Generative
Adversarial Nets,GAN)
核心思想
生成对抗网络是一种基于对抗学习的深度生成模型,最早由Ian
Goodfellow于2014年在《Generative Adversarial
Nets》中提出,一经提出便成为了学术界研究的热点,也将生成模型的热度推向了另一个新的高峰。上节有讨论到,直接用图片做监督存带来均值灾难,我们又无法得到真实分布从而监督训练。因此,借助变分推断的思想做一个概率分布近似。从一个简单的已知分布(如标准高斯分布)出发,通过某种方式或手段,将其近似为真实数据的概率分布。GAN正是遵循这一理论,但实现过程中直接对齐分布是很难的,因为我们并不知道概率分布的函数形式,所以也无法得知它到底有几个参数。
所以可以换一个思想,既然无法得到概率分布函数的具体形式,没有参数,不好近似,那我就不去近似他了。对于两个分布而言,如果它们的大多数随机采样的样本概率都是对齐的,那不就说明这两个概率分布函数已经接近了吗。很好,你 ...
笔记|生成模型(二):生成模型的技术路线总览
⬅️ 上一篇:笔记|生成模型(一):一些概率论的基础概念和理论
➡️ 下一篇:笔记|生成模型(三):生成对抗理论
判别模型 vs 生成模型
在人工智能领域,如今深度学习模型大致可分为两类:判别式模型(Discriminative
Models)和生成式模型(Generative Models)。
判别模型:
判别模型关注的是建模条件概率 \(P(y \mid
x)\),即在给定输入 \(x\)
的条件下预测标签 \(y\)。从信息学角度来看,人类所使用的语言、图像、音频等形式的信息,虽然本质上处于极高维空间中,但它们在该空间中的分布往往集中在结构性很强、低维的流形上。因此,它们在高维空间中呈现出几何稀疏性,换句话说,数据在高维空间中运动、变化,但只活动在某种低自由度的结构中。举个栗子:假设我们用
\(64×64×3=12288\)
维来表示彩色人脸图像,但现实中,人脸受限于:姿态(2~3个自由度),表情(2~5个自由度),光照变化,年龄、性别等特征。尽管图像空间是
1 万多维,人脸变化的真实自由度可能只有几十个维度,所以,所有可能的 RGB
图像中,人脸图像只占据一个非常小的“面团 ...
笔记|生成模型(一):一些概率论的基础概念和理论
➡️ 下一篇:笔记|生成模型(二):生成模型的技术路线总览
概率 vs 似然
概率:已知某种分布和其参数 \(\theta\) 的情况下,某件事情发生的概率。
似然:已知一种分布形态(可能是高斯分布,泊松分布等)和一组观测数据的情况下,不同的参数
\(\theta\)
产生这组观测数据的可能性。
简单来说,概率是已知 \(P(x)\)
的具体形式,求 \(x = x_0\) 时候的值。
而似然是已知 \(P(x)\)
的形态,比如二次函数,一次函数之类的,但是其具体参数未知。假设这里是二次函数
\(P(x) =
ax^2+bx+c\),同时我们又已知一组观测数据 \(x_1, x_2, x_3, \ldots,
x_n\),则任意一组参数 \(a, b,
c\) 产生上述观测数据的可能性即为似然。
最大似然(MLE):假设存在独立同分布的观测数据 \(x_1, x_2, x_3, \ldots,
x_n\),某个概率分布函数是 \(P_\theta(x)\),\(\theta\)
为该函数的参数,则这组观测数据的联合概率有如下形式:
\[P_\theta(x_1, \ldots, ...