【AI】知识的表示方法
2023-06-05 17:54:16

引子

人工智能有三大关键要素:算法、数据和算力。将人工智能的训练工作比作造房子,数据就是建造房子所需要的石头、木头、砂浆等材料;算法就是房子的组成方式、造房子的方法等;算力就是吊车、独轮手推车一类的工具。

要想让计算机具有智能,首先要让它拥有知识。知识的表示方法,也是人工智能训练绕不过去的一个问题。

1. 一阶谓词逻辑表示法

“一阶谓词逻辑表示法是一种重要的知识表示方法,其以数理逻辑为基础,能够精确表达人类的思维活动规律。”,一些教科书上写道。这种表示法,就是采用一套符号系统,来表示对世界的描述性陈述,并在此基础上进行推导。

该表示系统有三个核心概念:

  • 个体:表示独立存在的事物。用小写表示。
  • 谓词:用来描述个体的属性和个体之间关系,具有真假性。用大写字母表示。
  • 量词:包括全称量词和存在量词,分别表示“对于任意的……,都……”和“存在……,使得……”的关系。

此外,还有一些连接词,比如:

  • 合取词$\wedge$,其两侧命题同时为真,才为真。
  • 析取词$\vee$,其两侧命题有一为真,则为真。

举个例子,如何用该系统表示“只要你是一个人,就会死”呢?
$$
(\forall x)(P(x)\to D(x))
$$
其中,$x$代表个体,$P(x)$代表$x$是一个人类,$D(x)$代表$x$是会死的,中间的箭头表示推导出。

至于在该表示系统上的推理,可以使用数理逻辑的相关知识。

2. 产生式表示法

有很多知识,可以被理解为规则。举个例子,“一个水分子由两个氢原子和一个氧原子组成”,就可以抽象成if…then…形式的语句:If 一个分子是水分子, then 这个分子由两个氢原子和一个氧原子组成。产生式表示法就是应用if…then…形式的语句来表示知识的一个系统。

对于确定的知识,我们可以这么表示:

If 前提, then 结论。

对于不确定的知识,我们可以这么表示:

If 前提, then 结论 (置信度)。

此外,这种表示系统可以用与或树来表示。对于如下的形式,可以用与节点表示:

If 前提1 and 前提2…, then 结论。

对于如下的形式,可以用或节点表示:

If 前提1 or 前提2…, then 结论。

这样我们便可以通过一系列已有的前提,得出相应的结论。

3. 语义网络表示法

不同的物品、概念间有着不同的关系。如果我们用节点表示物品,用有向边代表关系,就成功地用图表示了知识。

语义网络的基本结构很简单:

节点1-具有意义的有向边-节点2

有向边的意义有很多种,比如:

实例关系:ISA

“我是一个人”,这个知识就可以表示成:

我–ISA->人

其中,ISA为is a,表示“……是一个……”、个体与集合的关系、“具体与抽象”的关系。

分类关系:AKO

“鸵鸟属于鸟类”,可以表示成:

鸵鸟–AKO->鸟类

其中,AKO为a kind of,表示“……是一种……”、集合与集合的关系、“子类与超类”的关系。

聚类关系:Part-of

“手属于人体”,可以表示成:

手–Part-of->人体

表示“……是……的一部分”的关系。

属性关系:have

“人体有手”,可以表示成:

人体–have->手

表示“……有……”的关系。

情况与动作的表示

节点可以用来表示事件或者动作。

连接词和量词的表示

合取、析取关系,可以通过引入相应的节点来表示。

对于否定、蕴含关系和存在量词,则可以通过引入相应的关系来表示。

对于全程量词则可以通过分块语义网络表示:

GS,表示所有全称实例的集合;G表示某一个全称实例,G的辖域(或者说,G所表示的具体内容),就是那条标记F的有向边所指向的方块。在这个方块里面,R是一个动作,是一种学习方式,学习的主体是S,S是一个学生,客体是P,P是一门外语。

4. 框架表示法

这个表示系统里面,很多词翻译得都很奇怪。

和语义网络表示法差不多,框架表示法用一种类似于键值对的方式存储数据。

首先,我们用一个Frame(框架)来表示一个物品、概念。该框架下面,包含着若干Slot,Slot用来表示该Frame的一些特征,接着,每个Slot(槽)都有一些Facet(侧面,一个方面),Facet用来描述Slot的不同属性。

举个例子,一个景德镇制造的白色的陶瓷水杯可以用如下的框架来表示:

Frame: 水杯

Slot1 颜色:白色

Slot2 材质:陶瓷

Slot3 产地:

Facet1 国家:中国

Facet2 具体地址:景德镇

框架之间可以彼此继承,比如水杯这个框架可以继承自生活用品的框架。

面向对象。

上一页
2023-06-05 17:54:16
下一页