小型金融知识图谱构流程示范
向AI转型的程序员都关注了这个号👇👇👇
人工智能大数据与深度学习 公众号:datayx
1. 知识图谱存储方式
知识图谱存储方式主要包含资源描述框架(Resource Description Framework,RDF)和图数据库(Graph Database)。
1.1 资源描述框架特性
存储为三元组(Triple)
标准的推理引擎
W3C标准
易于发布数据
多数为学术界场景
1.2 图数据库特性
节点和关系均可以包含属性
没有标准的推理引擎
图的遍历效率高
事务管理
多数为工业界场景
代码 获取方式:
分享本文到朋友圈
关注微信公众号 datayx 然后回复 知识图谱 即可获取。
AI项目体验地址 https://loveai.tech
单肩包/双肩包/斜挎包/手提包/胸包/旅行包/上课书包 /个性布袋等各式包饰挑选
https://shop585613237.taobao.com/
2. 图数据库neo4j
neo4j是一款NoSQL图数据库,具备高性能的读写可扩展性,基于高效的图形查询语言Cypher
,更多介绍可访问neo4j官网,官网还提供了Online Sandbox实现快速上手体验。
2.1 软件下载
下载链接:https://neo4j.com/download-center/
3. 知识图谱数据准备
3.1 数据接口
免费开源金融数据接口:Tip: Tushare免费账号可能无法拉取数据,可参考issues提供的股票数据获取方法: https://github.com/jm199504/Financial-Knowledge-Graphs/issues/2#issuecomment-801732782
3.1.1 Tushare
官网链接:http://www.tushare.org/
3.1.2 JointQuant
官网链接:https://www.joinquant.com/
3.1.3 导入模块
5 数据可视化查询
基于Crypher语言,以平安银行为例进行可视化查询。
5.1 查看所有关联实体
5.2 限制显示数量
计算股票间对数收益率的相关系数后,查看与平安银行股票相关联的实体
5.3 指定股票间对数收益率相关系数
6 neo4j 图算法
6.1.中心度算法(Centralities)
PageRank(页面排名)
ArticleRank(文章排名)
Betweenness Centrality (中介中心度)
Closeness Centrality (接近中心度)
Harmonic Centrality(谐波中心度)
6.2 社区检测算法(Community detection)
Louvain (鲁汶算法)
[Label Propagation (标签传播)](Label Propagation)
[Connected Components (连通组件)](Connected Components)
[Strongly Connected Components (强连通组件)](Strongly Connected Components )
[Triangle Counting / Clustering Coefficient (三角计数/聚类系数)](Triangle Counting / Clustering Coefficient)
6.3 路径搜索算法(Path finding)
Minimum Weight Spanning Tree (最小权重生成树)
Shortest Path (最短路径)
Single Source Shortest Path (单源最短路径)
All Pairs Shortest Path (全顶点对最短路径)
A*(A星)
Yen’s K-shortest Paths(Yen-K最短路径)
Random Walk (随机游走)
6.4 相似性算法(Similarity)
Jaccard Similarity (Jaccard相似度)
Cosine Similarity (余弦相似度)
Pearson Similarity (Pearson相似度)
Euclidean Distance (欧氏距离)
Overlap Similarity (重叠相似度)
6.5 链接预测(Link Prediction)
Adamic Adar(AA)
Common Neighbors(共同近邻)
Preferential Attachment(优先连接)
Resource Allocation(资源分配)
Same Community(共同社区)
Total Neighbors(近邻总数)
6.6 预处理算法(Preprocessing)
One Hot Encoding(独热编码)
6.7 算法库安装及导入方法
以Windows OS为例,neo4j的算法库并非在安装包中提供,而需要下载算法包:
(1)下载graph-algorithms-algo-3.5.4.0.jar
(2)将graph-algorithms-algo-3.5.4.0.jar
移动至neo4j数据库根目录下的plugin
中
(3)修改neo4j数据库目录的conf
中neo4j.conf
,添加以下配置
dbms.security.procedures.unrestricted=algo.*
(4)使用以下命令查看所有算法列表
CALL algo.list()
6.8 算法实践——链路预测
6.8.1 Aaamic Adar algorithm
主要基于判断相邻的两个节点之间的亲密程度作为评判标准,2003年由Lada Adamic 和 Eytan Adar在 Friends and neighbors on the Web 提出,其中节点亲密度的计算公式如下:
阅读过本文的人还看了以下文章:
基于40万表格数据集TableBank,用MaskRCNN做表格检测
《深度学习入门:基于Python的理论与实现》高清中文PDF+源码
2019最新《PyTorch自然语言处理》英、中文版PDF+源码
《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码
PyTorch深度学习快速实战入门《pytorch-handbook》
【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》
李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材
【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类
如何利用全新的决策树集成级联结构gcForest做特征工程并打分?
Machine Learning Yearning 中文翻译稿
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程
不断更新资源
深度学习、机器学习、数据分析、python
搜索公众号添加: datayx
机大数据技术与机器学习工程
搜索公众号添加: datanlp
长按图片,识别二维码