引言
传统方法:
- 基于翻译的方法:如TransE、TransD、TransH、TransR等
- 使用外部信息,如:
- 实体类型
- 文本描述
- 逻辑规则
这些传统方法的缺点是:忽视了概念与实例之间的区别,这导致了以下问题:
- 概念表示不足:大多数方法将概念和实例都编码为向量,这无法明确表示概念和实例之间的差异
- 对于
isA
关系的敏感性不足:instanceOf
和subClassOf
(通常称为isA)是知识图谱中的两种特殊关系。
动机
层次概念:人们心中的概念是按层次组织的。因此,实例应该靠近它们所属的概念。
在TransC中,概念被编码为一个球体,实例作为向量在同一语义空间中,采用相对位置来模拟概念和实例之间的关系。
符号与概念
-
关系集合 R = { r e , r c } ∪ R l \mathcal{R}=\{r_e,r_c\}\cup\mathcal{R}_l R={ re,rc}∪Rl,其中 R l R_{l} Rl是实例之间的关系, r e r_e re是
instanceOf
关系, r c r_c rc是subClassOf
关系。 -
InstanceOf三元组集合 S e = { ( i , r e , c ) k } k = 1 n e , \mathcal{S_{e}} =\{(i,r_{e} ,c)_{k}\}^{n_{e}}_{k=1}, Se={(i,re,c)k}k=1ne,
其中 i ∈ I , c ∈ C , n e i \in \mathcal{I}, c \in C, n_{e} i∈I,c∈C,ne是 S e S_{e} Se的大小 -
SubClassOf三元组集合 S c = { ( c i , r c , c j ) k } k = 1 n c , \mathcal{S_{c}}=\{(c_{i},r_{c},c_{j})_{k}\}^{n_{c}}_{k=1}, Sc={(ci,rc,cj)k}k=1nc,
-
关系三元组: S l = { h , r , t } k = 1 n l \mathcal{S_{l}}=\{h,r,t\}_{k=1}^{n_{l}} Sl={ h,r,t}k=1nl
其中 h , t ∈ I h,t \in \mathcal{I} h,t∈I, r ∈ R l r \in \mathcal{R_{l}} r∈Rl。 -
概念:对于 c ∈ C c \in \mathcal{C} c∈C,我们学习一个球体 s ( p , m ) s(\mathbf{p},m) s(p,m),其中 p \mathbf{p} p是球心, m m m表示半径。
-
传递性:
InstanceOf-subClassOf
的传递性关系可以表示为下列等式 ( i , r e , c