基于变分推断和张量神经网络的知识库补全方法与流程

文档序号:13760889阅读:来源:国知局
基于变分推断和张量神经网络的知识库补全方法与流程

技术特征:

1.基于变分推断和张量神经网络的知识库补全方法,其特征在于,包括以下步骤:

S1、根据知识库中的三元组(ei,ej,rk),构造张量Y;

S2、根据张量Y,在一个隐含张量X的条件下构造一个似然函数p(Y|X);

S3、将隐含张量X中的每个元素xijk用两层神经网络表示;

S4、给三元组(ei,ej,rk)中的隐含实体变量和隐含关系变量一个高斯先验;

S5、根据贝叶斯框架,假设三元组(ei,ej,rk)中的隐含实体变量和隐含关系变量的后验分布为高斯分布;

S6、根据变分推断,最大化ELOB来近似后验高斯分布,采用SGVB方法优化ELOB,并用随机梯度求解。

2.根据权利要求1所述的基于变分推断和张量神经网络的知识库补全方法,其特征在于,所述步骤S1具体为:

假设知识库中的实体个数为N,关系个数为M,构造的张量Y∈RN×N×M,RN×N×M为维数是N×N×M的三维实数空间;若知识库中三元组(ei,ej,rk)存在,则张量Y的各维度上的下标对应的元素yijk为1,否则yijk为0。

3.根据权利要求2所述的基于变分推断和张量神经网络的知识库补全方法,其特征在于,所述步骤S2具体为:

根据张量Y,在一个隐含张量X的条件下构造一个似然函数p(Y|X):

