带你走进知识图谱的世界

news2024/9/24 3:27:24

知识图谱

  • 知识图谱的介绍
      • 01 什么是知识图谱
      • 02 知识图谱构建的关键技术
      • 03 知识图谱的存储
      • 04 知识图谱在金融领域的应用
      • 图数据库 Neo4j


知识图谱的介绍

知识图谱最开始是Google为了优化搜索引擎提出来的,推出之后引起了业界轰动,随后其他搜索公司也纷纷推出了他们的知识图谱。知识图谱发展到今天,不仅是应用在搜索行业,已经是AI的基础功能了。那到底知识图谱是什么?有什么能力?怎么应用?这就是本文想要讨论的内容。

01 什么是知识图谱

1. 定义

官方定义:知识图谱是一种基于图的数据结构,由节点(point)和边(Edge)组成,每个节点表示一个“实体”,每条边为实体与实体之间的“关系”,知识图谱本质上是语义网络。

实体指的可以是现实世界中的事物,比如人、地名、公司、电话、动物等;关系则用来表达不同实体之间的某种联系。

img

由上图,可以看到实体有地名和人;大理属于云南、小明住在大理、小明和小秦是朋友,这些都是实体与实体之间的关系。

通俗定义:知识图谱就是把所有不同种类的信息连接在一起而得到的一个关系网络,因此知识图谱提供了从“关系”的角度去分析问题的能力。

2. 可视化表现

如果我们在百度搜索“周杰伦的老婆”的时候,搜索结果不是周杰伦,而是直接返回了昆凌的信息卡片,为什么呢?

img

因为底层知识图谱已经有了周杰伦和昆凌是夫妻关系,所以可以理解到你要找的是昆凌,而不是周杰伦,这也说明了知识图谱有理解用户意图的能力。

img

02 知识图谱构建的关键技术

知识图谱构建的过程中,最主要的一个步骤就是把数据从不同的数据源中抽取出来,然后按一定的规则加入到知识图谱中,这个过程我们称为知识抽取

数据源的分为两种:结构化的数据和非结构化的数据。

结构化的数据是比较好处理的,难点在于处理非结构化的数据。而处理非结构化数据通常需要使用自然语言处理技术:实体命名识别、关系抽取、实体统一、指代消解等。

我们先来看下把这段文字变成知识图谱的方式表达的结果:

img

上图左边的文案就是一个非结构化的文本数据,就需要经过一系列的技术处理,才能转化为右边的知识图谱。具体是怎么实现的呢,接下来一一讨论。

1. 实体命名识别

img

提取文本中的实体,并对每个实体进行分类或打标签,比如把文中“1984年12月30日”记为“时间”类型;“克利夫兰骑士”和“迈阿密热火”记为“球队”类型,这个过程就是实体命名。

2. 关系抽取

img

关系抽取是把实体之间的关系抽取出来的一项技术,其中主要是根据文本中的一些关键词,如“出生”、“在”、“转会”等,我们就可以判断詹姆斯与地点俄亥俄州、与迈阿密热火等实体之间的关系。

3. 实体统一

img

在文本中可能同一个实体会有不同的写法,比如说“LBJ”就是詹姆斯的缩写,因此“勒布朗詹姆斯”和“LBJ”指的就是同一个实体,实体统一就是处理这样问题的一项技术。

4. 指代消解

img

指代消解跟实体统一类似,都是处理同一个实体的问题。比如说文本中的“他”其实指的就是“勒布朗詹姆斯”。所以指代消解要做的事情就是,找出这些代词,都指的是哪个实体。

指代消解和实体统一是知识抽取中比较难的环节。

03 知识图谱的存储

知识图谱主要有两种存储方式:一种是基于RDF的存储;另一种是基于图数据库的存储。

1. RDF(Resource Description Framework)

RDF一个重要的设计原则是数据的易发布以及共享,另外,RDF以三元组的方式来存储数据而且不包含属性信息。

2. 图数据库

图数据库主要把重点放在了高效的图查询和搜索上,一般以属性图为基本的表示形式,所以实体和关系可以包含属性。

3. RDF和图数据库的主要特点区别

img

关于知识图片的存储方式的内容比较专业,且没有实际操作过比较难理解,所以我就不在此展开讨论了,大家简单知道知识图谱有这么一项内容就行,若有需要的可以自行研究下。

