这几个模型都是KG表示的经典模型,关于如何对三元组建模Embedding。以下第一个表格是关于各类建模方法中,关系是否能满足一些特性进行的汇总。
对称性:例如朋友关系。如果有h(r , t),一定有h(t , r);
反对称性:例如购买关系与出售关系。如果有h1(r, t) ,一定有h2(t ,r); 【h1和 h2是相反方向的一对向量】
传递性:例如亲属关系,父亲的父亲是爷爷。如果有h1(r , t) 和h2(t, y),一定有h3(r , y)
一对N:例如教学关系,一个老师可能教很多学生。
模型名称\能满足边的特性 | 对称性 | 反对称性 | 传递性 | 一对N |
---|---|---|---|---|
TransE | × | √ | √ | × |
TransR | √ | √ | √ | √ |
ComplEX | √ | √ | × | √ |
ConvKB | √ | √ | √ | √ |
基础假设:(h , r , t)三元组如果为真,有:h + r ≈ t;如果为假,有:h + r ≠ t
损失函数:f = - || h + r - t ||
显然满足反对称性、传递性,不满足对称性。关于1对N关系的建模:在一个空间里,一个h,一个r,只能对应一个t。
基础假设:(h , r , t)三元组中,r是个映射,通过r将h和t映射到高维空间。如果(h, r, t)为真,有h
+ r = t
损失函数:f = - || h+ r - t
|| = - || Wh + r - Wt||
显然满足反对称性和传递性;对称性可以通过将h和t映射到高维空间的同一点解决问题;1对N,可以通过将不同的t映射到高维空间的同一点t`解决问题。
ComplEX是Distmul的改进。
前提:采用Bilinear Model,该模型的打分函数为f (h,t)= hT·r·t
基础假设:采用复数u = a + bi的方式表示h和t。
打分函数:因此,对于该function,f (h,t)= hT·r·(t),t指的是t复数域上的共轭复数。反对称性:通过对 hT·r·(~t)的高打分+ (~h)T·r·t低打分训练
对称性:通过把虚部设置为0即可
传递性:不满足,可以通过点积的性质进行简单证明,
传递性建模为:如果有a·b和b·c,是否可以推算出a·c。用(x1,y1)表示a,(x2,y2)表示b,(x3,y3)表示c。随意假设数值,因此有公式如下:
x1x2 + y1y2 = 1
x2x3 + y2y3 = 2
这两个公式无法计算出x1x3+y1y3。
一对多:t1和t2在h上的投影大小相同即可。
前提假设:(h, r, t)每个都是K维向量,将他们拼接为一个K3的新向量V。V和3个13的卷积核(矩阵是33)做卷积,得到了三个k1的向量。3个向量拼接起来,得到一个3k*1的向量。
打分函数:f(h ,r, t) = concat( g(vh, vr, vt) *Ω)·w,Ω和w是权重参数,*代表卷积操作,g代表激活函数。通过不同卷积核和矩阵运算,可以实现以下性质:
对称性:
反对称性:ConvKB如果g是|x|那就是transE,可以实现。
传递性:
1对N:通过卷积核的投影dot点积可以实现1*N关系。