知识图谱实战1:构建红楼梦人物知识图谱
一、安装Neo4j
在Windows环境中安装Neo4j 并创建两个节点和他们之间的关系
这个是先安装neo4j desktop 然后访问 brower
注意 : neo4j和jdk的版本要对应 neo4j 4.x.x都要求jdk11以上
我安装的是 https://neo4j.com/artifact.php?name=neo4j-community-3.5.6-windows.zip jdk版本1.8
下载后 解压 管理员方式打开命令行 进入文件地址 输入 neo4j.bat console 然后直接访问 http://localhost:7474/ 修改密码后即可输入语句创建节点
CREATE (n:Person { name: 'Andres', title: 'Developer' }) return n;
CREATE (n:Person { name: 'Vic', title: 'Developer' }) return n;
match(n:Person{name:"Vic"}),(m:Person{name:"Andres"}) create (n)-[r:Friend]->(m) return r;
match(n:Person{name:"Vic"}),(m:Person{name:"Andres"}) create (n)<-[r:Friend]-(m) return r;
二、安装anaconda
windows10 安装anaconda3教程
注意 :如果电脑上已经安装python 注意anaconda 和 python的版本对应 没有卸载时安装提示
为了避免后面出现什么奇奇怪怪的问题 我先卸载了电脑上已经安装的所有版本的python 然后重新安装annacondaAnaconda3-5.3.1-Windows-x86_64.exe
anaconda清华镜像下载
教程中配置环境变量我的 \Library中 没有 usr这个文件夹 可以不设置这一项 有些说需要在第二项 Scripts\加上反斜杠 但是我不加也可以
E:\Anaconda(Python需要)
E:\Anaconda\Scripts(conda自带脚本)
E:\Anaconda\Library\mingw-w64\bin(使用C with python的时候)
E:\Anaconda\Library\usr\bin
E:\Anaconda\Library\bin(jupyter notebook动态库)
Anaconda Navigator卡住、闪退或者一直停在loading applications
anaconda点开后 一直停留在 loading applications 上面
运行上面这两个链接中的命令耗时很长 在anaconda prompt中设置清华镜像
依次执行
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --set show_channel_urls yes
再使用 conda info
但是我没运行完那几个命令 运行到一半一直卡住就直接关掉 重启电脑 就可以正常打开anaconda navigator 了
三、构建知识图谱
参考地址
四大名著人物关系三元组数据集下载地址
需要先安装py2neo这个库来操作neo4j 直接pip install py2neo 安装这个库的过程出现了很多问题 主要还是各个库版本冲突的问题
ERROR: pip’s dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
jupyter-console 5.2.0 requires prompt-toolkit<2.0.0,>=1.0.0, but you have prompt-toolkit 3.0.18 which is incompatible.
出现这种错误 可以使用下面这个命令 直接升级版本
pip install --upgrade jupyter-console
在jupyter notebook中
import csv
import py2neo
from py2neo import Graph,Node,Relationship,NodeMatcher
#账号密码改为自己的即可
g=Graph('http://localhost:7474',user='neo4j',password='neo4j')
with open('E:/triples.csv','r',encoding='utf-8') as f:reader=csv.reader(f)for item in reader:if reader.line_num==1:continueprint("当前行数:",reader.line_num,"当前内容:",item)start_node=Node("Person",name=item[0])end_node=Node("Person",name=item[1])relation=Relationship(start_node,item[3],end_node)g.merge(start_node,"Person","name")g.merge(end_node,"Person","name")g.merge(relation,"Person","name")
执行完成后
neo4j查询语句
#以下为neo4j代码,如需代码运行,请放入g.run(...)内运行,将...替换为下列代码
MATCH (p: Person {name:"贾宝玉"})-[k:丫鬟]-(r)
return p,k,r
MATCH (p1:Person {name:"贾宝玉"}),(p2:Person{name:"香菱"}),p=shortestpath((p1)-[*..10]-(p2))
RETURN p
知识图谱实战1:构建红楼梦人物知识图谱相关推荐
- 知识图谱实战:构建红楼梦知识图谱
本文为数据集整理以及代码存放,本内容已经录制b站课程,如有需要可以前去观看,建议点赞投币- 视频内容简介,最后可以带大家确实做一个知识图谱 b站课程地址:https://www.bilibili.co ...
- 在图数据库Neo4j中创建红楼梦人物关系图谱
在图数据库Neo4j中创建红楼梦人物关系图谱 1.加载csv数据文件 load csv from 'file:///triples.csv' as linecreate (:role {name:li ...
- HugeGraph图数据库构建红楼梦人物关系知识图谱实例
HugeGraph是一款易用.高效.通用的开源图数据库系统(Graph Database,GitHub项目地址), 实现了Apache TinkerPop3框架及完全兼容Gremlin查询语言, 具备 ...
- neo4j的使用(以红楼梦人物关系为例)
参考:知识图谱实战:构建红楼梦知识图谱_任萌新的小生活-CSDN博客_知识图谱构建实战https://blog.csdn.net/RHJlife/article/details/108586578 先 ...
- 基于deepke构建红楼梦知识图谱
红楼梦,中国古典四大名著之首,清代作家创作的章回体长篇小说,又名<石头记><金玉缘>.此书分为120回"程本"和80回"脂本"两种版本系 ...
- 【知识图谱】构建红楼梦知识图谱
在b站看到有人用知识图谱构建红楼梦的人物关系的知识图谱,跟着做了一遍,在这里记录. 1.安装neo4j 具体见:https://blog.csdn.net/Zhouzi_heng/article/de ...
- 【KG】构建《红楼梦》知识图谱
[KG]构建<红楼梦>知识图谱 1. 前言 2. 环境搭建 3. py2neo简单使用 4. 导入CSV数据集 5. triples.csv 1. 前言 构建<红楼梦>知识图谱 ...
- 知识图谱实战应用9-基于neo4j的知识图谱框架设计与类模型构建
大家好,我是微学AI,今天给大家介绍一下知识图谱实战应用9-基于neo4j的知识图谱框架设计与类模型构建.我将构建KnowledgeGraphs的类,用于操作Neo4j图数据库中的知识图谱数据.方便管 ...
- 知识图谱实战应用6-基于知识推理进行知识补全的功能
大家好,我是微学AI,今天给大家讲一下知识图谱实战应用6-基于知识推理进行知识补全的功能.基于知识推理进行知识补全,是指通过利用领域内已有的知识和信息,自动推断出缺失的知识或信息,从而进行知识的补全. ...
最新文章
- Google浏览器导出书签
- 【HDU 1576】 A/B
- 【Linux入门连载三】Linux常用的基本命令
- ACM练习 校赛183F:公平的游戏(TLE)【set的使用,给迭代器增加指定偏移量】
- BZOJ1058 ZJOI2007 报表统计 线段树+平衡树
- random_normal_initializer 使用
- C/C++冷门知识点你知道多少呢?
- OC本学习笔记Foundation框架NSString与NSMutableString
- [No0000D7]img生成器.bat合并所有图片到html网页中
- 地铁客流检测训练问题记录
- Linux操作系统中rsync工具常见用法
- Vue指令之v-html
- drozer安装使用问题总结
- jsonp跨域原理(简单粗暴)
- 计算机ip如何设置,win7电脑ip地址怎么设置_win7电脑ip怎么设置-win7之家
- 任天堂Switch最优DNS测试
- 入门级带你实现一个安卓智能家居APP(1)java版本
- 专家级解说缓存服务器负载均衡概念
- ANSYS经典界面出图技巧总结
- 华为手机显示您的手机未连接服务器,手机提示链接不到服务器
热门文章
- Android完美实现录音笔记功能
- 隐私计算唯一代表厂商!洞见科技入选《爱分析·数据智能厂商全景报告》
- Altium designer 生成PCB制作文件及打样流程(以嘉立创商城为例)
- 真正可落地的大数据AI分析工具应该长什么样?
- 软件STM32cubeIDE下STM32F4xx使用32位定时器2(TIM2)用DMA+PWM点亮灯带WS2812-基础样例
- mac acrobat xi破解
- T66099 小xzy的数对 题解
- springboot 打卡功能_SpringBoot 动态定时器的使用方法
- 青岛科技大学|物联网工程|物联网定位技术(第二讲)|15:00
- 从Flutter开始聊聊跨平台移动开发框架