知识图谱学习笔记

知识图谱学习笔记

基础知识篇


  1. 起源:由Google在2012年提出,目的是为了改进搜索引擎(从基于关键词的方式变为基于语义的方式)。能够理解用户的意图,查询出更复杂的信息,提升搜索质量。
  2. 特点:对真实世界中客观存在的实体 / 概念以及它们之间的关系的描述非常强大。
    • 不论强关系 / 弱关系都可以通过知识图谱准确地进行描述
  3. 知识库(Knowledge Base, 简写KB):

    • 定义:一条一条地知识堆积在一起形成了知识库
    • 分类:
      • Curated KBs(基于策划的知识库 / 结构化的维基百科):从WorldNet、维基百科等知识库中获取大量地实体和实体关系
      • Extrated KBs(基于扩展的知识库):直接从网页中爬取,从而抽取三元组(此三元组大多数是非结构化的自然语言的形式),此方法获得的数据存在噪声,精确度低于上一种。
    • 【注意】从维基百科 / 百度百科上获取的是非结构化的数据,利于人们理解,不利于计算机处理
    • 处理过程:
      • 综述:对获取到的知识进行简化,使其更有形式,形成三元组
      • 三元组:
        • 结构:(实体entity(或者topic),实体关系relation,实体entity)
        • 相当于E-R图
        • 实体关系有两种:
          • 实体-属性间的关系
            • 此关系连接的两个实体,一个是实体,一个是字符串
            • 【注意】属性通常用字符串表示
          • 实体-实体间的关系
        • 实体分两种:
          • 实体
          • 属性
    • 数据结构(对应两种实体关系):
      • (实体)-[关系]-(实体)
      • (实体)-[关系]-(值)
  4. 应用:
    • 知识存储
      • freebase(已经被Google收购)
        • 采用结构化数据存储知识,知识是一条一条的,
        • 结构:
          • topic: 一条条的知识就是一个实体,一个实体具有相应的属性
          • type: 多个同类实体组合在一起构成一个类型,同一个类型的实体具有相同的属性
          • domain: 多个相关的类型组合在一起构成一个域
    • 数据校验
      • 一致性校验
    • 专家系统
      • Watson临床系统
        • 特点:对大量非结构化数据进行认知
        • 功能:从大数据中进行学习,将各知识片连接起来,理解和解决用户问题。
        • 相关产品:Watson肿瘤治疗(利用专业知识,深度评估、分析病人的具体情况,为临床医师提供治疗方案)
    • 智能机器人
    • 语义搜索
      • 优势:基于知识图谱的搜索,是在已有的知识库中进行搜索,能够精准地返回结果(1个 / 几个)
    • 智能推荐系统
    • 私人助理
      • siri
      • 微软小娜

知识表达系统篇


  1. 三元组
    • 实体entity
    • 类型type:具有相同属性的实体的集合
    • 域domain:某一领域内所有类型的集合
    • 属性property
    • 关系relation

模式(schema)构建篇


  1. 模式schema = 数据模型
  2. 内容包括概念类型这些类型的属性
  3. 构建模式(导入数据的过程)的步骤:
    • 构建域,尽量抽象
      • 抽象到什么程度呢? –> 不要让其继续向上抽象
    • 确定一个域包括哪些类型
      • 此时要考虑的问题:
        • 核心需求是什么?
        • 要解决哪些问题?
        • 为了满足这些需求,需要创造出哪些概念类型?
      • 为了满足这些需求,需要构建一些类型来满足需求
    • 确定类型的属性
    • 【注意】
      • 产品需求决定了模式的构建
      • 产品应用决定了模式的整体构建方式
  4. 确认模式的构建流程
    • 需求划分
      • 分类:
        1. 基础核心需求:系统最核心的需求,优先级最高
        2. 模式特色需求:图谱能够解决,而其他方法很难解决的需求
        3. 锦上添花需求:加上有好处,不加也可以的需求
        4. 未来扩展需求
    • 列出模式第一期、第二期、第三期分别要完成哪些功能
    • 将产品需求转化成查询结构
      • 在每个功能点后面备注查询构建要点
    • 进行开发
  5. 构建模式时所需要的数据源的分类:
    • 已经清洗好的数据:直接改下数据格式进行导入
    • 已经清洗好的数据,但有残缺:要进行数据清洗、知识融合(此时很难确定多个数据实际指的是一个数据)
    • 无数据:要么购买 / 要么爬取
  6. 图谱的存储方式:
    • 2张表(一张存点,一张存边)
    • RDF
  7. 图谱查询方式:
    • 单机查询(适用于实体数量比较少)
    • graphX的分布式的存储(适用于实体数量很多)

  目录