知识图谱概念:
1.本质:一种语义网络(由谷歌提出)
2.也叫多关系图,由多类型的节点和多类型的边(关系)组成
3.把所有不同种类的信息连接在一起而得到的一个关系网络
4.提供了从“关系”的角度去分析问题的能力
知识图谱应用举例:
搜索引擎、推荐系统、金融风控
图数据库neo4j的使用:
0.安装Java JDK
1.在Neo4j官网下载Community(社区)版本的“neo4j-community-3.5.8-windows.zip”
2.解压后配置环境变量
如图所示新建名为“NEO4J_HOME”的环境变量
在PATH中添加“%NEO4J_HOME%\bin”
3.在dos窗口(windows+r后输入cmd)中输入“neo4j.bat console”
4.在浏览器中访问“http://localhost:7474/browser/”
默认密码:neo4j
Cypher基础语句的使用:
Cypher是Neo4j的查询语言
0.
()中的内容表示实体
[]中的内容表示关系
:前可以取别名
1.创建节点
CREATE (:Job{name:"Web开发"}),(:Job{name:"爬虫"})
2.创建节点和关系
CREATE (j:Job{name:"自动化办公"})-[:KNOWS]->(k:Knowledge{name:"Python基础"}) return j,k
3.查询节点
MATCH (j:Job{name:"爬虫"}) return j
4.查询节点和关系
MATCH (j:Job{name:"自动化办公"})-[:KNOWS]->(k:Knowledge{name:"Python基础"}) return j,k
5.删除关系
MATCH (:Job{name:"自动化办公"})-[k1:KNOWS]->(:Knowledge{name:"Python基础"}) delete k1
6.删除节点(要删除节点,必须先删除和它有关的关系)
MATCH (k2:Knowledge{name:"Python基础"}) delete k2
7.其他语句可通过“:help”语句查询学习
作业题:构建知识体系的知识图谱
作业完成如下:
代码举例:
MATCH (a:Knowledge),(b:Orientation) WHERE a.name = "深度学习" AND b.name = "NLP" CREATE (a)-[k:know]->(b) RETURN a,b,k