[TOC]
基于节点纬度的知识图谱分割
目录说明
./Database 目录存放数据集
./Image 存放readme中的相关图片
./Tools 存放相关工具代码
Neo4j 使用py2neo连接Neo4j图数据库,实现知识图谱可视化。
RDF 使用JENA实现RDF数据解析。
./src 为源代码目录,有两个文件夹:
lib : 存放依赖项 jar包。 javacsv.jar 用于读取存储csv文件。
Partitioning : 存放核心代码
Config.java 参数、地址、资源分配
Node.java 节点类
Cluster.java 集群类
Input_Output.java 输入输出相关方法
Put_spo_in_hashmap.java 读取spo三元组后提取实体和关系信息的方法
Hashmap_sort.java 将实体按照纬度排序 并存储
CliqueCluster.java Clique聚类算法
test.java 程序入口
环境
Java = "1.8.0_131"
Python = "3.7"
Neo4j = "3.5.0"
IDE Java使用eclipse ; Python使用 Spyder
数据集 使用红楼梦人物关系三元组作为真实数据集;另外还有两个自己构建的小图,用来debug。
演示
红楼梦大图如下: