# 方差 期望给了分布的中心。**方差给的是分布的散开程度:样本平均离中心多远(按距离的平方算)。**记号 $\mathrm{Var}(X)$。**这一课的写法还是靠几条性质,扩散里它给出高斯的第二个槽。** > [!abstract] 定义 > $\mathrm{Var}(X)=E\left[(X-E[X])^2\right]$ > 每个取值离中心 $E[X]$ 有个距离,把距离平方,再求平均。越大越散,越小越挤在中心。 > 标准差 $\sigma=\sqrt{\mathrm{Var}(X)}$,和 $X$ 同单位。 > [!abstract] 算起来更顺的式子 > $\mathrm{Var}(X)=E[X^2]-(E[X])^2$ > 平方的期望,减去期望的平方。上一课说 $E[X^2]\neq(E[X])^2$,它俩的差,正好就是方差。 > [!note]- 这个式子怎么来的(用上一课的线性) > $\mathrm{Var}(X)=E\left[(X-E[X])^2\right]$ > 把括号里的平方展开($E[X]$ 是个常数): > $=E\left[X^2-2X\,E[X]+(E[X])^2\right]$ > 用线性拆成三项,常数提出来: > $=E[X^2]-2E[X]\,E[X]+(E[X])^2$ > 中间项里 $E[X]\,E[X]$ 是一个数乘自己,就是 $(E[X])^2$: > $=E[X^2]-2(E[X])^2+(E[X])^2$ > 后两项是同类项,$-2$ 个加 $1$ 个等于 $-1$ 个: > $=E[X^2]-(E[X])^2$ > [!note]- 为什么内层 $E[X]$ 当常数(期望套期望) > 关键:$X$ 是随机的,$E[X]$ 是把 $X$ 平均出来的中心,一个定死的数(比如 $X$ 的中心是 5,$E[X]$ 就是 5)。 > 所以外层 $E[\dots]$ 看 $E[X]$,看到的就是一个常数,直接套上一课那两条: > 常数提得出:$E[2X\,E[X]]=2\,E[X]\,E[X]$,里头的 $E[X]$ 当常数提到前面。 > 常数的期望是自己:$E[(E[X])^2]=(E[X])^2$,原样出来。 > 一句话的道理:外层期望只对还在随机的 $X$ 起作用,把 $X$ 平均掉;$E[X]$ 早就是定值了,再平均一次还是它自己($E[E[X]]=E[X]$),所以它原样留着,不长出新的一层。 > [!abstract] 性质(写法主力) > 加常数,散开不变(常数只把中心整体挪一下): > $\mathrm{Var}(X+b)=\mathrm{Var}(X)$ > 乘常数,散开乘平方: > $\mathrm{Var}(aX)=a^2\,\mathrm{Var}(X)$ > 合起来: > $\mathrm{Var}(aX+b)=a^2\,\mathrm{Var}(X)$ > 独立的两个相加,方差相加: > $\mathrm{Var}(X+Y)=\mathrm{Var}(X)+\mathrm{Var}(Y)\quad(X,Y\ \text{独立})$ ⚠️ **$\mathrm{Var}(aX)$ 里系数乘的是 $a^2$,要平方,这是最容易写错的一处。**另外:期望相加任何时候都成立,方差相加要求 $X,Y$ 独立。 > [!note]- 为什么乘常数要平方 > 方差量的是距离的平方。把 $X$ 整个乘 $a$,每个点到中心的距离也乘 $a$;距离一平方,就乘了 $a^2$。所以方差乘 $a^2$。 > [!abstract] 例一,已知 $\mathrm{Var}(X)=\sigma^2$,求 $\mathrm{Var}(3X+5)$ > $\mathrm{Var}(3X+5)$ > 加常数 5 不改散开,先去掉: > $=\mathrm{Var}(3X)$ > 乘常数 3,方差乘 $3^2$: > $=3^2\,\mathrm{Var}(X)=9\,\mathrm{Var}(X)$ > 代入 $\mathrm{Var}(X)=\sigma^2$: > $=9\sigma^2$ > [!abstract] 例二,重参数化的方差(扩散关键) > $\varepsilon\sim\mathcal{N}(0,1)$,它的方差 $\mathrm{Var}(\varepsilon)=1$。$\mu,\sigma$ 是常数。求 $\mathrm{Var}(\mu+\sigma\varepsilon)$: > $\mathrm{Var}(\mu+\sigma\varepsilon)$ > 加常数 $\mu$ 不改散开: > $=\mathrm{Var}(\sigma\varepsilon)$ > 乘常数 $\sigma$,方差乘 $\sigma^2$: > $=\sigma^2\,\mathrm{Var}(\varepsilon)$ > 代入 $\mathrm{Var}(\varepsilon)=1$: > $=\sigma^2\cdot 1=\sigma^2$ > 配上上一课的均值 $\mu$:重参数化 $x=\mu+\sigma\varepsilon$ 的分布是 $\mathcal{N}(\mu,\sigma^2)$,中心 $\mu$、散开 $\sigma^2$,两个槽齐了。 > [!question]- 练习六道。已知 $\mathrm{Var}(X)=\sigma^2$,$\varepsilon\sim\mathcal{N}(0,1)$ 即 $\mathrm{Var}(\varepsilon)=1$,$\sigma$、$x_0$、$\bar\alpha$ 当常数 > 一,$\mathrm{Var}(2X)$ > 二,$\mathrm{Var}(X+7)$ > 三,$\mathrm{Var}(2X-1)$ > 四,$\mathrm{Var}(\sigma\varepsilon)$ > 五,$\mathrm{Var}\left(\sqrt{1-\bar\alpha}\,\varepsilon\right)$ > 六,$\mathrm{Var}\left(\sqrt{\bar\alpha}\,x_0+\sqrt{1-\bar\alpha}\,\varepsilon\right)$(DDPM 前向方差) > [!note]- 练习答案 > 第一题 > $\mathrm{Var}(2X)=2^2\,\mathrm{Var}(X)=4\sigma^2$ > 第二题 > $\mathrm{Var}(X+7)=\mathrm{Var}(X)=\sigma^2$ > 加常数不改散开。 > 第三题 > $\mathrm{Var}(2X-1)$ > 去掉常数 $-1$: > $=\mathrm{Var}(2X)=2^2\,\mathrm{Var}(X)=4\sigma^2$ > 第四题 > $\mathrm{Var}(\sigma\varepsilon)=\sigma^2\,\mathrm{Var}(\varepsilon)=\sigma^2\cdot 1=\sigma^2$ > 第五题 > $\mathrm{Var}\left(\sqrt{1-\bar\alpha}\,\varepsilon\right)$ > 系数 $\sqrt{1-\bar\alpha}$ 乘进来,方差乘它的平方: > $=\left(\sqrt{1-\bar\alpha}\right)^2\mathrm{Var}(\varepsilon)=(1-\bar\alpha)\,\mathrm{Var}(\varepsilon)$ > 代入 $\mathrm{Var}(\varepsilon)=1$: > $=(1-\bar\alpha)\cdot 1=1-\bar\alpha$ > 第六题 > $\mathrm{Var}\left(\sqrt{\bar\alpha}\,x_0+\sqrt{1-\bar\alpha}\,\varepsilon\right)$ > $\sqrt{\bar\alpha}\,x_0$ 整个是常数,加常数不改散开: > $=\mathrm{Var}\left(\sqrt{1-\bar\alpha}\,\varepsilon\right)$ > 系数平方: > $=(1-\bar\alpha)\,\mathrm{Var}(\varepsilon)=(1-\bar\alpha)\cdot 1=1-\bar\alpha$ > [!abstract] 和 DDPM 对上:第二个槽补齐了 > 上一课算出中心 $\sqrt{\bar\alpha}\,x_0$,这一课算出散开 $1-\bar\alpha$。两个一拼,就是你在 DDPM 背过的 $q(x_t\mid x_0)=\mathcal{N}\left(\sqrt{\bar\alpha}\,x_0,\ (1-\bar\alpha)\mathbf{I}\right)$($\mathbf{I}$ 单位矩阵,因为图像是向量,按一维理解就行)。**你现在能从加噪式 $x_t=\sqrt{\bar\alpha}\,x_0+\sqrt{1-\bar\alpha}\,\varepsilon$ 把整个高斯亲手还原出来。** > 之前你问「噪声去哪了」,答案就在这一格:噪声的份量 = 方差 = $1-\bar\alpha$。$t$ 越大 $\bar\alpha$ 越小,方差 $1-\bar\alpha$ 越接近 1,$x_t$ 越散、越接近标准正态 $\mathcal{N}(0,1)$;$t$ 趋近 0 时方差趋近 0,$x_t$ 收回到 $x_0$。 > [!note]- 条件方差 vs 边际方差:看 $x_0$ 是给定还是随机 > 这道练习把 $\sqrt{\bar\alpha}\,x_0$ 当常数,是因为题目是 $q(x_t\mid x_0)$,竖杠 $\mid x_0$ 就是「$x_0$ 给定、写死」。给定的东西是常数,方差为 0,只剩噪声那块: > $\mathrm{Var}(x_t\mid x_0)=1-\bar\alpha$ > 这叫条件方差,在给定 $x_0$ 的前提下算。 > 换个前提:让图片 $x_0$ 也从数据集里随机抽,$\sqrt{\bar\alpha}\,x_0$ 就有自己的方差了($\mathrm{Var}(x_0)$ 是图片本身的方差)。噪声和图片独立,独立相加方差相加,各项系数平方: > $\mathrm{Var}(x_t)=\mathrm{Var}(\sqrt{\bar\alpha}\,x_0)+\mathrm{Var}(\sqrt{1-\bar\alpha}\,\varepsilon)$ > $=\bar\alpha\,\mathrm{Var}(x_0)+(1-\bar\alpha)\,\mathrm{Var}(\varepsilon)=\bar\alpha\,\mathrm{Var}(x_0)+(1-\bar\alpha)$ > 这叫边际(无条件)方差。 > 数据归一化到方差 1 时($\mathrm{Var}(x_0)=1$):$\bar\alpha+(1-\bar\alpha)=1$,不管 $t$ 多大总方差恒为 1,这就是 VP(方差守恒)的来历。 > 一句话:差别只在 $x_0$ 给定还是随机。竖杠 $\mid x_0$ 就是把 $x_0$ 当常数。完整一课在「条件方差」。 > [!note]- 整个扩散,用的基本是条件方差;图片自身的方差藏在两处背景 > 你动手算的公式都是条件的(都给定 $x_0$):前向核 $q(x_t\mid x_0)$、重参数化、训练里造 $x_t$、反向后验 $q(x_{t-1}\mid x_t,x_0)$。里面的 $1-\bar\alpha$ 这类都是条件方差,从头到尾不用算图片本身的 $\mathrm{Var}(x_0)$。 > 图片自身的方差只在两处背景里撑着,不写进公式: > 1. 归一化约定:数据先归一化到方差 1,VP 才成立、加到最后才是干净的 $\mathcal{N}(0,I)$ 先验。$\mathrm{Var}(x_0)=1$ 被约定掉了,所以公式里看不到它。 > 2. score 的目标是边际:反向过程要的 $\nabla\log p_t(x)$,里面的 $p_t$ 是无条件(边际)分布,$x_0$ 随机,跟数据分布连带它的方差有关。训练用 denoising score matching 把它转成条件核 $\nabla\log q(x_t\mid x_0)$ 来学。一句话:学的是边际,练的是条件。 > 收口:解题用的是条件方差;图片自身的方差被归一化吸收了,再加上藏在 score 要逼近的边际里,平时不露面。