下面我们把重点放在知识图片在金融领域的一些应用。

04 知识图谱在金融领域的应用

知识图谱在各行各业中的应用是比较普及的,并且有很重要的地位。下面我们跟大家一起讨论的是知识图谱在金融领域的一些应用,希望能通过这些例子给大家一点启发。

1. 反欺诈

假设银行要借钱给一个人,那要怎么判断这个人是真实用户还是欺诈的呢?

img

我们需要以人为核心,展开一系列的数据构建,比如说用户的基本信息、借款记录、工作信息、消费记录、行为记录、网站浏览记录等等。把这些信息整合到知识图谱中。从而整体进行预测和评分,用户欺诈行为的概率有多大。当然这个预测是需要通过机器学习,得到一个合理的模型,模型中可能会包括消费记录的权重、网站浏览记录的权重等等信息。

2. 不一致性验证

img

比如说不同的两个借款人,却填写了同一个电话号码,那说明这两个人中至少有一个是可疑的了,这时就需要重点关注了。

img

更复杂点的,可能需要知识图谱通过一些关系去推理了。比如说“借款人”跟小明和小秦都是母子关系,按推理的话小明跟小秦应该是兄弟关系,而在知识图谱上显示的是朋友关系,就有可能有异常了,因此也需要重点关注。

3. 客户失联管理

img

如果借款人失联了,通过知识图谱,是不是可以联系他的朋友,或兄弟,甚至是兄弟的妻子,去追踪失联人。

因此在失联的情况下,知识图谱可以挖掘更多失联人的联系人,从而提高催收效率。

4. 知识推理

img

如上左图(注意这里的箭头方向),小秦是大秦的儿子,大秦是老秦的儿子,从这这样的关系,我们就可以推理出,小秦是老秦的孙子,这样就能使知识图谱更加完善了。

img

如上左图,小明在腾讯上班,小秦也在腾讯上班,从这样的关系,我们可以推理出,小明和小秦是同事关系。

推理能力其实就是机器模仿人的一种重要的能力,可以从已有的知识中发现一些隐藏的知识。当然这样的能力离不开深度学习,而随着深度学习的不断成熟,我相信知识图谱的能力也会越来越强大。

graph - embedding 图编码

图数据库 Neo4j

neo4j 下载: https://neo4j.com/download-center/

Neo4j Demo https://grapheco.org/InteractiveGraph/dist/examples/example1.html

为什么用 neo4j ?用的人最多, 模板好找, 报错能查,就这么简单

官网 : neo4j.com

Neo4j 教程 https://www.w3cschool.cn/neo4j/neo4j_need_for_graph_databses.html

JDK安装 :https://www.oracle.com/java/technologies/downloads/

不支持 低版本的jdk 必须是10以上

启动 neo4j.bat console

网页访问localhost:7474

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/57100.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]计算机毕业设计医疗器械公司公告管理系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

MXNet中im2rec将图片转换成二进制RecordIO格式

我们在前面的 计算机视觉之目标检测训练数据集(皮卡丘)《2》其中有提到这个二进制的RecordIO格式,使用的是MXNet自带的im2rec工具,源码在tools里面 import mxnet as mx #D:\Anaconda3\envs\myd2l\lib\site-packages\mxnet\tools\…

农大毕业7年后,转行软件测试,我拿到了一块结实的敲门砖

“经过这段时间的学习,让我摸清了这个行业的游戏规则,可以说是让我拿到了一块结实的敲门砖。” 今天跟大家分享的是近期就业的学员刘同学的转行故事,希望他的经历能给同样在向梦想奔跑的你一些帮助。 毕业7年后,从网信办主任转行…

基于STM32单片机的直流电机PWM调速(数码管显示)(Proteus仿真+程序)

编号:24 基于STM32单片机的直流电机PWM调速 功能描述: 由 STM32单片机数码管显示模块键盘模块L298N电机驱动模块直流电机 1、采用STM32F103单片机为主控制器 2、四个按键,分别为启动/暂停、方向切换、加速、减速功能 3、数码管显示PWM占空比…

[附源码]计算机毕业设计演唱会门票售卖系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

SMART PLC高速脉冲输出如何断电保持当前位置

