跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

基于 Neo4j 和 py2neo 的知识图谱搭建步骤详解

综述由AI生成在 Mac 环境下使用 Neo4j 图数据库和 py2neo 库搭建知识图谱的完整流程。内容包括 Neo4j 的安装配置、Cypher 查询语言的基本增删改查操作、数据预处理中的清洗与知识建模(实体识别、属性识别、关系识别),以及利用 Python 连接数据库进行图谱构建的方法。通过麦当劳示例和订单数据集案例,展示了从原始数据到图谱可视化的关键步骤。

灵魂摆渡发布于 2026/4/6更新于 2026/5/2321 浏览
基于 Neo4j 和 py2neo 的知识图谱搭建步骤详解

一、Neo4j 图数据库

Neo4j 是一个高性能的、原生的图数据库。它不采用传统的行和列的表格结构,而是使用节点和关系的图结构来存储和管理数据。

1、Neo4j 安装 - Mac Brew 版

(1)安装 Neo4j

安装了 Homebrew 直接在终端输入以下命令即可。安装后,Neo4j 浏览器可通过 http://localhost:7474 访问。

(2)登录 Neo4j
  1. 在登录页面填写信息:Connect URL:输入 neo4j://localhost:7687;Authentication type:保持为 "Username / Password";Username:输入 neo4j;Password:首次连接时输入默认密码 neo4j。点击蓝色的 Connect 按钮。
  2. 首次连接成功后,系统会强制要求修改默认密码:当前密码:neo4j,设置一个新的安全密码(请务必记住)。
  3. 测试连接:连接成功后,在顶部的命令行中输入 Cypher 查询语句。

2、Neo4j 快速入门

  1. 点击左边栏的星星图标,在 Example Graphs 中选择 Movie Graph,点击运行,就会弹出一个关于电影图谱的教程。
  2. 创建图谱:点击灰色代码框,创建图谱的代码会自动复制到代码框,点击运行,即可看到创建的电影图谱。
  3. 查找:以下是一些关于查找的语句,如查找名叫 Tom Hanks 的演员、标题为 Cloud Atlas 的电影、10 个人、在 20 世纪 90 年代上映的电影等。
  4. 询问:后续还有一些查询语句教程不一一列举了,感兴趣的同学可以自行运行。

3、Neo4j 基本操作

接下来我们以【麦当劳】为背景,用 Neo4j 的 Cypher 查询语言演示基本增删改查操作。建立一个简单的图谱,包含两种节点和一种关系:

  • 节点类型 1:餐厅
    • 属性:名称,地址,开业年份
  • 节点类型 2:产品
    • 属性:名称,价格,类别
  • 关系类型:供应
    • 属性:自何时起供应
(1)增操作
  • 创建节点
  • 创建关系
(2)查操作
  • 查找所有餐厅
  • 查找特定餐厅供应的所有产品
  • 查找供应可乐的所有餐厅
  • 多跳查询 - 查找与 MC 销售同类产品的其他餐厅(因前面没有创建这么多关系,这里只做操作语法展示)
  • 路径查询 - 查找两家餐厅通过共同产品产生的关联
(3)改操作
  • 更新节点属性
  • 新增节点属性
  • 更新关系属性
(4)删操作
  • 删除关系
  • 删除节点(必须先删除其所有关系)
  • 删除所有节点

通过以上麦当劳的例子,我们可以看到 Neo4j 的操作非常直观:

  • CREATE/MERGE:对应 SQL 的 INSERT,用于创建节点和关系。
  • MATCH:对应 SQL 的 SELECT ... FROM,是查询的起点,用于定位图形中的模式。
  • WHERE:对应 SQL 的 WHERE,用于过滤结果。
  • SET:对应 SQL 的 UPDATE,用于更新属性。
  • DELETE/DETACH DELETE:对应 SQL 的 DELETE,用于删除元素。

Neo4j 的核心优势在于通过 MATCH 子句描述关联模式,例如 (餐厅)-[供应]->(产品),这使得查询复杂的关系网络变得简单和高效。

4、安装 py2neo

py2neo 是 Python 连接和操作 Neo4j 图数据库的主要工具库,适用于需要处理复杂关系数据的应用场景。

