【学习笔记】构建小型金融知识图谱(github项目)

前言
需要构建农业知识图谱,先来学习一下构建知识图谱的基本流程和套路,熟悉过程方便 科研 后续工作的开展,写下此篇博客作为我的笔记吧~

参考代码来源:github项目 jm199504/Financial-Knowledge-Graphs

1.知识图谱存储方式

知识图谱存储方式主要包含资源描述框架(Resource Description Framework,RDF)和图数据库(Graph Database)。

1.1 资源描述框架特性

  • 存储为三元组(Triple)
  • 标准的推理引擎
  • W3C标准
  • 易于发布数据
  • 多数为学术界场景

1.2 图数据库特性

  • 节点和关系均可以包含属性
  • 没有标准的推理引擎
  • 图的遍历效率高
  • 事务管理
  • 多数为工业界场景

2.图数据库neo4j

neo4j 是一款 NoSQL 图数据库,具备高性能的读写可扩展性,基于高效的图形查询语言 Cypher,更多介绍可访问 neo4j 官网,官网还提供了 Online Sandbox 实现快速上手体验。

启动登录(Windows)

以管理员权限运行 cmd,输入neo4j.bat console,启动 neo4j 服务。启动成功,终端出现如下提示即为启动成功。

在这里插入图片描述
注意:neo4j 启动前要求本地已安装 jdk,且有版本对应要求。这部分内容小伙伴们自行上网搜索哈。

3. 知识图谱数据准备

由于该项目是调用的开源数据接口Tushare,而农业领域尚未形成比较好的开源数据,所以这块的参考意义不大,我简单看了一下没有实践。

调用的数据是dataframe格式,作者利用不同的接口函数将其中的数据分别写入到不同的csv文件中。然后编写了几个计算股票系数的函数。

4.构建金融知识图谱

利用python链接neo4j数据库,读取csv中的数据,对缺失数据进行填充,对重复数据进行去重。然后构建节点和边。

关系的创建用到py2neo.NodeMatcher,利用公共属性将不同label标签链接到一起。使用这种方法的前提是所有实体都已经构建完成,只是每个实体都是独立的状态,彼此之间没有关联,并且每种label标签都存储在独立的csv文件中。最后作者还进行了股票间关联性分析,加强了股票之间的联系,减轻了neo4j中实体之间关联稀疏的问题。

5.总结

该项目内容写的很详细,其中在neo4j中构建节点间边的方法需要重点学习,与之前了解的方法不同,项目最后还附上了基于图数据库的一些算法链接,原作者太赞了,太周全了。果断star~

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

早知晓

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值