知识图谱 | Neo4j算法概述

简介: 在neo4j中,Neo4j Graph Algorithms ,通过call algo.list() 可查看neo4j中的算法列表。在neo4j官方文档中,主要记录如下各种方法:一. 中心性算法(Centrality algorithms)中心度算法主要用来判断一个图中不同节点的重要性:PageRank(页面排名算法,algo.pageRank),pagerank值越高的实体在网络中起到的作用越大;ArticleRank(文档排名算法,algo.articleRank),pagerank的一种变体,平衡了出度高低对重要性的影响;

在neo4j中,Neo4j Graph Algorithms ,通过call algo.list() 可查看neo4j中的算法列表。

在neo4j官方文档中,主要记录如下各种方法:

一. 中心性算法(Centrality algorithms)
中心度算法主要用来判断一个图中不同节点的重要性:

PageRank(页面排名算法,algo.pageRank),pagerank值越高的实体在网络中起到的作用越大;
ArticleRank(文档排名算法,algo.articleRank),pagerank的一种变体,平衡了出度高低对重要性的影响;
Betweenness Centrality(中介中心性,algo.betweenness),检测节点对图中信息流影响程度的方法;
Closeness Centrality(紧密中心性,algo.closeness),度量它与其他节点的距离,紧密程度;
Harmonic Centrality(调和中心性,algo.closseness),是紧密中心性算法的一种变体,用于解决不连通图的问题;
Eigenvecor Centrality (特征向量中心性,algo.eigenvector),度量节点间传递影响或连接性的算法;
Degree Centrality(度中心性,algo.degree),用实体出边或入边的数量衡量实体在网络中的重要性;
二. 社区发现算法(Community detection algorithms)
评估一个群体是如何聚集或划分的,以及其增强或分裂的趋势:

Louvain(鲁汶算法,algo.louvain),一种用模块度衡量的社区发现算法;
Label Propagation(标签传播算法,algo.labelPropagagtion),无监督的社区发现算法;
Connected Components(连通组件算法,algo.unionFind),用于检测网络中的联通组件;
Strongly Connected Compontents(强连通组件,algo.scc),用于检测网络中存在的强联通组件(关系存在双边结构);
Triangle Counting/Clustering Coefficient(三角计数/聚类系数,algo.triangleCount),用于衡量实体或网络中的局部聚集程度;
Balanced Triads(平衡三角算法,algo.balancedTriads)
三. 路径寻找算法(Path Finding algorithms)
用于找到最短路径,或者评估路径的可用性和质量:

Minimum Weight Spanning Tree(最小权重生成树,algo.mst),从一个给定的QQ号节点开始,找到它的所有可达节点以及用最小权值将节点连接在一起的一组关系;
Shortest Path(最短路径,algo.shortestPath),用于计算两个实体之间的最短路径;
Single Source Shortesr Path(单源最短路径,algo.shortestPath.deltastepping)
All Pairs Shortest Path (全节点对最短路径,algo.allShortestPath)
A* (A star, algo.shortestPath.astar)
Yen’s K-shortest paths(Yen k最短路径,algo.kShortestPaths)
Random Walk(随机路径,algo.randomWalk)
四.相似度算法(Similarity algorithms)
用于计算节点间的相似度:

Jaccard Similarity(Jaccard相似度,algo.similarity.jaccard)
Consine Similarity(余弦相似度,algo.similarity.consine)
Pearson Similarity(Pearson相似度,algo.similarity.pearson)
Euclidean Distance(欧式距离,algo.similarity.euclidean)
Overlap Similarity(重叠相似度,algo.similarity.overlap)
五.链接预测算法(Link Prediction algorithms)
下面算法有助于确定一对节点的紧密程度。然后,我们将使用计算的分数作为链接预测解决方案的一部分:

