第3章:知识表示:概述、符号知识表示、向量知识表示

简介: 第3章:知识表示:概述、符号知识表示、向量知识表示

🍋知识表示概述

🍋知识表示的定义

知识表示是指将知识以一种机器可理解的形式表示出来,以便计算机系统能够理解、存储、检索和处理这些知识。在人工智能领域中,知识表示是构建智能系统的关键组成部分,因为它使计算机能够利用先前学到的知识来推理、解决问题和做出决策。

🍋知识表示的任务

知识表示的研究可以追溯到人工智能的早期。

不论是早期专家系统的知识表示方法,还是语义网的知识表示模型,都属于以符号逻辑为基础的知识表示方法。这种方法易于刻画显性、离散的知识,具有内生的可解释性。但也存在计算效率低、数据稀疏、隐性知识等问题。为了解决这些问题,知识图谱采用以三元组为基础的较为简单实用的知识表示方法,并弱化了对强逻辑表示的要求。这些基于向量空间的知识图谱表示使得这些数据更加易于与深度学习模型集成,并得到了越来越多的重视。

由于知识表示涉及大量传统人工智能的内容,并有其明确、严格的内涵及外延定义,为避免混淆,本章主要侧重于知识图谱的知识表示方法介绍,因此接下来提及的“知识表示”含义为知识图谱的知识表示方法。

🍋知识表示的方法

🍋基于符号的知识表示

  • 谓词逻辑表示(Predicate Logic Representation): 谓词逻辑是一种使用逻辑符号和谓词来表示事实和关系的形式化语言。它允许我们描述对象、属性和关系,并使用逻辑运算符(如与、或、非)进行推理。例如,用谓词逻辑表示“所有人都会死亡”可以写成∀x (Person(x) → Mortal(x))。
  • 框架表示(Frame Representation): 框架是一种将知识组织成结构化框架的方法。每个框架包含有关实体、属性和关系的信息。框架通常由槽(slot)和插槽值(slot value)组成,用于描述实体的特征和属性。例如,一个人的框架可以包含姓名、年龄、性别等槽。
  • 语义网络表示(Semantic Network Representation): 语义网络使用节点和边表示实体和它们之间的关系。节点表示实体,边表示实体之间的关系。这种表示形式在图形理论中有广泛应用,例如,一个图可以表示"父母"关系,节点表示人物,边表示亲子关系。
  • 产生式表示(Production System Representation): 产生式系统使用产生式规则来表示知识和推理过程。每个产生式规则包含一个条件和一个结论,当条件满足时,就可以执行规则并得到结论。这种方法通常用于专家系统中,其中专家的知识以产生式的形式表示。

当然不是什么方法都可以无条件的使用,它们直接的不同点代表了其适用的场景

方法 优点 缺点
谓词逻辑表示 严格的逻辑结构,便于推理;可以表达复杂的逻辑关系;提供形式化的推理框架 面对不确定性和模糊性的表达能力有限;对于大规模知识库,表达复杂关系可能变得繁琐
框架表示 结构清晰,易于理解;支持层次结构,可以组织复杂的知识;适用于表示实体属性关系 缺乏一般性,可能无法处理一些抽象的概念;难以处理不确定性
语义网络表示 直观,易于可视化;适用于表示实体和关系之间的连接 可能不足以表达复杂的逻辑和推理;对于大规模知识表示,网络结构可能变得复杂
产生式表示 适用于描述规则和推理过程;灵活,容易扩展 可能难以表示复杂的关系和抽象概念;不适用于所有类型的知识表示,特别是非规则性的知识

🍋基于向量的知识表示

平移模型(Translation Models):

任务: 主要用于知识图谱中的关系表示学习。
    方法: 平移模型通过学习将头实体的嵌入向量平移(或移动)到尾实体的嵌入向量来表示关系。常见的平移模型包括TransE、TransH、TransR等。
    优势: 简单而直观,易于理解和实现。在处理简单的关系时表现良好。
    限制: 对于复杂的关系和知识图结构可能效果较差。

TransE 模型:

基本思想: TransE 模型的核心思想是假设关系表示为实体之间的平移。即,通过将头实体的嵌入向量加上关系的嵌入向量,得到尾实体的嵌入向量。数学上表示为 h + r ≈ t,其中 h、r、t 分别为头实体、关系和尾实体的嵌入向量。

