概率图模型-推断|机器学习推导系列(十一)

简介: 概率图模型-推断|机器学习推导系列(十一)

一、概述


总的来说,推断的任务就是求概率。假如我们知道联合概率MV0(Y0W}GE9O28Z8A$W$5K3.png


,我们需要使用推断的方法来求:


ZH%9AM90Z%MQ2(K`@WW0HC8.png


以下是一些推断的方法:


①精确推断:


Variable Elimination(VE,变量消除法)(针对树结构);


Belief Propagation(BP,信念传播,Sum-Product Algo)(针对树结构);


Junction Tree Algorithm(针对图结构)


②近似推断:


Loop Belief Propagation(针对有环图);


Mente Carlo Inference(例如Importance Sampling,MCMC);


Variational Inference


二、Variable Elimination(变量消除法)


  1. 变量消除法


_QE[ZHWHLU$R5$B%S%X)TWY.png

                                                            图结构


对于上述图结构,假如我们希望求边缘概率$@_8YQFKY]%X9I6YFKR79)K.png,我们就可以应用变量消除法:

[0NVL%W){RLP@_LR~9WB2UY.png


  1. 解释

2(T8CT6QCDRP4L}@DPQA4$B.png


如果直接计算上式中的每一项再加起来就会需要相当大的计算量,而且上式只是每个变量都是二值变量的情况下,如果每个变量能取更多的值就会有更大的计算量。变量消除法就是根据某些节点只与图中自己的邻接节点有关这一特性来简化计算,相当于应用了乘法分配律W(Y]NIU~F2TME_VCPZ@Q634.png来避免计算每一项在加起来。变量消除法在上式中的计算过程为:


M1R@}UH~84B)_H%HJX(3Z9N.png


  1. 缺点


变量消除的缺点很明显:


①计算步骤⽆法存储:每次计算一个边缘概率就要重新计算一遍整个图;


②消除的最优次序是⼀个NP-hard问题:对于复杂的图来说,想要找到一个最优的消除次序是困难的。


三、Belief Propagation(信念传播算法)


  1. Variable Elimination算法的计算重复问题


对于以下图结构:


)OF@X~A)E[6BHGI57BAFOUT.png

                                          马尔可夫链


已知联合概率:


4CD0(`]8_S94JO0FZ8S}HL2.png


我们发现在计算Y~}YL(JVG{9X2@D1H7~0J@N.png的边缘概率时的前一部分与在计算K89UQ7YOAK0`]X%JS]D5$]2.png的边缘概率时的一部分重复了,可以想象在求其他边缘概率的分布时也会有大量的重复,而Belief Propagation算法就是来解决这个问题。


  1. Belief Propagation的引出


上面我们一直计算的是有向图的马尔可夫链,现在我们将问题从链结构引申到树结构,从有向图引申到无向图(Belief Propagation只针对树状结构)。举例来说,有如下无向树:


0]]WJ9{)Y@5G2`Z7%YSX4_6.png

                                               无向树


现在我们知道该联合概率的因子分解可以写为:


HDC$3XP7Y6ZB)1FC`A{1[LL.png

SSM07}L{DTRQ8W5]H5(JG{M.png

2BIR6WS8G6_0LJZXF$TOD`Y.png

                                               信息传递


可以想象,在求其他边缘概率时势必会有很多重复的消去过程,但是由于我们已经有了计算%6]45WTZD)%H}([2$KU7[V4.png的通项,我们就可以利用这个公式来消除计算上的重复,而Belief Propagation算法正是利用了这个通项解决了这个问题。


  1. Belief Propagation


Belief Propagation算法的思想是:


@4Z_D~H{0V$JU6YNDVM@@WL.png


Belief Propagation算法首先求所有的信息传递(收集或分发)的过程得到所有的7(WPHU41(MZD`~RQFW%9Q~6.png(图的遍历),然后套用公式计算边缘概率,总的来说也就是RU%`S@@{_BUJ%NWW0O1)4)5.png

U_]W9Y`_HS8C)@7}UY_~AUS.png

                  Belief Propagation算法的信息传递


Belief Propagation算法遍历图的一种方法(Sequential Implementation)如下:


①Get root,assume a is root;


②Collect Message:

3X`3)M)U3XOUXT71ZN{`U`P.png

③Distribute Message:


MX0}G42RDZ1}90G`II7YZWJ.png


还有另外一种遍历的方法(Parellel Implementation),这是一种应用在分布式计算中的方法,可以并行计算,这里不做过多介绍。


  1. Max-product


事实上,信念传播算法分为Max-product和 Sum-product,上面讲的属于Sum-product,与Sum-product不同的是Max-product只需要将把求和符号换成求最大值MBD)T@XH68QUF5W[0S{B250.png的符号即可。Max-product是 Sum-Product算法的改进,也是在HMM中应用到的 Viterbi算法的推⼴。


 8@9%GSHS~LAR74@]KRQ{AB1.png

                                                  无向树


Max-product的作用是用来求一个序列来使得后验概率最大,也就是:


)`3XI0N`G(0IL3OM@XZ12TS.png


求解过程如下:


15NS)E2VPLWQ@Q{Q[QII{45.png


这里也进行了一次类似收集信息的过程:


}9MCGHAJ(J3POU)2XNXZ(_X.png

                                          信息传递


@$9~%N8ZG2NW~5N5DWG~`E1.png

四、概念补充


  1. 道德图


我们常常想将有向图转为⽆向图,从⽽应⽤更⼀般的表达式。对于有向图中的三种结构,有不同的转换方法:


  • 链式(head to tail)


S55E)[UX68OFAOJ_ZK98C12.png

              head to tail


`I@(3U@6{A@3%WX5D6R5K2L.png


这说明A,B和B,C是团,因此可以直接去掉箭头:


FRMSO38}X02TL_TA~450I3H.png

                       无向图


  • V形(tail to tail)


1XYZK[P227`NCFS1F}DRS9W.png

                            tail to tail