二、数据预处理

数据预处理包括数据清洗、实体识别等步骤,目的是将原始数据转换为适合构建知识图谱的格式。

1、数据清洗

数据质量要求:

  • 补全缺失值:对于明显缺失的信息(如设备型号),可以标记为【缺失】或根据上下文推断。
  • 格式标准化:将日期统一为【YYYY-MM-DD】格式。
  • 去除重复值:删除重复的条目。

2、知识建模

我们需要从业务角度理解数据,设计出合理的图谱结构。

(1)识别实体

实体是知识图谱中的【节点】。在我的数据集中,可以识别出以下主要实体类型:

  • 订单记录:核心实体,每一笔订单就是一个销售事件。
  • 产品:订单中的商品。例如,'生日蛋糕'、'马卡龙'、'手冲咖啡'。数据中【产品名称】和【产品类别】是其属性。
  • 配方标准:制作产品的依据和标准。数据中【配方名称】、【配料序号】、【制作要点】等是其属性。
  • 客户反馈:客户对订单或产品的评价与建议。
  • 促销活动:与订单关联的营销方案。
  • 门店:订单发生的背景。
(2)识别实体属性

属性是描述实体的键值对。

  • 订单记录的属性:下单时间、订单描述、订单金额、是否加急、订单状态、支付方式、配送地址。
  • 产品的属性:产品名称、产品类别、规格、单价、保质期、产品编号。
  • 配方标准的属性:配方名称、配料序号、制作步骤、所需时间、适用产品。
  • 客户反馈的属性:反馈内容、评分。
  • 促销活动的属性:活动名称、折扣力度、适用条件。
  • 门店的属性:门店地址、营业时间、联系电话。
(3)识别关系

关系是连接实体的边,是图谱价值的体现。

  • 门店 -- 提供 --> 产品
  • 订单记录 -- 产生于 --> 门店
  • 订单记录 -- 包含 --> 产品
  • 订单记录 -- 触发 --> 促销活动
  • 订单记录 -- 收到 --> 客户反馈
  • 产品 -- 依据 --> 配方标准
  • 配方标准 -- 适用于 --> 产品

三、搭建知识图谱

具体实现代码需根据实际数据集进行调整。

目录

  1. 一、Neo4j 图数据库
  2. 1、Neo4j 安装 - Mac Brew 版
  3. (1)安装 Neo4j
  4. (2)登录 Neo4j
  5. 2、Neo4j 快速入门
  6. 3、Neo4j 基本操作
  7. (1)增操作
  8. (2)查操作
  9. (3)改操作
  10. (4)删操作
  11. 4、安装 py2neo
  12. 二、数据预处理
  13. 1、数据清洗
  14. 2、知识建模
  15. (1)识别实体
  16. (2)识别实体属性
  17. (3)识别关系
  18. 三、搭建知识图谱
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • VSCode 本地运行 DeepSeek 模型教程
  • MySQL 基本查询
  • 使用 cpolar 内网穿透远程访问 Open-Lovable 网页克隆工具
  • 前端防抖节流主流库实战与避坑指南
  • C++ 类与对象基础详解(上)
  • Android App 自动更新:通知栏显示下载进度及安装
  • AI 变现真相:为何掌握大量工具仍难获利
  • 数据结构:二叉树初阶与实现
  • 构建 Vue 全局错误处理体系,实现业务与错误解耦
  • Claude Sonnet 4.6:大语言模型架构演进与前沿性能评估
  • Java String 字符串核心特性与 API 详解
  • 数据结构核心考点与算法实现指南
  • 人工智能核心概念速通教程
  • AI 产品经理产品开发全流程详解:从需求定义到模型验收
  • 贪心算法(Greedy Algorithm)核心原理与实现
  • VRM4U 插件在 Unreal Engine 5 中的使用指南
  • 锐龙 AI 7 H 350 与锐龙 7 H 255 对比评测
  • 2026 年高校 AIGC 检测新规解读:AI 率合格标准分析
  • opencode 集成 Git:AI 辅助版本控制操作指南
  • NFT 元数据去中心化存储与智能合约集成实战

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online