知识图普嵌入技术的极简教程:KGE以及如何计算它们
图是我最喜欢使用的数据结构之一,它们可以使我们能够表示复杂的现实世界网络,如快速交通系统(例如,公交道路、地铁等)、区域或全球空中交通,或者人们的社交网络之类的相关事物。并且他们非常灵活,很容易被人类理解,但是为了让计算机“理解”和“学习”它们,我们需要额外的一步(称为矢量化)。这种解释可能过于简单,我们将在本文的后续部分详细解释。
知识图谱有何特别之处?
为了轻松理解知识图与其他图的不同之处,我们想象一个具有不同级别的游戏,随着游戏的深入,每个级别都会变得困难。
Level 1:可以是一个简单的无向图,比如大学里的朋友群,朋友是节点,朋友之间的关系是边。这里我们只有节点和边,没有什么太花哨的。
Level 2:在上一层的基础上增加一层信息,比如方向,这样我们就得到有向图。一个简单的例子是城市范围的公交网络。将公共汽车站视为节点,将公共汽车的路线视为边,每辆公共汽车都以特定的方向从一个站点移动到另一个站点,这就是增加了方向信息。
Level 3:我们采用有向图并向节点和边添加多种属性。想象一下互联网上的社交网络,节点上的属性是用户所基于的社交网络类型。例如,它可以是 Twitter、Facebook 或 YouTube。边的属性可以是不同用户之间的交互类型,即关注(在 Twitter 的情况下)、朋友或关注(在 Facebook 的情况下)和订阅(在 YouTube 的情况下)。图的有向性在这里开始发挥作用,因为上面这些属性只能是单向的(相互关注就是有两条边)。例如,你可以关注 Elon Musk,但他可能不会在 Twitter 上关注你,这就是有一条向的边。
Level 4:上一级中的图中,不使用节点和边,而是使用三元组进行表示:三元组是知识图谱的构建块,它是由 3 个元素组成的元组,即:源节点(头)、关系和目标节点(尾)。
这就是我们所说的知识图谱了,源节点和目标节点有时也被称为实体。
“知识图谱”一词的使用有点含糊,因为知识图谱没有固定的定义,从广义上讲可以将任何包含一些知识/重要信息的相当大的图称为知识图谱。这里的关键点是我们将三元组作为知识图谱的基本组成部分。
完整文章: