知识图谱可以用python构建吗?

python可以构建知识图谱吗?
回答肯定是可以的!!!
那么如何使用python构建python呢?
什么是知识图谱?
从谷歌搜索到聊天机器人、金融风险控制、物联网场景、智能医疗、自适应教育和推荐系统,都与知识地图有关。它在技术领域的知名度也在逐年上升。因特网的最终形式是万物的互联,而搜索的最终目标是直接搜索万物。传统的搜索引擎依靠网页之间的超链接来实现网页搜索,而语义搜索则是直接搜索事物,如人物、组织、地点等。这些东西可能来自各种信息资源,如文本、图片、视频、音频和物联网设备。知识图谱和语义技术描述了这些事物的分类、属性和关系,使搜索引擎能够直接索引和搜索事物。2012年Google公司提出的知识图谱是一个新概念。从学术角度来看,我们可以定义知识地图:“知识地图本质上是一个语义网络(Semantic Network)知识库”。但这有点抽象,所以从实际应用的角度来看,知识图谱可以简单地理解为多关系图(Multi-relational Graph)。多关系图是什么? 学过数据结构的人应该知道什么是图片(Graph)。图是由节点(Vertex)和边(Edge)但这些图片通常只包含一种类型的节点和边缘。但相反,多关系图通常包含多种类型的节点和边缘。本项目利用pandas提取excel中的数据,并以三元组的形式加载到neo4j数据库中构建相关知识图谱。
运行环境
基于Neo4j,可以轻松构建知识地图。除了使用Neo4j带来的cypher外,它还支持Python包py2neo创建节点和关系,从而构建知识地图。本项目基于发票信息,将发票数据中的结构化数据抽象成三元组,分别创建节点和关系,构建知识地图。具体的包可以参考文件.txt
neo4j-driver==1.6.numpy=1.15.3pandas==0.23.4parso==0.3.1pickleshare=0.7.5plugy==0.8.0prompt-toolkit==1.0.15py==1.7.0py2neo=3pygments==2.2.0pytest==3.9.三python-dateutil==2.7.5wcwidth=0.1.7wincertstore=0.2xlrd==1.1.0
在pyton中安装所需的依赖:pip install -r requirements.txt
提取Pandasexcel数据
python中的pandas非常适合数据分析和处理,可以将excel文件转换为dataframe格式,类似于spark中的dataframe结构,可以以sql的形式处理数据。excel数据结构如下

通过函数data_extraction和函数relation_extrantion分别提取构建知识图所需的节点数据和联系数据,构建三元组。数据提取主要使用pandas将excel数据转换为dataframeinvoice_neo4j.py

建立知识图谱所需的节点和关系数据
DataToNeo4jClass.py

请转到GitHub下载具体代码
详情请下载github,项目名neo4j-python-pandas-py2neo-v3
更多Python知识,请关注:Python自学网!!
