基于评分搜索的结构学习
根据评分选择最佳网络,为每一个网络赋一个评分(通过后验概率、贝叶斯信息准则BIC(Bayesian Information Criterion)、赤池信息准则AIC(Akaike Information Criterion)。)
搜索最佳评分的有向无环图,常用贪心法等启发式搜索方法。如典型的贪婪等价搜索算法(greedy equivance search,GES)。给定数据集 D={D1,D2,D3,...,DN}D = \{ {D_1},{D_2},{D_3},...,{D_N}\} D={D1,D2,D3,...,DN}
在搜索空间中找到一个结构 G*使得:G∗=argmaxG∈Gnscore(G){G^{\rm{*}}}{\rm{ = arg}}\mathop {{\rm{max}}}\limits_{G \in {G_n}} score(G)G∗=argG∈Gnmaxscore(G)
其中Gn为变量集V={X1,X2,X3,...,Xn}V = \{ {X_1},{X_2},{X_3},...,{X_n}\} V={X1,X2,X3,...,Xn}
在DAGs搜索空间中的所有可能结构。
基于评分搜索的结构学习把所有可能的结构视为定义域,衡量特定结构好坏的标准视为评分函数,将寻找最好结构的过程看成在定义域求最优的评分函数。
即在算法上,确定合适的评分函数的结构搜索策略,
结构搜索主要分为父集识别和结构优化两个步骤。
当前研究重点为结构优化部分,包括最近的基于神经网络的结构优化,也是对结构优化方法进行创新。
流程图如下图所示:
评分函数
评分函数分为两类:分别是贝叶斯评分函数,基于信息论的评分函数。
最广泛的评分函数为BDeu和BIC,但BDeu等传统的评分算法只能应用于完整的离散变量。
评分函数具有***分数可分解性***的重要属性:DAG的分数由每个变量Xi与其父集Πi{\Pi _i}Πi得到分数的总和构成,即score(G,D)=∑Xiscore(Xi,Πi,D)score(G,D) = \sum\limits_{{X_i}} {score({X_i},{\Pi _i},D)} score(G,D)=Xi∑score(Xi,Πi,D)
其中G为网络拓扑结构;P(G)为其先验概率;D为数据集。