基于概率语法的遗传编程中的语法规则学习
1. 评分系统与语法模型
在分析相关问题时,有一套特定的评分系统。对于某些元素(y)和(z),其得分(S(y) = S(z) = 1)。而对于树(T),其得分计算公式为:
(S(T) = k_{global}(T, T_L, T_R) × ((k_{local}(T, T_L) × S(T_L) + k_{local}(T, T_R) × S(T_R))))
其中,(k_{global}(T, T_L, T_R))默认值为(1),当(T_L)和(T_R)是完美子树且集合({Root(T_L), Root(T_R)})等于(Prec2(T))时为(2)。同样,(k_{local}(T, T_{subtree}))默认值为(1),当(Root(T_{subtree}) \in Prec2(T))且(T_{subtree})是完美子树时为(2),当(Root(T_{subtree}) \notin Prec2(T))时为(\frac{1}{3})。简单来说,(k_{global})和(k_{local})用于对树进行加分或减分。
程序以解析树的形式表示,解析树由分层概率上下文敏感语法(PCSG)推导而来,以强化语法关系。此外,语法规则中非终结符之间的概率依赖关系由贝叶斯网络捕获。用于不对称皇家树(ART)问题的分层PCSG包含八条规则,例如规则ST.5,箭头左侧的ST表示在推导任何非终结符ST(如ST6)时可以选择该规则,右侧给出规则的内容,终端用方括号括起来,如([C])是终端,ST6和ST7是非终结符。每个规则都附有一个贝叶斯网络,用于捕获该规则中非终结符之间的条件依赖关系。非终结符ST6(ST7同理)与一个随机变量相关联,用椭圆表示,它有七
超级会员免费看
订阅专栏 解锁全文
16

被折叠的 条评论
为什么被折叠?



