TransE
知识图谱基础
三元组(h,r,t)
知识表示
即将实体和关系向量化,embedding
算法描述
思想:一个正确的三元组的embedding会满足:h+r=t
定义距离d表示向量之间的距离,一般取L1或者L2,期望正确的三元组的距离越小越好,而错误的三元组的距离越大越好。为此给出目标函数为:
梯度求解:
代码分析
- 定义类:
参数:
目标函数的常数——margin 学习率——learningRate 向量维度——dim 实体列表——entityList(读取文本文件,实体+id) 关系列表——relationList(读取文本文件,关系 + id) 三元关系列表——tripleList(读取文本文件,实体 + 实体 + 关系) 损失值——loss
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1