<mrow> <mi>p</mi> <mrow> <mo>(</mo> <mi>Y</mi> <mo>|</mo> <mi>X</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mo>&Pi;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <munderover> <mo>&Pi;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <munderover> <mo>&Pi;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <msup> <mrow> <mo>&lsqb;</mo> <mi>B</mi> <mi>e</mi> <mi>r</mi> <mrow> <mo>(</mo> <msub> <mi>y</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>k</mi> </mrow> </msub> <mo>|</mo> <mi>&sigma;</mi> <mo>(</mo> <mrow> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>k</mi> </mrow> </msub> <mo>;</mo> <mi>&alpha;</mi> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>&rsqb;</mo> </mrow> <msub> <mi>I</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>k</mi> </mrow> </msub> </msup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>

其中Ber(yijk|σ(xijk;α))是伯努利分布,它的均值是σ(xijk;α),而σ(xijk;α)是sigmoid函数,具体形式为Iijk是一个指示变量,三元组(ei,ej,rk)在训练数据中存在的话,Iijk值为1,否则Iijk值为0。

4.根据权利要求3所述的基于变分推断和张量神经网络的知识库补全方法,其特征在于,所述步骤S3具体为:

将隐含张量X中的每个元素xijk用两层神经网络表示,具体表示为:

xijk=wThijk+b0 (2)

其中w为权重向量,b0表示一个线性偏差;ei,ej,rk∈Rd×1,b∈RK×1,w∈RK×d,W1,W2,W3∈RK×d,K为关系用向量表示之后的维度,d为实体用向量表示之后的维度;是神经网络表示中的权重和偏差;f(·)是激活函数。

5.根据权利要求4所述的基于变分推断和张量神经网络的知识库补全方法,其特征在于,所述步骤S4具体为:

三元组(ei,ej,rk)中每个隐含实体变量和每个隐含关系变量都有先验知识,假设隐含实体变量和隐含关系变量均为高斯分布,具体形式如下:

<mrow> <mi>p</mi> <mrow> <mo>(</mo> <msub> <mi>e</mi> <mi>i</mi> </msub> <mo>|</mo> <msub> <mi>&mu;</mi> <mi>i</mi> </msub> <mo>,</mo> <msub> <mi>&lambda;</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mi>N</mi> <mrow> <mo>(</mo> <msub> <mi>e</mi> <mi>i</mi> </msub> <mo>|</mo> <msub> <mi>&mu;</mi> <mi>E</mi> </msub> <mo>,</mo> <mi>d</mi> <mi>i</mi> <mi>a</mi> <mi>g</mi> <mo>(</mo> <msubsup> <mi>&lambda;</mi> <mi>E</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>)</mo> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>p</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>k</mi> </msub> <mo>|</mo> <msub> <mi>&mu;</mi> <mi>k</mi> </msub> <mo>,</mo> <msub> <mi>&lambda;</mi> <mi>k</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mi>N</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>k</mi> </msub> <mo>|</mo> <msub> <mi>&mu;</mi> <mi>R</mi> </msub> <mo>,</mo> <mi>d</mi> <mi>i</mi> <mi>a</mi> <mi>g</mi> <mo>(</mo> <msubsup> <mi>&lambda;</mi> <mi>R</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msubsup> <mo>)</mo> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow>

其中,p(·)为先验的概率密度函数,N(·)为高斯分布的概率密度函数;μii分别表示ei的先验概率密度函数的参数,其值分别为μE,μkk分别表示rk的先验概率密度函数的参数,其值分别为μR,分别表示高斯分布的协方差矩阵。

6.根据权利要求5所述的基于变分推断和张量神经网络的知识库补全方法,其特征在于,所述步骤S5具体为:

根据贝叶斯框架,三元组(ei,ej,rk)中每个隐含实体变量和每个隐含关系变量的后验分布服从高斯分布,具体形式如下:

<mrow> <mi>q</mi> <mrow> <mo>(</mo> <msub> <mi>e</mi> <mi>i</mi> </msub> <mo>|</mo> <msub> <mover> <mi>&mu;</mi> <mo>~</mo> </mover> <mi>i</mi> </msub> <mo>,</mo> <msub> <mover> <mi>&lambda;</mi> <mo>~</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mi>N</mi> <mrow> <mo>(</mo> <msub> <mi>e</mi> <mi>i</mi> </msub> <mo>|</mo> <msub> <mover> <mi>&mu;</mi> <mo>~</mo> </mover> <mi>i</mi> </msub> <mo>,</mo> <mi>d</mi> <mi>i</mi> <mi>a</mi> <mi>g</mi> <mo>(</mo> <mrow> <msup> <msub> <mover> <mi>&lambda;</mi> <mo>~</mo> </mover> <mi>i</mi> </msub> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>q</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>k</mi> </msub> <mo>|</mo> <msub> <mover> <mi>&mu;</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mo>,</mo> <msub> <mover> <mi>&lambda;</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mi>N</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>k</mi> </msub> <mo>|</mo> <msub> <mover> <mi>&mu;</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mo>,</mo> <mi>d</mi> <mi>i</mi> <mi>a</mi> <mi>g</mi> <mo>(</mo> <mrow> <msup> <msub> <mover> <mi>&lambda;</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>6</mn> <mo>)</mo> </mrow> </mrow>

其中,q(·)为后验的概率密度函数,N(·)为高斯分布的概率密度函数;分别表示ei的后验概率密度函数的参数,分别表示rk的后验概率密度函数的参数;分别表示高斯分布的协方差矩阵。

7.根据权利要求6所述的基于变分推断和张量神经网络的知识库补全方法,其特征在于,所述步骤S6具体为:

根据变分推断,近似后验高斯分布的时候需要最大化下界ELOB,表示为:

logp(xi|θ)≥L(q(z|xi,φ),θ) (7)

其中xi代表的是第i个数据,L(·)代表的是最大化下界ELOB函数,θ为ELOB的参数,z表示隐含变量,φ为z后验概率密度函数的参数;

<mrow> <mi>L</mi> <mrow> <mo>(</mo> <mi>q</mi> <mo>(</mo> <mrow> <mi>z</mi> <mo>|</mo> <msup> <mi>x</mi> <mi>i</mi> </msup> <mo>,</mo> <mi>&phi;</mi> </mrow> <mo>)</mo> <mo>,</mo> <mi>&theta;</mi> <mo>)</mo> </mrow> <mo>=</mo> <mo>-</mo> <mi>K</mi> <mi>L</mi> <mrow> <mo>(</mo> <mi>q</mi> <mo>(</mo> <mrow> <mi>z</mi> <mo>|</mo> <msup> <mi>x</mi> <mi>i</mi> </msup> <mo>,</mo> <mi>&phi;</mi> </mrow> <mo>)</mo> <mo>|</mo> <mo>|</mo> <mi>p</mi> <mo>(</mo> <mrow> <mi>z</mi> <mo>|</mo> <mi>&theta;</mi> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>E</mi> <mrow> <mi>q</mi> <mrow> <mo>(</mo> <mi>z</mi> <mo>|</mo> <msup> <mi>x</mi> <mi>i</mi> </msup> <mo>,</mo> <mi>&phi;</mi> <mo>)</mo> </mrow> </mrow> </msub> <mo>&lsqb;</mo> <mi>log</mi> <mi> </mi> <mi>q</mi> <mrow> <mo>(</mo> <mi>z</mi> <mo>|</mo> <msup> <mi>x</mi> <mi>i</mi> </msup> <mo>,</mo> <mi>&phi;</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>8</mn> <mo>)</mo> </mrow> </mrow>

采用SGVB方法将ELOB第二项期望项进行简化,引入一个可微的转换和噪声ε,形式如下:z=gφ(ε),ε~p(ε),则公式(8)可重新表示为:

<mrow> <mi>L</mi> <mrow> <mo>(</mo> <mrow> <mi>q</mi> <mrow> <mo>(</mo> <mrow> <mi>z</mi> <mo>|</mo> <msup> <mi>x</mi> <mi>i</mi> </msup> <mo>,</mo> <mi>&phi;</mi> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>&theta;</mi> </mrow> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mn>1</mn> <mi>L</mi> </mfrac> <munderover> <mi>&Sigma;</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <mi>log</mi> <mi> </mi> <mi>p</mi> <mrow> <mo>(</mo> <mrow> <msup> <mi>x</mi> <mi>i</mi> </msup> <mo>|</mo> <msup> <mi>z</mi> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>,</mo> <mi>l</mi> </mrow> <mo>)</mo> </mrow> </msup> <mo>,</mo> <mi>&theta;</mi> </mrow> <mo>)</mo> </mrow> <mo>-</mo> <mi>K</mi> <mi>L</mi> <mrow> <mo>(</mo> <mrow> <mi>q</mi> <mrow> <mo>(</mo> <mrow> <mi>z</mi> <mo>|</mo> <msup> <mi>x</mi> <mi>i</mi> </msup> <mo>,</mo> <mi>&phi;</mi> </mrow> <mo>)</mo> </mrow> <mo>|</mo> <mo>|</mo> <mi>p</mi> <mrow> <mo>(</mo> <mrow> <mi>z</mi> <mo>|</mo> <mi>&theta;</mi> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>9</mn> <mo>)</mo> </mrow> </mrow>

其中z(i,l)=gφ(ε),ε~p(ε);假设z=gφ(ε)=μ+diag(λ-1/2)ε,下界ELOB形式变为:

<mrow> <mtable> <mtr> <mtd> <mrow> <mi>L</mi> <mrow> <mo>(</mo> <mrow> <mi>&Theta;</mi> <mo>,</mo> <mi>&Phi;</mi> <mo>|</mo> <mi>Y</mi> </mrow> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <mfrac> <msub> <mi>I</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>k</mi> </mrow> </msub> <mi>L</mi> </mfrac> <mi>log</mi> <mi> </mi> <mi>B</mi> <mi>e</mi> <mi>r</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>y</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>k</mi> </mrow> </msub> <mo>|</mo> <msup> <mi>&sigma;</mi> <mrow> <mo>(</mo> <mi>l</mi> <mo>)</mo> </mrow> </msup> <mrow> <mo>(</mo> <mrow> <msub> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> <mi>k</mi> </mrow> </msub> <mo>;</mo> <mi>&alpha;</mi> </mrow> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>-</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <mi>K</mi> <mi>L</mi> <mrow> <mo>&lsqb;</mo> <mrow> <mi>q</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>e</mi> <mi>i</mi> </msub> <mo>|</mo> <msub> <mover> <mi>&mu;</mi> <mo>~</mo> </mover> <mi>i</mi> </msub> <mo>,</mo> <msub> <mover> <mi>&lambda;</mi> <mo>~</mo> </mover> <mi>i</mi> </msub> </mrow> <mo>)</mo> </mrow> <mo>|</mo> <mo>|</mo> <mi>p</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>e</mi> <mi>i</mi> </msub> <mo>|</mo> <msub> <mi>&mu;</mi> <mi>E</mi> </msub> <mo>,</mo> <msub> <mi>&lambda;</mi> <mi>E</mi> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>-</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <mi>K</mi> <mi>L</mi> <mrow> <mo>&lsqb;</mo> <mrow> <mi>q</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>e</mi> <mi>j</mi> </msub> <mo>|</mo> <msub> <mover> <mi>&mu;</mi> <mo>~</mo> </mover> <mi>j</mi> </msub> <mo>,</mo> <msub> <mover> <mi>&lambda;</mi> <mo>~</mo> </mover> <mi>j</mi> </msub> </mrow> <mo>)</mo> </mrow> <mo>|</mo> <mo>|</mo> <mi>p</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>e</mi> <mi>j</mi> </msub> <mo>|</mo> <msub> <mi>&mu;</mi> <mi>E</mi> </msub> <mo>,</mo> <msub> <mi>&lambda;</mi> <mi>E</mi> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>-</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <mi>K</mi> <mi>L</mi> <mrow> <mo>&lsqb;</mo> <mrow> <mi>q</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>r</mi> <mi>k</mi> </msub> <mo>|</mo> <msub> <mover> <mi>&mu;</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mo>,</mo> <msub> <mover> <mi>&lambda;</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> </mrow> <mo>)</mo> </mrow> <mo>|</mo> <mo>|</mo> <mi>p</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>e</mi> <mi>k</mi> </msub> <mo>|</mo> <msub> <mi>&mu;</mi> <mi>R</mi> </msub> <mo>,</mo> <msub> <mi>&lambda;</mi> <mi>R</mi> </msub> </mrow> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> </mrow> </mtd> </mtr> </mtable> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>10</mn> <mo>)</mo> </mrow> </mrow>

其中分别表示ej的后验概率密度函数的参数,μER值为0,λER设定为I;

采用随机梯度上升算法求解,不断更新参数Θ,Φ,直到收敛停止。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1