发明名称 Ising图模型的区间传播推理方法
摘要 本发明公开了一种基于Ising图模型的区间传播推理方法,该方法的主要步骤:首先基于Ising图模型建立Ising均值场截枝计算树;然后基于Ising均值场截枝计算树运用均值场区间传播算法,给出根节点变量期望界。本发明该推理方法具有较低的计算复杂性,并通过变量期望界给出了有效的推理精度。
申请公布号 CN101551789A 申请公布日期 2009.10.07
申请号 CN200910068841.5 申请日期 2009.05.14
申请人 天津大学 发明人 廖士中;殷霞;陈亚瑞
分类号 G06F17/10(2006.01)I;G06F17/18(2006.01)I;G06F17/30(2006.01)I 主分类号 G06F17/10(2006.01)I
代理机构 天津市北洋有限责任专利代理事务所 代理人 江镇华
主权项 1.一种Ising图模型的区间传播推理方法,通过定义Ising均值场计算树,并在计算树上实现期望区间传播推理过程,其特征在于,包括下列步骤:(1)定义Ising均值场计算树:在Ising均值场推理下,变量簇c<sub>γ</sub>的计算树模型为一四元组T(D<sub>γ</sub>,R,M,Q),其中:1)D<sub>γ</sub>:以c<sub>γ</sub>为根节点的变量簇节点集D<sub>γ</sub>={c<sub>γ</sub>}∪Ch(c<sub>γ</sub>)∪Ch(Ch(c<sub>γ</sub>))∪…,其中,Ch(c<sub>γ</sub>)表示c<sub>γ</sub>的子节点集,Ch(c<sub>γ</sub>)={c<sub>β</sub>|x<sub>i</sub>∈c<sub>γ</sub>,x<sub>j</sub>∈c<sub>β</sub>,(i,j)∈E,γ≠β},Ch(Ch(c<sub>γ</sub>))表示变量集Ch(c<sub>γ</sub>)的子节点集合:<maths num="0001"><![CDATA[<math><mrow><mi>Ch</mi><mrow><mo>(</mo><mi>Ch</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>&gamma;</mi></msub><mo>)</mo></mrow><mo>)</mo></mrow><mo>=</mo><msub><mo>&cup;</mo><mrow><msub><mi>c</mi><mi>&beta;</mi></msub><mo>&Element;</mo><mi>Ch</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>&gamma;</mi></msub><mo>)</mo></mrow></mrow></msub><mi>Ch</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>&beta;</mi></msub><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>2)R:关系集R={&lt;c<sub>α</sub>,c<sub>β</sub>&gt;|c<sub>α</sub>∈D<sub>γ</sub>,c<sub>β</sub>∈Ch(c<sub>α</sub>)},其中,关系&lt;c<sub>α</sub>,c<sub>β</sub>&gt;表示c<sub>β</sub>是c<sub>α</sub>的子节点,3)M:计算树上的消息自底向上单向传播,记<maths num="0002"><![CDATA[<math><mrow><msub><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>out</mi></mrow></msub><mo>=</mo><mo>{</mo><msub><mi>&mu;</mi><mi>i</mi></msub><mo>|</mo><mi>i</mi><mo>&Element;</mo><msub><mi>V</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub><mo>}</mo></mrow></math>]]></maths>表示c<sub>α</sub>输出消息集,<maths num="0003"><![CDATA[<math><mrow><msub><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>in</mi></mrow></msub><mo>=</mo><msub><mo>&cup;</mo><mrow><msub><mi>c</mi><mi>&beta;</mi></msub><mo>&Element;</mo><mi>Ch</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>&alpha;</mi></msub><mo>)</mo></mrow></mrow></msub><msub><mi>M</mi><mrow><mi>&beta;</mi><mo>-</mo><mi>out</mi></mrow></msub></mrow></math>]]></maths>表示c<sub>α</sub>输入消息集,则M={M<sub>α-out</sub>|c<sub>α</sub>∈D<sub>γ</sub>},4)Q:概率分布集Q={q<sub>α</sub>(c<sub>α</sub>;θ′<sub>α</sub>)|c<sub>α</sub>∈D<sub>γ</sub>},且<maths num="0004"><![CDATA[<math><mrow><msub><mi>&theta;</mi><mi>ij</mi></msub><msub><mi>x</mi><mi>i</mi></msub><msub><mi>x</mi><mi>j</mi></msub><mo>&Proportional;</mo><mi>exp</mi><mo>{</mo><munder><mi>&Sigma;</mi><mrow><mi>i</mi><mo>&Element;</mo><msub><mi>V</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub></mrow></munder><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mi>i</mi></msub><msub><mi>x</mi><mi>i</mi></msub><mo>+</mo><munder><mi>&Sigma;</mi><mrow><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>E</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub></mrow></munder><msub><mi>&theta;</mi><mi>ij</mi></msub><msub><mi>x</mi><mi>i</mi></msub><msub><mi>x</mi><mi>j</mi></msub><mo>}</mo><mo>,</mo></mrow></math>]]></maths>其中,<maths num="0005"><![CDATA[<math><mrow><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mi>i</mi></msub><mo>=</mo><msub><mi>&theta;</mi><mi>i</mi></msub><mo>+</mo><munder><mi>&Sigma;</mi><mrow><msub><mi>&mu;</mi><mi>t</mi></msub><mo>&Element;</mo><msub><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>in</mi></mrow></msub></mrow></munder><msub><mi>&theta;</mi><mi>it</mi></msub><msub><mi>&mu;</mi><mi>t</mi></msub><mo>,</mo></mrow></math>]]></maths>(2)定义Ising均值场截枝计算树:Ising均值场推理下,变量簇c<sub>γ</sub>的剪枝计算树模型是一四元组T<sub>c</sub>(D<sub>γ</sub>,R,M,Q),其中:1)D<sub>γ</sub>:以c<sub>γ</sub>为根节点的变量簇节点集D<sub>γ</sub>={c<sub>γ</sub>}∪CCh(c<sub>γ</sub>)∪CCh(CCh(c<sub>γ</sub>))∪…,其中,CCh(c<sub>γ</sub>)表示c<sub>γ</sub>的子节点集,CCh(c<sub>γ</sub>)=Ch(c<sub>γ</sub>)/An(c<sub>γ</sub>),CCh(CCh(c<sub>γ</sub>))表示变量集CCh(c<sub>γ</sub>)的截枝子节点集:<maths num="0006"><![CDATA[<math><mrow><mi>CCh</mi><mrow><mo>(</mo><mi>CCh</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>&gamma;</mi></msub><mo>)</mo></mrow><mo>)</mo></mrow><mo>=</mo><msub><mo>&cup;</mo><mrow><msub><mi>c</mi><mi>&beta;</mi></msub><mo>&Element;</mo><mi>CCh</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>&gamma;</mi></msub><mo>)</mo></mrow></mrow></msub><mi>CCh</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>&beta;</mi></msub><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>2)R:关系集R={&lt;c<sub>α</sub>,c<sub>β</sub>&gt;|c<sub>α</sub>∈D<sub>γ</sub>,c<sub>β</sub>∈CCh(c<sub>α</sub>)},其中,关系&lt;c<sub>α</sub>,c<sub>β</sub>&gt;表示c<sub>β</sub>是c<sub>α</sub>的子节点,3)M:计算树上的消息自底向上单向传播,记<maths num="0007"><![CDATA[<math><mrow><msub><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>out</mi></mrow></msub><mo>=</mo><mo>{</mo><msub><mi>&mu;</mi><mi>i</mi></msub><mo>|</mo><mi>i</mi><mo>&Element;</mo><msub><mi>V</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub><mo>}</mo></mrow></math>]]></maths>表示c<sub>α</sub>输出消息集,<maths num="0008"><![CDATA[<math><mrow><msub><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>in</mi></mrow></msub><mo>=</mo><msub><mo>&cup;</mo><mrow><msub><mi>c</mi><mi>&beta;</mi></msub><mo>&Element;</mo><mi>Ch</mi><mrow><mo>(</mo><msub><mi>c</mi><mi>&alpha;</mi></msub><mo>)</mo></mrow></mrow></msub><msub><mi>M</mi><mrow><mi>&beta;</mi><mo>-</mo><mi>out</mi></mrow></msub></mrow></math>]]></maths>表示c<sub>α</sub>输入消息集,则M={M<sub>α-out</sub>|c<sub>α</sub>∈D<sub>γ</sub>},4)Q:概率分布集Q={q<sub>α</sub>(c<sub>α</sub>;θ′<sub>α</sub>)|c<sub>α</sub>∈D<sub>γ</sub>},且<maths num="0009"><![CDATA[<math><mrow><msub><mi>&theta;</mi><mi>ij</mi></msub><msub><mi>x</mi><mi>i</mi></msub><msub><mi>x</mi><mi>j</mi></msub><mo>&Proportional;</mo><mi>exp</mi><mo>{</mo><munder><mi>&Sigma;</mi><mrow><mi>i</mi><mo>&Element;</mo><msub><mi>V</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub></mrow></munder><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mi>i</mi></msub><msub><mi>x</mi><mi>i</mi></msub><mo>+</mo><munder><mi>&Sigma;</mi><mrow><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>E</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub></mrow></munder><msub><mi>&theta;</mi><mi>ij</mi></msub><msub><mi>x</mi><mi>i</mi></msub><msub><mi>x</mi><mi>j</mi></msub><mo>}</mo><mo>,</mo></mrow></math>]]></maths>其中,<maths num="0010"><![CDATA[<math><mrow><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mi>i</mi></msub><mo>=</mo><msub><mi>&theta;</mi><mi>i</mi></msub><mo>+</mo><munder><mi>&Sigma;</mi><mrow><msub><mi>&mu;</mi><mi>t</mi></msub><mo>&Element;</mo><msub><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>in</mi></mrow></msub></mrow></munder><msub><mi>&theta;</mi><mi>it</mi></msub><msub><mi>&mu;</mi><mi>t</mi></msub><mo>;</mo></mrow></math>]]></maths>(3)在截枝计算树上,根据c<sub>α</sub>的输入消息区间计算该变量簇的概率分布区间,令M<sub>α-in</sub><sup>int.</sup>表示变量簇c<sub>α</sub>输入消息区间的集合,即<maths num="0011"><![CDATA[<math><mrow><msubsup><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>in</mi></mrow><mrow><mi>int</mi><mo>.</mo></mrow></msubsup><mo>=</mo><mo>{</mo><mo>[</mo><msubsup><mi>&mu;</mi><mi>t</mi><mi>l</mi></msubsup><mo>,</mo><msubsup><mi>&mu;</mi><mi>t</mi><mi>u</mi></msubsup><mo>]</mo><mo>|</mo><mi>t</mi><mo>&Element;</mo><msub><mi>V</mi><msub><mi>c</mi><mi>&beta;</mi></msub></msub><mo>,</mo></mrow></math>]]></maths>c<sub>β</sub>∈Ch(c<sub>α</sub>)},变量簇c<sub>α</sub>概率分布的参数区间为<maths num="0012"><![CDATA[<math><mrow><msup><msub><mi>&theta;</mi><mi>i</mi></msub><mrow><mo>&prime;</mo><mi>l</mi></mrow></msup><mo>=</mo><mi>min</mi><mo>{</mo><msub><mi>&theta;</mi><mi>i</mi></msub><mo>+</mo><munder><mi>&Sigma;</mi><mrow><msub><mi>&mu;</mi><mi>t</mi></msub><mo>&Element;</mo><msub><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>in</mi></mrow></msub></mrow></munder><msub><mi>&theta;</mi><mi>it</mi></msub><msub><mi>&mu;</mi><mi>t</mi></msub><mo>|</mo><msubsup><mi>&mu;</mi><mi>t</mi><mi>l</mi></msubsup><mo>&le;</mo><msub><mi>&mu;</mi><mi>t</mi></msub><mo>&le;</mo><msubsup><mi>&mu;</mi><mi>t</mi><mi>u</mi></msubsup><mo>}</mo><mo>,</mo></mrow></math>]]></maths><maths num="0013"><![CDATA[<math><mrow><msup><msub><mi>&theta;</mi><mi>i</mi></msub><mrow><mo>&prime;</mo><mi>u</mi></mrow></msup><mo>=</mo><mi>max</mi><mo>{</mo><msub><mi>&theta;</mi><mi>i</mi></msub><mo>+</mo><munder><mi>&Sigma;</mi><mrow><msub><mi>&mu;</mi><mi>t</mi></msub><mo>&Element;</mo><msub><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>in</mi></mrow></msub></mrow></munder><msub><mi>&theta;</mi><mi>it</mi></msub><msub><mi>&mu;</mi><mi>t</mi></msub><mo>|</mo><msubsup><mi>&mu;</mi><mi>t</mi><mi>l</mi></msubsup><mo>&le;</mo><msub><mi>&mu;</mi><mi>t</mi></msub><mo>&le;</mo><msubsup><mi>&mu;</mi><mi>t</mi><mi>u</mi></msubsup><mo>}</mo><mo>,</mo></mrow></math>]]></maths><maths num="0014"><![CDATA[<math><mrow><msup><msub><mi>&theta;</mi><mi>&alpha;</mi></msub><mrow><mo>&prime;</mo><mi>l</mi></mrow></msup><mo>=</mo><mo>{</mo><msup><msub><mi>&theta;</mi><mi>i</mi></msub><mrow><mo>&prime;</mo><mi>l</mi></mrow></msup><mo>,</mo><msub><mi>&theta;</mi><mi>ij</mi></msub><mo>|</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>&Element;</mo><msub><mi>V</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>E</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub><mo>}</mo><mo>,</mo></mrow></math>]]></maths><maths num="0015"><![CDATA[<math><mrow><msup><msub><mi>&theta;</mi><mi>&alpha;</mi></msub><mrow><mo>&prime;</mo><mi>u</mi></mrow></msup><mo>=</mo><mo>{</mo><msup><msub><mi>&theta;</mi><mi>i</mi></msub><mrow><mo>&prime;</mo><mi>u</mi></mrow></msup><mo>,</mo><msub><mi>&theta;</mi><mi>ij</mi></msub><mo>|</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>&Element;</mo><msub><mi>V</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>E</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub><mo>}</mo><mo>.</mo></mrow></math>]]></maths>令A={a<sub>1</sub>,a<sub>2</sub>,…},B={b<sub>1</sub>,b<sub>2</sub>,…}表示元素一一对应的等势集合,且A≤B={a<sub>i</sub>≤b<sub>i</sub>|i=1,2,…},则变量簇节点c<sub>α</sub>的概率分布区间为<maths num="0016"><![CDATA[<math><mrow><mo>{</mo><msub><mi>q</mi><mi>&alpha;</mi></msub><mrow><mo>(</mo><msub><mi>c</mi><mi>&alpha;</mi></msub><mo>;</mo><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mi>&alpha;</mi></msub><mo>)</mo></mrow><mo>|</mo><msup><msub><mi>&theta;</mi><mi>&alpha;</mi></msub><mrow><mo>&prime;</mo><mi>l</mi></mrow></msup><mo>&le;</mo><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mi>&alpha;</mi></msub><mo>&le;</mo><msup><msub><mi>&theta;</mi><mi>&alpha;</mi></msub><mrow><mo>&prime;</mo><mi>u</mi></mrow></msup><mo>}</mo><mo>;</mo></mrow></math>]]></maths>(4)基于变量簇的概率分布区间,利用和积算法计算变量簇c<sub>α</sub>的输出消息区间:在概率分布q<sub>α</sub>(c<sub>α</sub>;θ′<sub>α</sub>)上运行和积算法计算变量x<sub>i</sub>∈c<sub>α</sub>的期望μ<sub>i</sub>,即μ<sub>i</sub>=Sum-Prod(q<sub>α</sub>(c<sub>α</sub>;θ′<sub>α</sub>)),当给定参数θ′<sub>i</sub>取值区间时,μ<sub>i</sub>的极值取在参数区间的端点处,即:<maths num="0017"><![CDATA[<math><mrow><msubsup><mi>&mu;</mi><mi>i</mi><mi>l</mi></msubsup><mo>=</mo><mi>min</mi><mo>{</mo><mi>Sum</mi><mo>-</mo><mi>Prod</mi><mrow><mo>(</mo><msub><mi>q</mi><mi>&alpha;</mi></msub><mrow><mo>(</mo><msub><mi>c</mi><mi>&alpha;</mi></msub><mo>;</mo><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mi>&alpha;</mi></msub><mo>)</mo></mrow><mo>)</mo></mrow><mo>|</mo><mrow><mo>(</mo><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mn>1</mn></msub><mo>,</mo><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mn>2</mn></msub><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>)</mo></mrow><mo>&Element;</mo><mo>{</mo><msup><msub><mi>&theta;</mi><mn>1</mn></msub><mrow><mo>&prime;</mo><mi>l</mi></mrow></msup><mo>,</mo><msup><msub><mi>&theta;</mi><mn>1</mn></msub><mrow><mo>&prime;</mo><mi>u</mi></mrow></msup><mo>}</mo><mo>&times;</mo><mo>{</mo><msup><msub><mi>&theta;</mi><mn>2</mn></msub><mrow><mo>&prime;</mo><mi>l</mi></mrow></msup><mo>,</mo><msup><msub><mi>&theta;</mi><mn>2</mn></msub><mrow><mo>&prime;</mo><mi>u</mi></mrow></msup><mo>}</mo><mo>&times;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>}</mo><mo>,</mo></mrow></math>]]></maths><maths num="0018"><![CDATA[<math><mrow><msubsup><mi>&mu;</mi><mi>i</mi><mi>u</mi></msubsup><mo>=</mo><mi>max</mi><mo>{</mo><mi>Sum</mi><mo>-</mo><mi>Prod</mi><mrow><mo>(</mo><msub><mi>q</mi><mi>&alpha;</mi></msub><mrow><mo>(</mo><msub><mi>c</mi><mi>&alpha;</mi></msub><mo>;</mo><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mi>&alpha;</mi></msub><mo>)</mo></mrow><mo>)</mo></mrow><mo>|</mo><mrow><mo>(</mo><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mn>1</mn></msub><mo>,</mo><msub><msup><mi>&theta;</mi><mo>&prime;</mo></msup><mn>2</mn></msub><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>)</mo></mrow><mo>&Element;</mo><mo>{</mo><msup><msub><mi>&theta;</mi><mn>1</mn></msub><mrow><mo>&prime;</mo><mi>l</mi></mrow></msup><mo>,</mo><msup><msub><mi>&theta;</mi><mn>1</mn></msub><mrow><mo>&prime;</mo><mi>u</mi></mrow></msup><mo>}</mo><mo>&times;</mo><mo>{</mo><msup><msub><mi>&theta;</mi><mn>2</mn></msub><mrow><mo>&prime;</mo><mi>l</mi></mrow></msup><mo>,</mo><msup><msub><mi>&theta;</mi><mn>2</mn></msub><mrow><mo>&prime;</mo><mi>u</mi></mrow></msup><mo>}</mo><mo>&times;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>}</mo><mo>,</mo></mrow></math>]]></maths>则变量簇节点c<sub>α</sub>输出消息区间集合为<maths num="0019"><![CDATA[<math><mrow><msubsup><mi>M</mi><mrow><mi>&alpha;</mi><mo>-</mo><mi>out</mi></mrow><mrow><mi>int</mi><mo>.</mo></mrow></msubsup><mo>=</mo><mo>{</mo><mo>[</mo><msubsup><mi>&mu;</mi><mi>i</mi><mi>l</mi></msubsup><mo>,</mo><msubsup><mi>&mu;</mi><mi>i</mi><mi>u</mi></msubsup><mo>]</mo><mi>i</mi><mo>&Element;</mo><msub><mi>V</mi><msub><mi>c</mi><mi>&alpha;</mi></msub></msub><mo>}</mo><mo>,</mo></mrow></math>]]></maths>计算时,根据底层变量簇节点输入消息的取值区间,自底向上逐层进行消息区间传播计算出根变量簇变量期望区间。
地址 300072天津市南开区卫津路92号天津大学