概率图模型笔记 2018-01-17 # 概率图模型笔记 ## 写在前面 概率提供了一个研究随机变量规律的方法,但当随机变量复杂的时候,所有随机变量的分布就很难描述。做一些前提假设,把问题简单化是常用的建模方法。概率图模型也是一种简化。 概率图中节点代表随机变量,各边代表随机变量之间的关系 ***简单说概率图模型描述的是满足某种独立性假设的高维随机变量的分布。有了独立性假设就可以把高维随机变量的分布分解成因子,而每一个因子定义在低维的概率空间上。*这样就可以通过研究低维空间的性质来研究高维随机变量的分布。** 随机变量分布的初衷是想研究随机变量的规律。分布的描述方法很多,离散随机变量可以用分布列,连续型随机变量有分布函数,密度函数,特征函数,分布的特征函数的定义是对概率密度函数做傅里叶变换。 $$\phi(t) = \int_{-\infty}^{\infty}e^{itx}p(x)dx$$ $$i$$ 是虚数单位。$$p(x)$$ 是概率密度。在这里写这个可能不会跟概率图有多大关系,但那天看到这个让我想起无向图模型可以分解成势函数乘积的形式. 半夜我把这个特征函数和概率图里的特征势函数联系起来的时候,瞌睡都没了,虽然还没想通。 ## 有向图 一个简单的例子。 一个AI工程师面试,面试官考虑如下三个因素: 1. 工程能力,用T表示取值(0, 1) 2. 笔试成绩用G 表示,取值(0,1, 2) 3. 聪明否用I表示取值(0 , 1) 如果没有任何前提假设,如果我们要求三个随机变量的联合分布,很简单的方式就是写出分布列,容易计算有12中组合,所有概率和为1,所以有11个独立参数。 如果现在假设,聪明已知的情况下,工程能力和笔试成绩是独立的。一个聪明人会不会写代码和会不会考试没关系,傻子也是一样。用图描述如下:  如果现在要求联合分布,根据贝叶斯公式就可以得到下面的表示: $$P(I, T, G) = P(T|I)P(G|I)P(I)$$ 其中$$P(I)$$ 是一个二项分布只有一个独立参数,$$P(G|I)$$ 是两个多项式分布,当$$I=0$$ 的时候有三个取值可以用两个参数描述,$$I=1$$时候同理空两个参数,P(T|I) 是两个二项分布(可以尝试画一下分布列) 。 所以总的参数现在就只需要8个了。 可以看到,独立性假设带来的是建模和求解的方便。如果现在的问题是求$$P(I|G,T)$$ 这就是常用的朴素贝叶斯模型:类别已知的情况下特征条件独立。 回到最开始说的概率图。这里的独立性假设是条件独立性假设,因子分解的方式是把联合概率分解成条件概率乘积的形式。 ### HMM 用上面的方法,想一下隐马模型,如下图,如果白色点用$$Y$$表示,灰色点用$$X$$表示  假设: 1.$$y_t$$只依赖$$y_t-1$$这就是所谓的齐次马尔科夫性 2.$$x_t$$只依赖于$$y_t$$,这就是观测独立性假设。 HMM 的 常用在NLP的序列标注上,比如分词。下面的灰色就是观测到的一个个的字,上面的白色圈就是每个字对应的标签(词的开头,结尾等) 序列标注求的是已知序列X,求Y,也就是条件概率$$P(Y|X)$$ . 根据独立性假设就比较容易的求得 $$ P(Y|X)=P(y_0)P(y_t|(y_{t-1}))P(x_t|y_t) $$ 想想这公式说明什么问题,如果在分词这个问题上,我们需要求每个标签出现在句首的概率,和概率直接的转移概率,和每个字分别被标为各个标签的概率。(想清楚如果要写出来是怎么回事) 这和前面的贝叶斯网络的特殊情况。 ## 无向图 有向图可以描述独立或者依赖关系的方向。那么无向图如何参数化(因子分解)?。书上通常会提出一个定义:因子(或势函数)来描述两个随机变量之间的亲密关系。 比如招聘的例子中的箭头是无向图,相当于假设,笔试和写代码之间没关系,有此假设联合分布可以分解成势函数乘积的形式 $$P(i,t,g)=\frac{1}{Z}\phi_1(i,t)\phi_2(i,g)$$ 其中$$Z=\sum_{i,t,g}(\phi_1(i,t)\phi_2(i,g))$$ 如果把定义在集合D上的势函数转换到对数空间 $$\phi(D) =exp(-\epsilon(D))$$ 其中$$\epsilon(D)=-ln(\phi(D))$$ .上面的模型就可以转换成逻辑回归。 类似把朴素贝叶斯推广到序列模型上的方式,把逻辑回归推广到序列模型就是CRFs(线性链条件随机场)  和HMM的介绍一样,这里的假设是,$$y_t$$ 和前一个和后一个标签有关系。当前的$$x_t$$ 只和$$y_t$$ 有关。所以CRFs的联合分布可以分解成独立势函数乘积的形式(公式)。