S7-200 SMART PLC脉冲轴控制相关的内容,可以参看下面的博客: S7-200 SMART PLC自定义脉冲轴控功能块AxisControl_FB(梯形图)_RXXW_Dor的博客-CSDN博客博途1200/1500PLC的相关总线轴PN总线控制可以参考相关专栏的博客,链接地址如下:博途PLC 1200/1500PLC轴控功能块Servo_A…

[附源码]Python计算机毕业设计Django基于Vuejs的中国名茶销售平台

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

历史名人鲁迅介绍HTML个人网页作业作品下载 历史人物介绍网页设计制作 大学生英雄人物网站作业模板 dreamweaver简单个人网页制作

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

Java分布式系统和云计算教程

Java分布式系统和云计算教程 大规模学习分布式 Java 应用程序、并行编程、分布式计算和云软件架构 课程英文名:Distributed Systems & Cloud Computing with Java 此视频教程共4.0小时,中英双语字幕,画质清晰无水印,源码附…

【数据可视化】Data Reduction和加利福尼亚的房价数据集数据可视化以及Kettle的初步介绍

一.数据归约Data Reduction 对海量数据进行复杂的数据分析和机器学习将需要很长时间,使得这种分析不现实或不可行。数据归约技术可以用来得到数据集的归约表示,它小得多,但仍接近保持原数据的完整性。对归约后的数据集计算将更有效&#xff…

[附源码]计算机毕业设计JAVA校园拓展活动管理系统

[附源码]计算机毕业设计JAVA校园拓展活动管理系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM my…

[附源码]Python计算机毕业设计Django基于vue的软件谷公共信息平台

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

A-Level化学例题解析及练习Co-ordinate bond

今日知识点:Co-ordinate bond (or Dative covalent bond)例题 Q: When solid aluminium chloride is heated, Al2Cl6 is formed. Which bonding is present in Al2Cl6? A Covalent and co-ordinate (dative covalent) B Covalent only C Ionic and co-ordina…

MySQL8高级_读写分离和分库分表

MySQL8高级_读写分离和分库分表 第01章 高性能架构模式 互联网业务兴起之后,海量用户加上海量数据的特点,单个数据库服务器已经难以满足业务需要,必须考虑数据库集群的方式来提升性能。高性能数据库集群的第一种方式是“读写分离”&#xff…

你知道MySQL锁,到底在锁什么吗?

前言 MySQL锁写过不少,那么这篇文章还是来和大家聊一聊MySQL的锁。 只要学计算机,「锁」永远是一个绕不过的话题。MySQL锁也是一样。 一句话解释MySQL锁: MySQL锁是解决资源竞争的一种方案。 短短一句话却包含了3点值得我们注意的事情&a…

C++——隐式类型转换

隐式类型转换&#xff08;构造函数的隐式调用&#xff09; 先看一下隐式类型转换如何发生吧&#xff1a; #include <iostream> using namespace std;class point {public:int x,y;point(int x0, int y0):x(x),y(y) {} }void displayPoint(const point &p) {cout &l…

基于场景分析法的电动车优化调度(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️❤️&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f389;作者研究&#xff1a;&#x1f3c5;&#x1f3c5;&#x1f3c5;主要研究方向是电力系统和智能算法、机器学…

计算机图形学中的曲线问题

文章目录免责前言拉格朗日插值多项式第一步&#xff1a;得到一个基函数第二步&#xff1a;得到所有基函数第三步&#xff1a;对所有基函数进行线性组合举例验证三次埃尔米特插值多项式第一步&#xff1a;得到第一维基函数第二步&#xff1a;得到第二维基函数第三步&#xff1a;…

【Linux03-基本工具之make和makefile】Linux下的项目构建工具+进度条小程序

前言 接上篇&#xff0c;接着学习基本工具。 博主水平有限&#xff0c;不足之处望请斧正。 三、make和makefile 是什么 makefile(Makefile)&#xff1a;用来写入 依赖关系和依赖方法 的文件。 make&#xff1a;用来执行 makefile 的命令。 为什么 允许我们自动化构建项目…

必看知识点:Redis 中的原子操作(1)-Redis 中命令的原子性

必看知识点&#xff1a;Redis 中的原子操作(1)-Redis 中命令的原子性 Redis 如何应对并发访问 Redis 中处理并发的方案 业务中有时候我们会用 Redis 处理一些高并发的业务场景&#xff0c;例如&#xff0c;秒杀业务&#xff0c;对于库存的操作。。。 先来分析下&#xff0c…