人工智能导论——逻辑推理_d3

比比叨叨

复习起来比想象的慢啊啊啊啊!挺住!一定要好好复习完。
人工智能导论——逻辑推理_d3_02
突然想到霸王别姬里的这句话,帆神如是,陈老如是,我也要加油啊!

0. 逻辑推理概述

逻辑推理这章的重要考点必然是归结推理,20分的必考题已经在那了,除此之外还需要对其他推理方法进行掌握,能够应对选择题。

本章中推理的方法可分为如下五种:

  1. 自然演绎推理
  2. 归结演绎推理
  3. 非归结演绎推理
  4. 知识图谱
  5. 不确定推理

而根据系统的区分,推理又分为以下两类:

  1. 经典推理:采用演绎逻辑推理。从已知出发,演绎推理出结论,是从一般到个别
  2. 非经典推理:采用归纳逻辑推理。从个别到一般。如知识图谱。

1. 自然演绎推理和归结演绎推理

区分两者之前,先明确一下定义:

自然演绎推理:从已知为真的事实出发,运用经典逻辑的推理规则推出结论。
归结演绎推理:对要证明为真公式取非,导出矛盾。

综上,归结演绎推理可看作反证法。那归结推理的书面形式要怎么写呢?

首先,归结推理需要经过以下步骤:

命题改写为合取范式
求子句集
归结推理规则
归结式为空S矛盾
原命题成立

要想完成以上过程,需要考虑很多东西,接下来咱们逐个求解。

1.1 命题、谓词、谓词公式

基础不牢,地动山摇!

命题:描述观点的陈述句
谓词:可以看作描述事物关系的函数
谓词公式:使用谓词描述命题

看下面这个例子相信你就能对应上了!
人工智能导论——逻辑推理_演绎推理_03

1.2 合取范式、析取范式、前束范式

合取范式:命题和命题的与
析取范式:命题和命题的或
前束范式:把所有量词提取到前面,消除所有量词

将谓词公式转化为前束范式的形式叫SKOLEM化
完成SKOLEM化需要掌握一些变化的公式。

  1. ~P=>Q 等价于 PVQ
  2. P=>Q 等价于 ~PVQ
  3. ~(AVB) 等价于 非A且非B

之后,根据量词的作用域将量词提至最前。

1.3 子句集求取

要想求子句集,首先必须得知道啥是子句集。

子句:任何文字的析取式

那么子句集也就是将一个谓词公式化为一个子句集,可以包含多个子句。

了解了这些之后,需要按照步骤将命题化为子句集。

消去蕴含符
移动否定符号到最近谓词
变量标准化
消去存在量词
化为前束范式
化为合取范式
消去全称量词
消去合取
变量名

在化子句集的时候,并不需要完全按照步骤来做,只要能得到析取式的集合就是正确的。

子句与子句间合取,子句内部析取

  • 消去全称量词:直接去掉即可
  • 消去存在量词:代入

1.4 消解推理规则

此步骤需要利用规则消去子句。得到新子句为消解式。目的是推出为空(NIL)的消解式,并得到矛盾。

除了能通过消解推理规则证明外,也能通过消解树反演求解。

在归结过程中,使用如下策略,可以使得归结效率更高。:

  • 语义归结:将S分成两部分,约定每部分内不允许归结,可以得到高效的归结策略。
  • 支持集策略:每次归结只选取不同时属于S-T的子句间进行归结。
  • 线性归结:取每次得到的消解式进行归结
  • 单元归结
  • 输入归结:每次归结必有一个S的子句

2. 非归结演绎推理

包括如下几种:

  • 基于规则演绎推理:if-then推理
  • 自然演绎推理

这里还有很多乱七八糟的,先不看,重点不在这里。

3. 知识图谱

什么是知识图谱?

知识图谱:包含多种关系的有向图。

利用知识图谱可以进行推理,其中一阶归纳推理需要掌握。

3.1 FOIL(一阶归纳推理)

FOIL:通过序贯覆盖实现规则推理。
输入:目标谓词p、p的正例、反例、背景知识
输出:p的推理规则

FOIL的算法流程如下:

目标谓词作为结论
其他谓词作为约束加入推理规则
计算所得推理规则信息增益值
选取最优前提约束生成新规则
去掉与规则不符样例
不覆盖任何反例

其中,信息增益值计算方法如下:
人工智能导论——逻辑推理_d3_04
可见,信息增益值与增加约束谓词前后的正例、反例数量均有关系。

3.2 路径排序

路径排序:路径排序是有监督学习,将实体之间的关联路径作为特征,学习目标关系的分类器,分类器可用于推理两实体间是否存在目标关系。

4. 题目解析

  • 问题1
    人工智能导论——逻辑推理_ide_05

此题选D,编码成某种数据结构

  • 问题2
    人工智能导论——逻辑推理_d3_06

此题选D,记住就行,PPT里没有涉及

  • 问题3

人工智能导论——逻辑推理_演绎推理_07

这题C明显错误,选ABD,可用于深度学习

  • 问题4
    人工智能导论——逻辑推理_人工智能_08

这题选D,对于A,当前提不成立的时候,符合命题恒为真;对于C,

  • 作业——经典题目

1、 凡是涉及程序设计(Prog)且有挑战性(Chall)的课程小张都喜欢;

2、 计算机专业(Comp)的专业课程都涉及程序设计;

3、 AI是计算机专业的一门专业课程且是一门具有挑战性的课程。

请问:小张喜欢人工智能这门课程吗?

要求:定义谓词,用一阶谓词逻辑公式表示已知的事实和要证明的结论,并用归结原理证明该结论

踩坑点

  • 混淆∩与→,命题2为推出关系。