关于知识图谱的复习
关于知识图谱的复习
简单了解
基于关键词匹配的传统搜索引擎,是将匹配到关键词后再把信息展现出来。
如果把信息的形式进行转换,例如将里面的人物、地点、时间等信息抽取出来,构建一个知识图谱的结构,就可以将“詹姆斯瓦特的校友是谁?”等问题的答案推理出来。知识图谱实现了从原来的关键字匹配、内容匹配的方式,转变为对信息的推理、对信息的追溯这种方式。
知识图谱本质上是基于图的语义网络,表示实体与实体之间的关系。
与传统数据库相比,Neo4j的数据结构更加自由
Node(结点):
含有:Perpority Label
用于通过属性存储数据,
就比如简单的社交图
name:Emil这个键值对就存储了这个人的名字,
from: Sweden存储了来自那里
Lable: Person表明了这个节点的实体是一个人可以通过Label表明属于同一个群体
每一个实体可以包含相同的属性,也可以光有单独的属性
Relations(关系):
- Emil knows Johan and Ian.
- Johan knows Ian and Rik.
- Rik and Ian know Allison.
关系必有方向也可以有值 - Emil has known Johan since 2001.
- Emil rates Ian 5 (out of 5).
- Everyone else can have similar relationship properties.
Cypher(Neo4j使用的类SQL语言)
创建结点
CREATE (ee:Person {name: 'Emil', from: 'Sweden', kloutScore: 99}) |
返回结点
MATCH (ee:Person) WHERE ee.name = 'Emil' RETURN ee; |
创建图谱
MATCH (ee:Person) WHERE ee.name = 'Emil' |
创建约束使得电影标签的所有节点的title保证唯一
CREATE CONSTRAINT FOR (n:Movie) REQUIRE (n.title) IS UNIQUE |
表示为具有标签为"Movie"的所有节点的"released"属性创建索引。这意味着要为所有电影节点的发布日期属性创建一个索引,以提高对这个属性的查询性能。
CREATE INDEX FOR (m:Movie) ON (m.released) |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 黑夜梦想家的网络日志!
评论