VAE
VAE相当于给对应code的value加噪
重叠的地方既需要重建出满月,又需要重建出弦月,因此会产生介于两者之间的情况
m(均值)σ(方差)由machine决定
exp用于控制值为正
e为从高斯分布中采样出的值
x是一个vector
我们要做的是:估计P(x) (x的概率分布)
因为根据x的概率分布进行采样,可以选出大概率是宝可梦的x
怎么估计P(x)呢:可以用高斯混合模型
高斯混合模型
多个高斯分布根据权重叠加
P(m)代表每个高斯分布的权重,p(x|m)代表从第m个高斯分布中取x的概率
先决定取哪个高斯分布(有对应的均值和方差),再采样
VAE相当于distribution版本的高斯混合模型
假设z取自高斯分布,z相当于一系列高斯分布的分布
由于z是随机的(相当于高斯混合模型中混合的高斯分布),所以需要一个函数来确定对应的均值和方差
neutral network = function,因此z作为nn的input,mean(z)和variance(z)为output
因为z是连续的,所以求P(x)用积分
接下来要最大化x出现的可能性
KL散度用于衡量两个分布的距离(相似性),越小两个分布越接近,等于0时两个分布一样
要最大化的式子等同于在已知q(z|x) (q of z given x) 的情况下最大化P(x|z)
已知x采样z,相当于编码器;已知z采样x,相当于解码器
maximizing P(x|z) = 最大化已知z采样出x的概率,z通过解码器生成一个x的高斯分布,高斯分布中概率最大的点是mean值,也就是μ(x),所以要让μ(x)接近x,也就是输出接近输入,符合AE,形成闭环