Adamic Adar(algo.linkprediction.adamicAdar),是一种基于节点共享邻居计算节点亲密度的方法;
Common Neighbors(相同邻居,algo.linkprediction.commonNeighbors
Preferential Attachment(择优连接,algo.linkprediction.preferentialAttachment
Resource Allocation(资源分配,algo.linkprediction.resourceAllocation)
Same Community(相同社区,algo.linkprediction.sameCommunity),确认两个节点是否属于同一个社区;
Total Neighbors(总邻居,algo.linkprediction.totalNeighbors),基于它们拥有的唯一邻居的数量;
六.预处理算法(Preprocessing functions and procedures)
数据处理过程:

One Hot Encoding (algo.ml.oneHotEncoding)

目录
相关文章
|
19天前
|
存储 自然语言处理 算法
知识图谱算法有哪些
知识图谱是以图结构描述的知识。与传统数据库相比,知识图谱在存储、查询、检索方面具有诸多优势。传统数据库对数据的组织是以字段为单位,而知识图谱通过关系、属性和实体等数据类型,将数据组织成复杂的图,使其更容易理解。
|
机器学习/深度学习 自然语言处理 算法
特定领域知识图谱融合方案:文本匹配算法(Simnet、Simcse、Diffcse)
文本匹配任务在自然语言处理中是非常重要的基础任务之一,一般研究两段文本之间的关系。有很多应用场景;如信息检索、问答系统、智能对话、文本鉴别、智能推荐、文本数据去重、文本相似度计算、自然语言推理、问答系统、信息检索等,但文本匹配或者说自然语言处理仍然存在很多难点。这些自然语言处理任务在很大程度上都可以抽象成文本匹配问题,比如信息检索可以归结为搜索词和文档资源的匹配,问答系统可以归结为问题和候选答案的匹配,复述问题可以归结为两个同义句的匹配。
特定领域知识图谱融合方案:文本匹配算法(Simnet、Simcse、Diffcse)
|
11月前
|
人工智能 自然语言处理 算法
基于知识图谱的电影知识问答系统:训练TF-IDF 向量算法和朴素贝叶斯分类器、在 Neo4j 中查询
基于知识图谱的电影知识问答系统:训练TF-IDF 向量算法和朴素贝叶斯分类器、在 Neo4j 中查询
基于知识图谱的电影知识问答系统:训练TF-IDF 向量算法和朴素贝叶斯分类器、在 Neo4j 中查询
|
11月前
|
存储 数据采集 自然语言处理
手把手教学小型金融知识图谱构建:量化分析、图数据库neo4j、图算法、关系预测、命名实体识别、Cypher Cheetsheet详细教学等
手把手教学小型金融知识图谱构建:量化分析、图数据库neo4j、图算法、关系预测、命名实体识别、Cypher Cheetsheet详细教学等
手把手教学小型金融知识图谱构建:量化分析、图数据库neo4j、图算法、关系预测、命名实体识别、Cypher Cheetsheet详细教学等
|
机器学习/深度学习 自然语言处理 算法
文档关键信息提取形成知识图谱:基于NLP算法提取文本内容的关键信息生成信息图谱教程及码源(含pyltp安装使用教程)
文档关键信息提取形成知识图谱:基于NLP算法提取文本内容的关键信息生成信息图谱教程及码源(含pyltp安装使用教程)
文档关键信息提取形成知识图谱:基于NLP算法提取文本内容的关键信息生成信息图谱教程及码源(含pyltp安装使用教程)
|
机器学习/深度学习 自然语言处理 算法
特定领域知识图谱融合方案:文本匹配算法之预训练Simbert、ERNIE-Gram单塔模型等诸多模型【三】
文本匹配任务在自然语言处理中是非常重要的基础任务之一,一般研究两段文本之间的关系。有很多应用场景;如信息检索、问答系统、智能对话、文本鉴别、智能推荐、文本数据去重、文本相似度计算、自然语言推理、问答系统、信息检索等,但文本匹配或者说自然语言处理仍然存在很多难点。这些自然语言处理任务在很大程度上都可以抽象成文本匹配问题,比如信息检索可以归结为搜索词和文档资源的匹配,问答系统可以归结为问题和候选答案的匹配,复述问题可以归结为两个同义句的匹配。
特定领域知识图谱融合方案:文本匹配算法之预训练Simbert、ERNIE-Gram单塔模型等诸多模型【三】
|
机器学习/深度学习 数据采集 存储
特定领域知识图谱(Domain-specific KnowledgeGraph:DKG)融合方案:技术知识前置【一】-文本匹配算法、知识融合学术界方案、知识融合业界落地方案、算法测评KG生产质量保障
本项目主要围绕着特定领域知识图谱(Domain-specific KnowledgeGraph:DKG)融合方案:技术知识前置【一】-文本匹配算法、知识融合学术界方案、知识融合业界落地方案、算法测评KG生产质量保障讲解了文本匹配算法的综述,从经典的传统模型到孪生神经网络“双塔模型”再到预训练模型以及有监督无监督联合模型,期间也涉及了近几年前沿的对比学习模型,之后提出了文本匹配技巧提升方案,最终给出了DKG的落地方案。这边主要以原理讲解和技术方案阐述为主,之后会慢慢把项目开源出来,一起共建KG,从知识抽取到知识融合、知识推理、质量评估等争取走通完整的流程。
特定领域知识图谱(Domain-specific KnowledgeGraph:DKG)融合方案:技术知识前置【一】-文本匹配算法、知识融合学术界方案、知识融合业界落地方案、算法测评KG生产质量保障
|
19天前
|
算法 数据安全/隐私保护 计算机视觉
基于二维CS-SCHT变换和LABS方法的水印嵌入和提取算法matlab仿真
该内容包括一个算法的运行展示和详细步骤,使用了MATLAB2022a。算法涉及水印嵌入和提取,利用LAB色彩空间可能用于隐藏水印。水印通过二维CS-SCHT变换、低频系数处理和特定解码策略来提取。代码段展示了水印置乱、图像处理(如噪声、旋转、剪切等攻击)以及水印的逆置乱和提取过程。最后,计算并保存了比特率,用于评估水印的稳健性。
|
3天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于DCT变换和位平面分解的数字水印嵌入提取算法matlab仿真
这是一个关于数字水印算法的摘要:使用MATLAB2022a实现,结合DCT和位平面分解技术。算法先通过DCT变换将图像转至频域,随后利用位平面分解嵌入水印,确保在图像处理后仍能提取。核心程序包括水印嵌入和提取,以及性能分析部分,通过PSNR和NC指标评估水印在不同噪声条件下的鲁棒性。
|
4天前
|
算法 数据安全/隐私保护 C++
基于二维CS-SCHT变换和扩频方法的彩色图像水印嵌入和提取算法matlab仿真
该内容是关于一个图像水印算法的描述。在MATLAB2022a中运行,算法包括水印的嵌入和提取。首先,RGB图像转换为YUV格式,然后水印通过特定规则嵌入到Y分量中,并经过Arnold置乱增强安全性。水印提取时,经过逆过程恢复,使用了二维CS-SCHT变换和噪声对比度(NC)计算来评估水印的鲁棒性。代码中展示了从RGB到YUV的转换、水印嵌入、JPEG压缩攻击模拟以及水印提取的步骤。