码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Neo4j图数据库和GDS图算法应用


    文章目录

    • 一、图数据库Neo4j
      • 1.1 Neo4j简介和安装
      • 1.2 Cypher查询语言
      • 1.3 图数据库Neo4j支持的图算法和GDS
    • 二、图算法在实际应用中的阶段
    • 三、图算法的应用场景
      • 3.1 图嵌入
      • 3.2 金融欺诈检测
      • 3.3 NLP中的知识图谱
    • Reference

    一、图数据库Neo4j

    1.1 Neo4j简介和安装

    截止2021年12月,Neo4j 最新版本是4.4。提供了完整的图数据平台能力。关于版本的选择:
    在这里插入图片描述

    Neo4j 图数据库:Neo4j 的核心图数据库,用于存储和检索关联数据。有两个版本 - 社区版和企业版。
    Neo4j Desktop:管理 Neo4j 实例和应用的桌面程序,安装便捷,包含 Neo4j 企业版许可。
    Neo4j Browser:Neo4j 图数据库管理界面,用于查询和查看数据库中的数据。使用 Cypher 查询语言,具备图数据可视化功能。
    Neo4j Bloom:面向业务用户的可视化工具,无需任何代码或编程技能即可查看和分析数据。
    Neo4j AuraDB:由 Neo4j 管理的云端Neo4j图数据库,开箱即用的DBaaS服务。现已推出面向开发者的免费版本。
    在这里插入图片描述
    下载:https://neo4j.com/download/

    1.2 Cypher查询语言

    在这里插入图片描述

    • Neo4j使用声明式查询语言Cypher,能够以一种容易理解的方式来遍历图。有很多和sql类似(如WHERE、ORDER BY、SKIP LIMIT、AND、p.unitPrice > 10)。但与 SQL 不同,Cypher 是关于表达图模式的,新增一个特殊子句MATCH来匹配数据中的这些模式。
    • 关系在 Cypher 中使用箭头–>或<–两个节点之间表示。请注意语法在视觉表示中如何看起来像连接我们的节点的箭头和线。附加信息,例如节点如何连接(关系类型)以及与关系有关的任何属性,可以放在箭头内的方括号中。

    1.3 图数据库Neo4j支持的图算法和GDS

    • 图搜索算法
    • 寻路算法
    • 中心性算法
    • 社区检测算法
    • 图嵌入
    • 链接预测
    • 连接特征提取

    在这里插入图片描述
    说到图算法,就需要提到Neo4j GDS,图分析和建模平台,2.0版本发支持60+图算法。传统做法:很多业务应用直接使用Neo4j;GDS:
    在这里插入图片描述

    二、图算法在实际应用中的阶段

    • 第一阶段:知识图谱
      在关联数据中搜索特定的关联模式。例如构建企业级的应用知识图谱,借助知识图谱回答特定的问题。
    • 第二阶段:图算法
      使用无监督的机器学习技术识别图中的关联、异常值和趋势。例如了解图中最重要的是什么、哪里有相似性、应该在哪步做调查。
    • 第三阶段:图原生机器学习
      使用嵌入来学习图中那些可能之前不知道的重要特征,训练图内监督机器学习模型来预测链接、标签和缺失数据。例如哪些客户会购买哪些商品、哪些交易存在欺诈行为。

    三、图算法的应用场景

    Neo4j的用户主要

    3.1 图嵌入

    在这里插入图片描述

    3.2 金融欺诈检测

    在这里插入图片描述

    3.3 NLP中的知识图谱

    在这里插入图片描述

    Neo4j 为结构化数据提供了强大的查询能力,但是世界上很多数据都存在于文本文档中。NLP 技术可以帮助提取这些文档中的潜在结构。这种结构可以像表示句子中标记的节点一样简单,也可以像表示使用命名实体识别算法提取的实体的节点一样复杂。

    在这里插入图片描述
    如上图所示,NLP信息抽取的难点在于处理非结构化数据,右边就是从左边文本抽取出来的实体和关系

    比如在推荐系统中也能结合知识图谱做相关的召回:
    在这里插入图片描述

    Reference

    [1] Neo4j algorithm:https://neo4j.com/developer/graph-data-science/graph-algorithms/
    [2] Cypher:https://neo4j.com/developer/cypher/
    [3] 如何选择合适的Neo4j版本
    [4] https://graphacademy.neo4j.com/courses/gds-product-introduction/
    [5] https://graphacademy.neo4j.com/courses/graph-data-science-fundamentals/
    [6] https://github.com/neo4j/graph-data-science
    [7] 利用Neo4j构建知识图谱
    [8] Neo4j安装官网指南
    [9] 知识图谱专栏(Neo4j、Cypher)
    [10] 2022年中国知识图谱行业研究报告
    [11] Neo4j基础教程:https://we-yun.com/doc/neo4j-chs-doc/#_关于本指南
    [12] QQ音乐推荐召回算法的探索与实践

  • 相关阅读:
    Spring Security-基于表达式的访问控制和基于注解的访问控制
    【Android笔记17】Android里面Fragment的使用
    从零开始搭建SpringBoot项目,并且用Mybatis进行数据查询(包含所用数据库)
    react typescript @别名的使用
    InnoDB引擎之flush脏页
    【Servlet】Servlet学习之基础篇(HTTP)
    PMP考试是如何提高项目管理能力的?
    Vue模板语法(下)
    JS奇淫技巧:挑战前端黑科技,数值的七种写法,能全看懂的一定是高手
    微泡排气除污装置有哪几种叫法吗?
  • 原文地址:https://blog.csdn.net/qq_35812205/article/details/126798244
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号