知识图谱与机器学习|KG入门 -- Part2 建立知识图谱
介绍
在本系列前面两篇文章中我一直在讨论Data Fabric,并给出了一些关于Data Fabric中的机器学习和深度学习的概念。并给出了我对Data Fabric的定义:
Data Fabric是支持企业所有数据的平台,它作为一个统一的框架来管理、描述、组合和访问数据。该平台由企业知识图谱构成以创建统一的数据环境。
如果你仔细看一下定义,它说Data Fabric是由企业知识图谱构建的,所以我们最好知道如何创建和管理它。
目标
建立了知识图谱理论的基础和讲解如何构建一个知识图谱
细节
解释与企业相关的知识图谱的概念
给出构建成功的企业知识图谱一些建议
展示知识图谱的例子
主要理论
Data Fabric中的fabric是由一个知识图谱构建的,而要创建一个知识图谱,你需要语义和本体来找到一种有用的方法来链接数据,这种方法惟一地标识数据并将数据与公共业务术语连接起来。
第一节 什么是知识图谱?
知识图谱由数据和信息组成,还包含大量不同数据之间的链接。
这里的关键是,在这个新模型下,我们不是在寻找可能的答案,而是在寻找确定的答案。我们想要的是事实——这些事实来自哪里并不那么重要。这里的数据可以代表概念、对象、事物、人,以及你头脑中的任何东西。图中填充了概念之间的关系和联系。
在这种情况下,我们可以向我们的数据湖提出这个问题:这里存在什么?
这里不同的是它可以建立一个框架来研究数据及其与其他数据的关系。在知识图谱中,表示在特定形式本体中的信息可以更容易地进行自动化信息处理,而如何最好地实现这一点是计算机科学(如数据科学)中一个活跃的研究领域。
本体语言中的所有数据建模语句(以及其他所有东西)和数据知识图谱的世界本质上都是递增的。通过修改概念,可以很容易地在事后增强或修改数据模型。
通过知识图谱,我们构建的是一种人类可读的数据表示,它惟一地标识数据,并将数据与常见的业务术语连接起来。这个“层”帮助终端用户自主、安全、自信地访问数据。
还记得这张图片吗?
我之前提过Data Fabric中的“洞察力”(insight)可以看作是对其的一个凹痕。而发现这种“洞察力”是什么的自动过程,就是机器学习。
但这种fabric是什么呢?是由知识图谱构成的对象。就像在爱因斯坦的相对论中,时空的连续体(或离散体?)构成了fabric,而在这里,当你创建一个知识图谱时,fabric就形成了。
为了构建知识图谱,你需要链接数据。链接数据的目标是发布结构化数据,使其易于使用,并与其他链接数据相结合,本体作为连接实体和理解实体之间关系的方式。
第二节 创建一个成功的企业知识图谱
不久前Sebastien Dery写了一篇关于知识图谱挑战的有趣文章。这里你可以看一看
https://medium.com/@sderymail/challenges-of-knowledge-graph-part-1-d9ffe9e35214
也可以看看cambridgesemantis.com上关于RDF的介绍以及其他资源,我在任何文章中都没有提到,但非常重要的一个概念是三元组的概念:主语、宾语和谓语(或实体-属性-值)。通常,当你研究三元组时,它们实际上是指资源描述框架(RDF)。
RDF是三种基本语义Web技术之一,另外两种是SPARQL和OWL。并且RDF是语义Web的数据模型。
注意:顺便说一下,这些概念几乎都是随着万维网语义的新定义而来的,但是我们将它用于知识图谱。
我不打算在这里详细描述这个框架,但是我将给出一个关于它们如何工作的例子。记住,我这样做是因为这是我们开始构建本体、链接数据和知识图谱的方式。
让我们看一个例子,看看这个三元组是什么,这与Sebastien提到的例子密切相关。
我们将从字符串“geoffrey hinton”开始。
现在,要开始构建一个知识图谱,首先系统要识别那个字符串实际上指的是Geoffrey Hinton这个人。然后它会识别那个人的相关实体。
顺便说一下,下面就是Geoffrey Hinton,如果你不认识他的话:
然后系统会开始给这些关系起名字:
这个系统可以在一段时间内找到连接的连接,从而为我们的“搜索字符串”创建一个表示不同关系的巨大图。
为此,知识图谱使用了三元组。像下面这样的:
正如你所看到的我们有一个主语(Geoffrey Hinton)与宾语(Researcher),然后通过一个谓语(is a)联系起来。这对我们人类来说可能听起来很简单,但是它需要一个非常全面的框架,机器才能够进行处理。
这是知识图谱形成的方式,也是我们使用本体和语义链接数据的方式。
那么,我们需要什么来创建一个成功的知识图谱呢?来自Cambridge Semantics的Partha Sarathi为此写了一篇很棒的博客,你可以看一看:
https://blog.cambridgesemantics.com/creating-a-successful-enterprise-knowledge-graph
总而言之,他说我们需要:
能够构想它的人:你需要具有业务关键主题专业知识和技术交叉的人员
数据多样性,尽可能还有大量的数据:采用企业知识图谱的价值和规模与所包含数据的多样性成正比
一个能够构建它的好产品:知识图谱需要具有良好的管理性、安全、易于连接到上下游系统、可进行大规模分析,而且往往是云友好的。因此,用于创建现代企业知识图谱的产品需要为自动化、支持各种输入系统的连接器、为下游系统提供标准的数据输出、快速分析任何规模的数据以及使管理变得友好进行优化。
可以阅读下面的文章进一步了解如何创建一个知识图谱:
https://info.cambridgesemantics.com/build-your-enterprise-knowledge-graph
第三节 知识图谱例子
Google:
Google基本上是一个巨大的知识(加上更多的补充)图谱,他们可能在此基础上创建了最大的Data Fabric。Google有数十亿的事实,包括关于数百万对象的信息和关系。并允许我们通过他们的系统去搜索,以发现其中的“洞察力”(insights)。
LinkedIn:
我最喜欢的社交网络LinkedIn有一个巨大的知识图谱,它建立在LinkedIn上的“实体”之上,比如成员、工作、头衔、技能、公司、地理位置、学校等等。这些实体和它们之间的关系构成了专业世界的本体。
而“洞察力”(insights)帮助领导者和销售人员做出商业决策,并提高LinkedIn的成员参与度:
记住,LinkedIn(以及几乎所有)的知识图谱都需要随着新成员的注册、新职位的发布、新公司、技能和头衔出现在成员简介和职位描述中等等而进行扩展。
你可以阅读下面的文章了解更多关于LinkedIn中的知识图谱:
https://engineering.linkedin.com/blog/2016/10/building-the-linkedin-knowledge-graph
金融机构知识图谱:
在下面Marty Loughlin的这篇文章中,他展示了Anzo平台可以为银行做些什么,在文章中你可以看到,这项技术不仅与搜索引擎相关,而且可以处理不同的数据。
https://blog.cambridgesemantics.com/why-knowledge-graph-for-financial-services-real-world-use-cases
在文章中,他展示了知识图谱如何帮助这类机构:
用于分析和机器学习的另类数据(Alternative Data)
利率互换风险分析
贸易监测
欺诈行为分析
特征工程与选择
数据迁移
总结
要创建知识图谱,你需要语义和本体来找到一种有用的方法来链接数据,这种方法惟一地标识数据并将数据与公共业务术语连接起来,从而构建Data Fabric的底层结构。
当我们构建一个知识图谱时,我们需要使用本体和语义形成三元组来链接数据。此外,知识图谱的构建基本上取决于三件事:构想它的人、数据多样性和构建它的好产品。
在我们周围有很多我们甚至不知道的知识图谱的例子。世界上大多数成功的公司都在实现和迁移它们的系统以构建Data Fabric。
欢迎关注磐创博客资源汇总站:
http://docs.panchuang.net/
欢迎关注PyTorch官方中文教程站:
http://pytorch.panchuang.net/
知识图谱与机器学习|KG入门 -- Part2 建立知识图谱的更多相关文章
- 知识图谱与机器学习 | KG入门 -- Part1-b 图深度学习
介绍 我们正在定义一种新的机器学习方法,专注于一种新的范式 -- Data Fabric. 在上一篇文章中,我们对机器学习给出了新的定义: 机器学习是一种自动发现Data Fabric中隐藏的&quo ...
- 机器学习 101 Mahout 简介 建立一个推荐引擎 使用 Mahout 实现集群 使用 Mahout 实现内容分类 结束语 下载资源
机器学习 101 Mahout 简介 建立一个推荐引擎 使用 Mahout 实现集群 使用 Mahout 实现内容分类 结束语 下载资源 相关主题 在信息时代,公司和个人的成功越来越依赖于迅速 ...
- ASP.NET 5 入门(1) - 建立和开发ASP.NET 5 项目
ASP.NET入门(1) - 建立和开发ASP.NET 5 项目 ASP.NET 5 理解和入门 使用自定义配置文件 建立项目 首先,目前只有VS 2015支持开发最新的ASP.NET 5 程序,所以 ...
- 机器学习简易入门(四)- logistic回归
摘要:使用logistic回归来预测某个人的入学申请是否会被接受 声明:(本文的内容非原创,但经过本人翻译和总结而来,转载请注明出处) 本文内容来源:https://www.dataquest.io/ ...
- ajax入门之建立XHR对象 (1)
ajax入门之建立XHR对象 今天帮朋友写了一个简单的ajax的demo,发现了一些东西,决定写一篇文章记录一下,避免以后挖坑. 创建XMLHttpRequest 通常 function create ...
- 爬虫入门一 基础知识 以及request
title: 爬虫入门一 基础知识 以及request date: 2020-03-05 14:43:00 categories: python tags: crawler 爬虫整体概述,基础知识. ...
- Andrew Ng机器学习算法入门(一):简介
简介 最近在参加一个利用机器学习来解决安全问题的算法比赛,但是对机器学习的算法一直不了解,所以先了解一下机器学习相关的算法. Andrew Ng就是前段时间从百度离职的吴恩达.关于吴恩达是谁,相信程序 ...
- 知识图谱与机器学习 | KG入门 -- Part1 Data Fabric
介绍 如果你在网上搜索机器学习,你会找到大约20500万个结果.确实是这样,但是要找到适合每个用例的描述或定义并不容易,然而会有一些非常棒的描述或定义.在这里,我将提出机器学习的另一种定义,重点介绍一 ...
- ISWC 2018概览:知识图谱与机器学习
语义网的愿景活跃且良好,广泛应用于行业 语义网的愿景是「对计算机有意义」的数据网络(正如 Tim Berners Lee.James Hendler 和 Ora Lassila 在<科学美国人& ...
随机推荐
- C++走向远洋——39(指向学生类的指针)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:zhizhen.cpp * 作者:常轩 * 微信公众号:Worl ...
- C++走向远洋——49(项目一2、复数类中的运算符重载、类的友元函数)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- Flutter跨平台框架的使用-iOS最新版
科技引领我们前行 [前言] 1:先简单的介绍下Flutter,它是一款跨平台应用SDK,高性能跨平台实现方案(暂时讨论iOS和Android), 它不同于RN,少了像RN的JS中间桥接层,所以它的性能 ...
- Spring AOP使用方式
AOP:全称是Aspect Oriented Programming,面向切面编程 Spring AOP的作用和优势: 作用:在程序运行期间,不修改源码对已有方法进行增强 优势:减少重复代码:提高开发 ...
- iMX287A多种方法实现流水灯效果
目录 1.流水灯在电子电路中的地位 2.硬件电路分析 3.先点个灯吧 4.shell脚本实现流水灯 5.ANSI C文件操作实现流水灯 6.Linux 系统调用实现流水灯 @ 1.流水灯在电子电路中的 ...
- 如何用Postman做接口自动化测试
目录 前言 什么是自动化测试 自动测试测试分类 为什么需要自动化测试 Postman自动化测试演示 1.新建集合 2.新建接口 3.填写自动化测试脚本 4.录入所有接口 5.执行自动化测试 前言 什么 ...
- CMSampleBufferRef解析
CMTime:64位的value,32位的scale, media的时间格式 CMVideoFormatDesc:video的格式,包括宽高.颜色空间.编码格式.SPS.PPS CVPixelBuff ...
- CSS-水平居中、垂直居中、水平垂直居中
1.水平居中 水平居中可分为行内元素水平居中和块级元素水平居中 1.1 行内元素水平居中 这里行内元素是指文本text.图像img.按钮超链接等,只需给父元素设置text-align:center即可 ...
- 支持IE6、IE7、IE8等低端浏览器的简化版vue
最近研究Vue的底层原理,写了一个简化版的Vue,可以在支持IE6.IE7.IE8等低端浏览器运行.由于低端浏览器不支持对象属性定义,所以设置属性不支持直接赋值,需要调用虚拟机实例的set方法.目前只 ...
- python3 flask shell
python shell来操作flask flask shell 报错: from flask_bootstrap import BootstrapImportError: No module nam ...