知识表示学习

目的:学习出知识库中实体和关系的低维的稠密的向量

深度学习方法

SE模型

结果为一个数值
  • 该公式衡量了在k关系下头实体和尾部实体的相似程度。

深度学习建模

  • 已有数据
    知识库中的很多的正例三元组


    选正样本
  • 构建负样本
    把正确的头实体随机替换掉
    把尾实体随机替换掉


    知识表示学习_第1张图片
    构建负样本
  • 设计损失函数


    使得正样本的得分尽可能大

    如果负样本得分大就取0,正样本得分大就取loss(f(正)-f(负))

  • 初始化向量约束


    约束

你要有一个评分函数Sk,后续的跟新算法改变Sk函数就行,就是评价在k关系下评价两个实体的相似程度的函数。

深度学习建模

  • 三种方法改进评分函数


    知识表示学习_第2张图片
    单层神经网络

    缺点:依旧无法改变两个实体向量同时更新


    知识表示学习_第3张图片
    最简单,效果不错
知识表示学习_第4张图片
能量模型

知识表示学习_第5张图片
能量模型图

知识表示学习_第6张图片
能量模型结果

tensor神经网络

  • 什么是tensor张量


    知识表示学习_第7张图片
    利用邻接矩阵学习
知识表示学习_第8张图片
整体的计算流程

张量分解

目的把三元组做矩阵分解

  • 分解公式:


    张量分解公式

    知识表示学习_第9张图片
    图示

    损失函数


    知识表示学习_第10张图片
    加上约束

translation based模型

TransE

知识表示学习_第11张图片
思想

评分函数:头实体向量+关系-尾部实体向量,使得评分函数最小


公式

知识表示学习_第12张图片
构建流程
  • 缺点: 一对多,和多对一的效果比较差,多对多也不好

以下所有的改进都是针对这些缺点

TransH

评分函数,不仅仅是一个向量相加的关系,把关系映射到超平面上


知识表示学习_第13张图片
图例

缺点:依旧在一个空间

TransR

知识表示学习_第14张图片
图示

利用聚类重新进行训练

TransD

知识表示学习_第15张图片
图例
  • 头实体和尾实体不对称
    一个实体不同的关系对应的不同尾实体,

Transpace和TransG

知识表示学习_第16张图片
TransG
知识表示学习_第17张图片
转化为稀疏矩阵

KG2E

把实体关系映射成高斯分布


知识表示学习_第18张图片
图示

你可能感兴趣的:(知识表示学习)