变分贝叶斯系列
文章平均质量分 87
风吹草地现牛羊的马
这个作者很懒,什么都没留下…
展开
-
K-means算法与GMM和EM之间的关系
EM算法的流程:随机初始化未知参数,初始化值记为θold\theta^{old}θoldE-STEP:求隐变量zzz的后验:p(z∣x;θold)=p(z,x;θold)∫p(z,x;θold)dzp(z|x;\theta^{old}) = {p(z,x;\theta^{old}) \over \int p(z,x;\theta^{old})dz}p(z∣x;θold)=∫p(z,x;θold)dzp(z,x;θold)求完全数据(x,z)(x,z)(x,z)的对数似然关于zzz的后验的期望:原创 2021-03-20 20:31:50 · 323 阅读 · 0 评论 -
EM算法总结
本文需要对EMEMEM算法有一定的了解。若对EMEMEM算法之前没有了解过,不建议看本文。这里给出常用的推导EM算法的案例:高斯混合算法(GMM)与最大期望算法(EM)的推导假设隐变量为ZZZ,可观测变量为XXX,要求解的未知参数为θ\thetaθ。在EM算法框架中,(X,Z)(X,Z)(X,Z)称为完全数据。EM算法其实还是为了求解最大似然解,但是并不是最大似然的解析解,而是近似解。所以我们还是要推导出未知参数θ\thetaθ的最大似然形式。完全数据的联合概率分布:p(X,Z;θ)=p(X;θ)p原创 2020-10-04 17:18:32 · 534 阅读 · 0 评论 -
鉴别器(逻辑回归)估计两个概率分布的概率密度比
概率密度比概率密度比是生成模型的重要组成部分,无论是在VAEs的情况下显式的(比如两个高斯分布之间的KL散度),还是在GANs的情况下隐式的。即我们在计算两个分布之间的KL散度(比如pgp_{g}pg与pdatap_{data}pdata之间的KL散度),这通常归结为计算两个概率分布对数的样本平均值。以VAE举例,VAE的ELBO是:ELBO=Eq(z∣x)[logp(x∣z)]−KL[q(z∣x)∣∣p(z)]=Eq(z∣x)[logp(x∣z)]−Eq(z∣x)[logq(z∣x)p(z)]原创 2021-01-23 14:27:07 · 1050 阅读 · 1 评论 -
Semi-Amortized Variational Autoencoders阅读笔记
假设变分后验为高斯分布,变分参数是λ\lambdaλ,也就是λ=[μ,Σ]\lambda=[\mu, \Sigma]λ=[μ,Σ],输入为xxx,这里的xxx表示一个样本。注意,每个样本都有与之对应的变分参数,也就是样本集X=[x(1),x(2),...,x(N)]X=[x^{(1)}, x^{(2)},..., x^{(N)}]X=[x(1),x(2),...,x(N)],变分参数集Λ=[λ(1),λ(2),...,λ(N)]\Lambda=[\lambda^{(1)}, \lambda^{(2)}, .原创 2020-12-30 22:40:36 · 798 阅读 · 0 评论 -
pytorch的求导函数backward和torch.autograd.grad()
pytorch中求导可以借助tensor.backward()和torch.autograd.grad()来完成,backward()函数应该很熟悉了,模型的的参数求导一般是使用这个函数来完成。backward()默认是标量对参数求导,如果是向量对参数求导,要传入一个维度和向量一样的tensor。torch.autograd.grad(outputs, inputs, grad_outputs, retain_graph, create_graph, only_inputs)也可用来对参数求导,这函数的参原创 2020-12-29 22:30:08 · 1228 阅读 · 0 评论 -
概率生成模型
夫卡了就原创 2020-11-13 16:21:52 · 1363 阅读 · 0 评论 -
二项式定理与二项分布、多项式定理与多项分布
二项式定理与二项分布二项式定理二项式定理我们在高中就学过了,即:(a+b)n=(n0)anb0+(n1)an−1b1+....+(nn−1)a1bn−1+(nn)a0bn=∑i=0n(ni)an−ibi(a+b)^n = {n \choose 0}a^nb^0 + {n \choose 1}a^{n-1}b^1+....+{n \choose n-1}a^1b^{n-1} + {n \cho...原创 2019-09-29 12:50:07 · 8122 阅读 · 2 评论 -
正向KL散度与反向KL散度
KL散度的公式是KL[p(x)∣∣q(x)]=∫xp(x)logp(x)q(x)dxKL[p(x)||q(x)] = \int_{x}p(x)log{p(x) \over q(x)}dxKL[p(x)∣∣q(x)]=∫xp(x)logq(x)p(x)dx假设真实分布为p(x)p(x)p(x),我们想用分布q(x)q(x)q(x)去近似p(x)p(x)p(x),我们很容易想到用最小化KL散度来求,但由于KL散度是不对称的,所以并不是真正意义上的距离,那么我们是应该用KL[p∣∣q]KL[p||q]转载 2020-10-10 16:32:52 · 5830 阅读 · 2 评论 -
主题模型(三)潜在狄利克雷分配 LDA 求解之变分EM算法
本文涉及的知识点有,最大似然,贝叶斯估计,共轭分布,EM算法,变分推断等。极大似然估计、极大后验估计和贝叶斯估计在进行下面的推导之前,首先要了解参数估计的相关内容,见最大似然估计(MLE)、最大后验估计(MAP)和贝叶斯估计LDA初探在PLSA模型中,doc-topic分布和topic-word分布(也就是在主题模型(二)概率潜在语义分析(PLSA或PLSI)中求解的p(zk∣di)和p(wj∣zk)p(z_k|d_i)和p(w_j|z_k)p(zk∣di)和p(wj∣zk))一旦被求解,就原创 2020-10-09 13:06:52 · 692 阅读 · 0 评论 -
Householder Flow
Householder Flow变分自动编码器(VAE)是可扩展的、强大的生成模型。然而,变分后验的选择决定了VAE的可操作性和灵活性。一般来说,潜变量是用一个对角协方差矩阵的正态分布建模的。这可以提高计算效率,但通常不能灵活地匹配真实的后验分布。丰富变分后验分布的一种方法是应用正则化流,即normalizing flows。这种操作是对潜变量的简单后验分布做一系列可逆变换,将其变为复杂,灵活的后验分布。Householder Flow就是normalizing flows中的一种。推导设q(x)q(x)原创 2020-07-15 19:36:38 · 603 阅读 · 1 评论 -
逆Wishart分布在贝叶斯推理中的应用
Wishart分布的概率密度函数f(w∣v,H)=∣w∣(v−p−1)/22vp/2Γp(v/2)∣H∣v/2exp[−12tr(H−1w)]其中,Γp(v/2)=πp(p−1)/4∏j=1pΓ(v+1−j2)f(w|v,H) = {|w|^{(v-p-1)/2} \over 2^{vp/2} \Gamma_{p}(v/2)|H|^{v/2}}exp[-{1 \over 2}tr(H^{-1}w)] \\其中, \Gamma_{p}(v/2) = \pi^{p(p-1)/4}\prod_{j=1}^原创 2020-07-13 01:36:07 · 4381 阅读 · 0 评论 -
威沙特分布和逆威沙特分布(Wishart 分布及逆 Wishart 分布)
Wishart 分布Wishart 分布是用来描述多元正态分布样本的协方差矩阵的。Wishart 分布的随机变量是一个随机矩阵。定义假设XXX是一个n∗pn*pn∗p的矩阵,其中,每一行XiX_{i}Xi服从多元正态分布:Xi∽Np(0,Σ)X_{i} \backsim N_{p}(0,\Sigma)Xi∽Np(0,Σ)也就是每一个样本XiX_{i}Xi服从ppp维的正太分布。令A=∑iXiTXiA = \sum_{i}X_{i}^TX_{i}A=i∑XiTXi则随机矩阵AAA原创 2020-07-12 12:45:22 · 15839 阅读 · 1 评论 -
共軛分布与贝叶斯估计
从最大似然估计(MLE)、最大后验估计(MAP)和贝叶斯估计中的贝叶斯估计我们知道,贝叶斯学派认为给定一组观测数据X=(x1,x2,,,,,xn)X = (x_1, x_2, ,,,, x_n)X=(x1,x2,,,,,xn),估计分布的未知参数θ\thetaθ时,θ\thetaθ应该也是服从一个分布的,所以在计算时,要计算后验概率P(θ∣X)P(\theta|X)P(θ∣X)的整个分布,...原创 2019-09-25 18:51:32 · 705 阅读 · 0 评论 -
GMVAE(GAUSSIAN MIXTURE VARIATIONAL AUTOENCODERS)高斯混合变分自编码器公式推导
GMM高斯混合模型:p(x)=∑zp(z)p(x∣z)=∑k=0K−1πkN(x∣μk,σk)\begin{aligned}p(x) = &\sum_{z}p(z)p(x|z) \\= &\sum_{k=0}^{K-1} \pi_{k}N(x|\mu_{k}, \sigma_{k})\end{aligned}p(x)==z∑p(z)p(x∣z)k=0∑K−1πkN(x∣μk,σk)其中∑kπk=1,z是一个K维的one−hot向量,p(zk=1)=πk\sum_原创 2020-06-12 00:16:51 · 4667 阅读 · 4 评论 -
条件变分自编码器(CVAE)及相关论文ELBO推导
推导用到的概率公式:P(A,B∣C)=P(A∣B,C)P(B∣C)P(A,B|C) = P(A|B,C)P(B|C)P(A,B∣C)=P(A∣B,C)P(B∣C)证明:由于 P(A∣B)=P(A,B)P(B)P(A|B) = {P(A,B) \over P(B)}P(A∣B)=P(B)P(A,B),所以P(A,B∣C)=P(A,B,C)P(C)P(A,B|C)={P(A,B,C) \ove...原创 2020-03-31 19:55:25 · 11488 阅读 · 0 评论 -
非参数贝叶斯模型、Dirichlet Process,Stick-Breaking
非参数贝叶斯模型资料:非参数贝叶斯模型概述如何简单易懂地理解贝叶斯非参数模型?为了讲清楚什么是非参数贝叶斯模型,先看看下面几个概念:参数模型参数模型就是知道总体(随机变量)的分布,但是不知道这个分布的参数,比如知道x服从参数为p的二项分布,因此我们得到x的样本后,要反推回p到底是什么。求解参数模型的常用方法比如最大似然估计(MLE),最大后验估计(MAP)。在参数模型中,常用的已知分布...原创 2020-01-14 10:40:41 · 4010 阅读 · 0 评论 -
变分自编码器ELBO的求解---随机梯度变分估计(SGVB)
在变分自编码(VAE)一文中我们已经求解了VAE的ELBO,这里再进一步分析求解ELBO的方法,也就是SGVB估计。两种形式的ELBO变分自编码器的ELBO其实有两种形式:第一种是:ELBO=Eqφ(z∣x)[logpθ(x,z)qφ(z∣x)]=Eqφ(z∣x)[logpθ(z)pθ(x∣z)qφ(z∣x)]=Eqφ(z∣x)[logpθ(x∣z)]−KL[qφ(z∣x)∣∣pθ(z)](1)\tag{1}\begin{aligned}ELBO = & E_{q_{\varphi}(原创 2020-06-13 01:16:06 · 4430 阅读 · 1 评论 -
变分自编码器(VAE)
本文是在阅读苏剑林大佬和网上其他一些讲解之后做的总结,所以有一点对VAE的了解看本文会比较容易。苏大佬的三部曲:变分自编码器(一):原来是这么一回事 变分自编码器(二):从贝叶斯观点出发变分自编码器(三):这样做为什么能成?自编码器与变分自编码器在我理解看来,自编码器是一种学习数据特征的网络结构,由编码器、隐层表示和解码器三部分组成。假设有一组数据X=(x1,x2,,,,xn)X=(x...原创 2019-11-04 16:01:12 · 2967 阅读 · 0 评论 -
采样计算与期望
连续型随机变量的期望p(x)p(x)p(x)为随机变量X随机变量X随机变量X的概率密度函数。E[X]=∫xp(x)dx(1)\tag{1} E[X] = \int xp(x)dxE[X]=∫xp(x)dx(1)离散型随机变量的期望X的分布律为p(X=xi)=piX的分布律为p(X = x_{i}) = p_{i}X的分布律为p(X=xi)=piE[X]=∑ixipi(2)\tag{2...原创 2019-11-02 16:58:17 · 1963 阅读 · 6 评论 -
连续型和离散型随机变量(基于Gumbel Softmax)的重参数化
本文是阅读苏剑林大佬的博客漫谈重参数:从正态分布到Gumbel Softmax之后的记录,算是自己的阅读笔记吧。在苏大佬的那篇博客中,分别针对连续型和离散型随机变量讲解了如何进行重参数化,但是自己不是特别理解离散型随机变量的重参数化,便记录在此。什么是连续型和离散型随机变量?这里没有各种形式化的定义,只是根据自己的理解通俗的来讲解二者的区别。可以先告诉大家,我们目前经常用到的连续型随机变量...原创 2019-11-01 16:38:05 · 3692 阅读 · 1 评论 -
变分推断二(基于随机梯度求解分布Q)
高方差的问题根据上一节变分推断一(根据平均场理论求解Q)我们得到了需要求解的分布QQQ的函数。L(Q)=∫ZQ(Z)logP(X,Z)Q(Z)dZQ=EQ(Z)[logP(X,Z)−logQ(Z)](1)\begin{aligned}\tag{1} L(Q) = & \int_{Z} Q(Z)log{P(X,Z) \over Q(Z)} dZ \\Q= & E_{Q(Z)...原创 2019-10-31 20:26:32 · 1394 阅读 · 2 评论 -
变分推断一(基于平均场理论求解Q)
什么是变分推断XXX : 观测变量ZZZ:latent variable + parameter在变分推断中,样本点XXX被称为观测变量(observed data),未知参数和潜变量被称为不可观测变量,都用ZZZ来表示。我们的模型一般都是根据观测数据来求ZZZ的后验分布,也就是求P(Z∣X)P(Z|X)P(Z∣X),但是有的时候,P(Z∣X)P(Z|X)P(Z∣X)是不好求的,所以可以尝...原创 2019-10-30 16:32:29 · 4574 阅读 · 2 评论