Knowledge Graph Embedding: A Survey of Approaches and Applications[论文笔记]

  • KG embedding研究的出发点:KG的表示一般基于三元组(head entity, relation, tail entity),尽管能够有效的表示结构化数据,但是底层的本质上是符号表示,使得KG很难操作; KG embedding将KG中的成分映射到一个连续的矢量空间中,不仅保留KG中的固有结构,同时简化了处理

  • KG embedding研究主要分为两个阶段:

    • 阶段1:仅利用KG中的fact构建embedding, embedding只需要和每个单独fact匹配,对下游的一些任务not predictive enough

    • 阶段2:在阶段1的基础上,利用更多的信息形式,e.g.实体类型(entity type)、关系路径(relation path)、文本描述(textual description)、逻辑规则(logical rules),得到more predictive embeddings

  • 只基于facts的KG embedding 构建由3步组成:

    • step1: 表示entities和relations:

      • entity表示形式:

         *   矢量
        
         *   考虑entity的不确定性,利用多元高斯分布对entity进行建模
        
      • relation常被看成在矢量空间中的操作,表示形式:

         *   矢量
        
         *   矩阵
        
         *   张量
        
         *   多元高斯分布
        
         *   混合高斯(mixtures of Gaussians)
        
    • step2: 定义第一个打分函数

      • 每个fact(h,r,t)均对应一个score func f_r(h, t),在KG中观察到的facts得分高于未观察到的,根据score function定义方式不同,这种只基于facts的KG embedding技术可被分为以下两类:

        • translational distance models:使用基于距离的score func【目标优化函数】,这些模型均包含约束(e.g.强制vector embedding至少L2范数),这些约束在优化问题中被转化为正则项【正则项】

          • TransE及其扩展,实体/关系都是矢量空间中确定的点

            *   TransE:
            
                *   简单高效,通过学习分布式的词表示来捕捉语言规律,e.g.JamesCameron + DirectorOf ≈ Avatar
            
                *   处理一对多,多对一,多对多关系时有问题,e.g.一对多为例,AlfredHitchcock + DirectorOf ≈Psycho,Rebecca,RearWindow,一个导演对应多部电影,虽然这些电影属于不同实体,但是学到的矢量表示都是非常相似的,这是有问题的
            
            *   TransE改进策略:
            
                *   引入 Relation-Specific Entity Embeddings:
            
                    *   TransH:
            
                        *   改进TransE:引入 Relation-Specific Entity Embeddings,允许实体在不同的关系中有明显不同的表示。e.g.即使Psycho,Rebecca,RearWindow在给定DirectorOf 关系时,表示很相似,但给定其他关系时,表示可能相差很大
            
                        *   引入relation-specific超平面,每个关系r用矢量r表示,在一个以w_r为法向量的超平面上,实体h,t投射到该超平面上
            
                    *   TransR:
            
                        *   引入relation-specific 空间,而不是超平面;实体表示为实体空间的向量,每个关系关联到另外的关系空间,定义投影矩阵M_r(实体空间到关系空间)
            
                        *   每个关系都需要引入投影矩阵,不如TransE,TransH简单高效
            
                    *   TransD:
            
                        *   简化TransR,比TransR更高效。将投影矩阵分解为两个矢量乘积,引入额外的映射向量w_h,w_t, w_r
            
                    *   TranSparse:
            
                        *   简化TransR,强制投影矩阵的稀疏性
            
                *   relaxing translational requirement:放松h+r≈t的限制
            
                    *   TransM: 每个事实(三元组)关联一个权重,通过降低一对多,多对一,多对多关系的权重,TransM允许t在这些关系中远离h+r
            
                    *   ManifoldE: 放松约束关系,t约束在以h+r为质心,权重值为半径的超球体中
            
                    *   TransF: 放松约束关系,t约束在与h+r为同向即可
            
                    *   TransA: 为每个关系r引入对称非负矩阵,使用自适应Mahalanobis距离定义score
            
          • Gaussian Embeddings,实体/关系被看做随机变量

            *   KG2E:将实体和关系表示成从多元高斯分布中提取的随机向量
            
                *   使用 Kull-back-Leibler散度计算得分
            
                *   使用概率内积计算得分
            
            *   TransG: 实体h,t利用高斯分布建模,关系r认为可能有多重语义信息,被表示为混合高斯分布
            
          • 其他距离模型:

            *   UM(unstructured model)
            
                *   TransE的简化版本,令r = 0
            
                *   不能区分不同的关系
            
            *   SE(structured embedding):
            
                *   对每个关系r,使用两个不同的投影矩阵,分别用于head entity, tail entity
            
        • semantic matching models: 使用基于相似度的score func,通过匹配实体、关系见的潜在语义来衡量事实的合理性

          • RESCAL及其扩展

            *   RESCAL:
            
                *   也叫双线性模型,将实体h,t与一个vector关联来捕捉潜在语义,关系r与一个matrix关联来建模latent factors间的两两交互
            
                *   其score func捕捉到了所有h,t所有成分间的两两交互
            
            *   TATEC:
            
                *   不仅建模了h,r,t间3者交互,还定义了h,r/t,r间2者交互
            
            *   DisMult
            
                *   简化了RESCAL,将矩阵Mr限制为对角阵
            
                *   其score func捕捉到了h,t中相同维度上成分间的两两交互,减少了每个关系r所有的参数数量
            
                *   模型过于简单【对角矩阵使得实体可交换】,只能处理对称关系,对于一般的KG功能不够强大
            
            *   HolE(Holographic Embeddings)全息嵌入:
            
                *   将RESCAL的表现力与DisMult的简洁高效结合
            
                *   将实体、关系均表示为vector,进行Circular correlation,对pairwise interactions进行压缩,减少了每个关系r所有的参数数量,比RESCAL高效;且Circular correlation不能交换,可以像RESCAL一样,对非对称关系进行建模
            
            *   ComplEx(Complex Embeddings)复数嵌入:
            
                *   对DisMult的扩展,引入复数嵌入,可以更好建模非对称关系
            
                *   h,r,t不再依赖实数空间,而是依赖复数空间,非对称关系最终得到的事实会得到不同的score,这依赖相关实体对应的orders、
            
                *   共轭对称施加在embeddings时,HolE被视为ComplEx的一种特殊情况
            
            *   ANALOGY:
            
                *   扩展RESCAL,进一步对实体、关系中相似的属性建模
            
                *   已被证明DisMult、HolE、ComplEx均属于ANALOGY的一种特殊情况
            
          • 利用神经网络进行匹配

            *   SME: Semantic Matching Energy,
            
                *   在Input layer: 将fact三要素h,r,t映射为vector embeddings
            
                *   在Hidden layer:将关系r与head entity h结合得到g_u(h,r);将关系r与tail entity h结合得到g_v(r, t)
            
                *   score定义为g_u,g_v的点积
            
                *   根据g_u,g_v的形式不同,SME有两个版本:
            
                    *   SME(linear):
            
                    *   SME(bilinear)
            
            *   NTN: neural tensor network:
            
                *   在Input layer: 将fact三要素h,r,t映射为vector embeddings
            
                *   在Hidden layer:将h,t,和二者与特定关系张量Mr结合三者映射到一个非线性hidden layer
            
            *   SLM:single layer model:
            
                *   NTN的简化形式,将h,t对应的权重矩阵,bias置零,只保留NTN中的最后一个要素
            
            *   MLP: multi-lalyer perceptron:
            
                *   h,r,t均映射为单vector
            
                *   在Input layer上将三者拼接,映射到非线性hidden layers
            
            *   NAM:neural association model:(多隐层,其他都是单隐层)
            
                *   在Input layer: 将fact中h,r映射为vector embeddings后进行拼接,经过多隐层(激活函数:Relu)和t生成的embeddings乘积得到score
            
        • 模型的训练:

          • 一些先验知识:http://www.sohu.com/a/144575100_464088

            *   封闭世界假设(Closed World Assumption, CWA)
            
                  *   即如果我们在知识库中推不出来P或P的否定,就把P的否定加入知识库。有两种情况, CWA很有用. 一是可以当假设知识库中的知识是完全的时候. 例如, 在数据库中, 如果学生表中没有Peter, 则认为Peter不是学生. 二是当知道知识库的知识是不完全的, 如不足于回答一些问题, 但我们必须在不完全知识的情况下做出决定, 这时候CWA就有用了
            
            *   开放世界假设(Open World Assumption, OWA)
            
                  *   对推不出来的命题就很诚实地当作不知道这个命题的正确与否, 这样的后果就是知识库中能推导出来的结论大大减少
            
            *   在语义Web环境下, 因为Web的开放性, 相关的知识很可能分布在Web上不同的场所, 因此在语义Web上推理, 用CWA是很不恰当的. 例如, 如果在一个知识库中只说了hasFriend(Peter, Tom), 如果采用CWA, 就会得到结论: Peter只有一个朋友. 这当然是不合理的, 因为很可能在别的地方说了Peter还有其他的朋友. 所以, 如果要在语义Web中聚集不同来源的知识, 应该采用OWA. (有一种中庸之道: 局部封闭世界(Local Closed World), 这里不多说). 描述逻辑中的推理刚好是采用OWA的, 所以它的确适合作为语义Web的逻辑基础
            
          • 目标函数:

            *   logistic loss最小化
            
                    *   优势:对一些复杂的关系模式(如transitive relations)得到一些紧凑的表达方式
            
            *   pairwise ranking loss最小化
            
                    *   优势:不假设负样本一定是(命题)错误的,只是和正样本相比可能性小,使得positive facts得分要尽可能高于negative ones
            
            *   以上的目标函数中均包含约束项/正则项【不同的embedding模型不同】,已证明:logistic loss+semantic matching models(DisMult、ComplEx等)性能更好;pairwise ranking loss+translational distance models(TransE)性能更好
            
            *   优化方法:SGD+minibatch
            
    • step3: 学习entities和relations的表示

      • 解决对所有观测facts的合理性最大化(maximize plausibility)的最优化问题

【未完待续...】

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,542评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,596评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,021评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,682评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,792评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,985评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,107评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,845评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,299评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,612评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,747评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,441评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,072评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,828评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,069评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,545评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,658评论 2 350

推荐阅读更多精彩内容