损失函数: 通常使用 margin-based 的损失函数,例如 margin ranking loss,来最小化正确三元组的得分和错误三元组的得分之间的差距。

优势: 简单直观,易于理解和实现。在处理简单的关系时表现良好。

限制: 对于复杂的关系和知识图结构可能效果较差。

TransH 模型:

基本思想: TransH 模型在 TransE 的基础上进行改进,引入关系空间投影。即,每个关系都有一个关系空间的法向量,将实体的嵌入向量投影到关系空间上。这样,头实体的嵌入向量加上关系空间法向量就等于尾实体的嵌入向量。

损失函数: 与 TransE 类似,通常使用 margin-based 损失函数。

优势: 能够处理更复杂的关系,提高了模型的表达能力。

限制: 仍然可能在处理一些复杂图谱结构时存在局限性。

TransR 模型:

基本思想: TransR 模型在 TransE 的基础上引入了关系特定的投影矩阵。不同于 TransH,TransR 使用矩阵将实体嵌入向量从实体空间映射到关系空间。这样,头实体的嵌入向量通过关系特定的投影矩阵得到尾实体的嵌入向量。

损失函数: 同样使用 margin-based 损失函数,目标是最小化正确三元组和错误三元组的得分差距。

优势: 更灵活地处理不同关系的表达,提高了模型的适应性。

限制: 与其他模型一样,可能在处理大规模图谱时遇到挑战。


组合模型(Composition Models):

任务: 用于将实体和关系的嵌入向量组合成更复杂的结构。
    方法: 组合模型通过将实体和关系的嵌入向量进行组合,以捕捉更复杂的语义信息。例如,通过拼接、池化、加权平均等方式。
    优势: 能够处理更复杂的知识表示,适用于复杂的关系和结构。
    限制: 计算开销可能较大,需要更多的参数和训练数据。

神经网络模型:

任务: 在知识表示学习中,神经网络模型可以用于学习实体和关系的嵌入向量,以及进行更复杂的知识表示。
    方法: 使用深度学习和神经网络结构,如图神经网络(Graph Neural Networks,GNNs)或者Transformer,以学习复杂的知识表示。
    优势: 具有较强的表达能力,能够学习更复杂的模式和结构。
    限制: 计算复杂度可能较高,需要更多的计算资源和数据。

没有最好的模型,只有最符合任务实际的模型。

挑战与创造都是很痛苦的,但是很充实。


相关文章
|
3月前
数字符号概述
数字符号概述
20 0
|
6月前
|
机器学习/深度学习 自然语言处理
向量的编码详解2
向量的编码详解2
63 1
学习笔记: 线性代数-向量的定义
线性代数个人学习笔记
182 0
|
机器学习/深度学习 大数据 数据挖掘
向量、矩阵概念|学习笔记
快速学习向量、矩阵概念
向量、矩阵概念|学习笔记
|
机器学习/深度学习 大数据 程序员
向量,矩阵概念|学习笔记
快速学习向量,矩阵概念
157 0
向量,矩阵概念|学习笔记
|
存储 数据挖掘 vr&ar
R 数据集的概念、向量、矩阵和数组|学习笔记
快速学习 R 数据集的概念、向量、矩阵和数组。
221 0
R 数据集的概念、向量、矩阵和数组|学习笔记
|
Python
Python经典编程习题100例:第44例:两个 3 行 3 列的矩阵,实现其对应位置的数据相加,并返回一个新矩阵
Python经典编程习题100例:第44例:两个 3 行 3 列的矩阵,实现其对应位置的数据相加,并返回一个新矩阵
296 0
向量检索/向量相似性计算方法(持续更新ing...)
本文介绍各种用于向量检索的向量相似性计算方法,将会简单介绍各种方法的优缺点等信息,并用toy example给出代码示例。
向量检索/向量相似性计算方法(持续更新ing...)
|
Python
计算两个字符串相(或句子)似度的方法
主要方法有:编辑距离、余弦相似度、模糊相似度百分比
149 0
计算两个字符串相(或句子)似度的方法
|
算法 搜索推荐 数据安全/隐私保护
简明解释算法中的大 O 符号
2009年1月28日Arec Barrwin在StackOverflow上提问,“有没有关于大O符号(Big O notation)的简单解释?尽量别用那么正式的定义,用尽可能简单的数学来解释”。在经过众多热心网友的修改更新后,最佳回复的得分已高达 3234 分,详细内容,请见下文。
294 0
简明解释算法中的大 O 符号