_I%7JWZ49AE405QG4TE$GJH.png


这说明A,B和B,C是团,因此可以直接去掉箭头:


RE6{G9]D_8G4~VEVZF]5`05.png

                      无向图


  • 倒V形(head to head)


IBN[~$)[J%O5K]VUO`~VKGJ.png

                              head to head


PZ~OX[UUGS(O)S5F`%Q8}_0.png


这说明A,B,C是一个团,需要在A,C之间加一条线:


GC3JYF8FI@%D}ZIP}8SF)P5.png

               无向图


观察这三种情况可以将有向图到无向图的转换方法的步骤概括为:


①将每个节点的⽗节点两两相连


②将有向边替换为⽆向边


得到的无向图就是道德图。


  1. 因子图

对于⼀个有向图,可以通过引⼊环的⽅式,可以将其转换为⽆向图(Tree-like graph),这个图就叫做道德图。但是我们上⾯的 BP 算法只对⽆环图有效,通过因⼦图可以变为⽆环图。


联合概率的因子图分解方法为:


{LDI%XZT$0X}OJWT_GOZ]U3.png

其中:


O6}724{2VYCPV3QEFR$LP4C.png


有以下无向图:


ZTH(VGDD6V9HB8PCF_U4T{R.png

                       无向图


可以将其转换成一个简单的因子图:


9}N}3YOQK153$}ME{7]$}PW.png

                        因子图


AB81$NQ`GD[D0M7G1OG5][J.png

因子图不是唯一的,可以看做对因子分解的进一步分解,比如以下分解:


Z7KRAZW4{2TMAP$5J_89AV7.png

                             因子图


8GE`I4O%1K2`K5U(O@GUVYO.png

[XJ_]@CM5~AV}5JMQ_[%O9E.png

                                                          分层


也就是说因子图可以做到随机变量节点之间不直接相连,只与因子节点相连,因子节点只与变量节点相连。

相关文章
|
8天前
|
机器学习/深度学习 数据可视化 数据处理
机器学习在天气预报模型优化中的应用
机器学习在天气预报模型优化中的应用
|
10天前
|
机器学习/深度学习 数据采集 监控
算法金 | 选择最佳机器学习模型的 10 步指南
许多刚入门的学习者也面临着相似的挑战,特别是在项目启动初期的方向确定和结构规划上。本文意在提供一份全面指南,助你以正确的方法开展项目。 遵循本文提供的每一步至关重要(虽有少数例外)。就像不做饭或点餐就无法享用美食一样,不亲自动手构建模型,就无法实现模型部署。
38 7
算法金 | 选择最佳机器学习模型的 10 步指南
|
1天前
|
机器学习/深度学习 数据采集 人工智能
人工智能:构建自定义机器学习模型的步骤与技巧
【6月更文挑战第25天】构建自定义机器学习模型涉及明确问题、数据收集预处理、特征工程、模型选择训练、评估优化及部署监控。关键技巧包括选择适配的算法、重视数据预处理、精巧的特征工程、有效评估优化和适时的模型更新。通过这些步骤和技巧,可提升模型性能与泛化能力。
|
6天前
|
机器学习/深度学习 人工智能 算法
【机器学习】RLHF:在线方法与离线算法在大模型语言模型校准中的博弈
【机器学习】RLHF:在线方法与离线算法在大模型语言模型校准中的博弈
212 6
|
6天前
|
机器学习/深度学习 数据挖掘 Python
机器学习之pandas基础——pandas与概率论的简短碰面
机器学习之pandas基础——pandas与概率论的简短碰面
15 4
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】Transformer模型大小与性能探究
【机器学习】Transformer模型大小与性能探究
280 5
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】集成语音与大型语音模型等安全边界探索
【机器学习】集成语音与大型语音模型等安全边界探索
216 5
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】Chameleon多模态模型探究
【机器学习】Chameleon多模态模型探究
151 5
|
7天前
|
人工智能 自然语言处理 算法
阿里云PAI大模型评测最佳实践
在大模型时代,模型评测是衡量性能、精选和优化模型的关键环节,对加快AI创新和实践至关重要。PAI大模型评测平台支持多样化的评测场景,如不同基础模型、微调版本和量化版本的对比分析。本文为您介绍针对于不同用户群体及对应数据集类型,如何实现更全面准确且具有针对性的模型评测,从而在AI领域可以更好地取得成就。
|
7天前
|
机器学习/深度学习 数据采集 算法
DEL编码新药预测的多种机器学习模型对比
数据集描述 数据集中每个分子具有三个构建块。该数据集用于表示分子的三个构建块是否能够与蛋白质相结合,如果能够结合标记为binds为1,否则binds为0. 格式描述如下: • id- 我们用来识别分子结合靶标对的独特example_id。 • buildingblock1_smiles- 在SMILES中,第一个构建块的结构 • buildingblock2_smiles- 在SMILES中,第二个构建块的结构 • buildingblock3_smiles- 在SMILES中,第三个构建块的结构 • molecule_smiles- 完全组装的分子的结构,在SMILES中。这包括三个构建单元

热门文章

最新文章