发布日期:
2019-04-30
文章字数:
1.2k
阅读时长:
4 分
阅读次数:
知识图谱学习笔记
基础知识篇
- 起源:由Google在2012年提出,目的是为了改进搜索引擎(从基于关键词的方式变为基于语义的方式)。能够理解用户的意图,查询出更复杂的信息,提升搜索质量。
- 特点:对真实世界中客观存在的实体 / 概念以及它们之间的关系的描述非常强大。
- 不论强关系 / 弱关系都可以通过知识图谱准确地进行描述
知识库(Knowledge Base, 简写KB):
- 定义:一条一条地知识堆积在一起形成了知识库
- 分类:
- Curated KBs(基于策划的知识库 / 结构化的维基百科):从WorldNet、维基百科等知识库中获取大量地实体和实体关系
- Extrated KBs(基于扩展的知识库):直接从网页中爬取,从而抽取三元组(此三元组大多数是非结构化的自然语言的形式),此方法获得的数据存在噪声,精确度低于上一种。
- 【注意】从维基百科 / 百度百科上获取的是非结构化的数据,利于人们理解,不利于计算机处理
- 处理过程:
- 综述:对获取到的知识进行简化,使其更有形式,形成三元组
- 三元组:
- 结构:(实体entity(或者topic),实体关系relation,实体entity)
- 相当于E-R图
- 实体关系有两种:
- 实体-属性间的关系
- 此关系连接的两个实体,一个是实体,一个是字符串
- 【注意】属性通常用字符串表示
- 实体-实体间的关系
- 实体分两种:
- 数据结构(对应两种实体关系):
- (实体)-[关系]-(实体)
- (实体)-[关系]-(值)
- 应用:
- 知识存储
- freebase(已经被Google收购)
- 采用结构化数据存储知识,知识是一条一条的,
- 结构:
- topic: 一条条的知识就是一个实体,一个实体具有相应的属性
- type: 多个同类实体组合在一起构成一个类型,同一个类型的实体具有相同的属性
- domain: 多个相关的类型组合在一起构成一个域
- 数据校验
- 专家系统
- Watson临床系统
- 特点:对大量非结构化数据进行认知
- 功能:从大数据中进行学习,将各知识片连接起来,理解和解决用户问题。
- 相关产品:Watson肿瘤治疗(利用专业知识,深度评估、分析病人的具体情况,为临床医师提供治疗方案)
- 智能机器人
- 语义搜索
- 优势:基于知识图谱的搜索,是在已有的知识库中进行搜索,能够精准地返回结果(1个 / 几个)
- 智能推荐系统
- 私人助理
知识表达系统篇
- 三元组
- 实体entity
- 类型type:具有相同属性的实体的集合
- 域domain:某一领域内所有类型的集合
- 属性property
- 关系relation
模式(schema)构建篇
- 模式schema = 数据模型
- 内容包括概念类型和这些类型的属性
- 构建模式(导入数据的过程)的步骤:
- 构建域,尽量抽象
- 确定一个域包括哪些类型
- 此时要考虑的问题:
- 核心需求是什么?
- 要解决哪些问题?
- 为了满足这些需求,需要创造出哪些概念类型?
- 为了满足这些需求,需要构建一些类型来满足需求
- 确定类型的属性
- 【注意】
- 产品需求决定了模式的构建
- 产品应用决定了模式的整体构建方式
- 确认模式的构建流程
- 需求划分
- 分类:
- 基础核心需求:系统最核心的需求,优先级最高
- 模式特色需求:图谱能够解决,而其他方法很难解决的需求
- 锦上添花需求:加上有好处,不加也可以的需求
- 未来扩展需求
- 列出模式第一期、第二期、第三期分别要完成哪些功能
- 将产品需求转化成查询结构
- 进行开发
- 构建模式时所需要的数据源的分类:
- 已经清洗好的数据:直接改下数据格式进行导入
- 已经清洗好的数据,但有残缺:要进行数据清洗、知识融合(此时很难确定多个数据实际指的是一个数据)
- 无数据:要么购买 / 要么爬取
- 图谱的存储方式:
- 图谱查询方式:
- 单机查询(适用于实体数量比较少)
- graphX的分布式的存储(适用于实体数量很多)