高级人工智能-沈华伟-国科大2021-2022秋季学期课程

  • 连接主义(神经网络、深度学习)
    • 搜索问题
      • 启发式算法
        • 贪婪最佳优先搜索
        • A*搜索
          • A*树搜索
          • A*图搜索
          • 传教士和野人问题
          • 归结原理中的应用
    • 神经网络
      • 传统神经网络
        • 多层感知机(Multi-Layer Perceptron)
      • 计算机视觉的深度学习模型
        • 残差网络(Residual Networks, ResNets)
      • 序列数据的深度学习模型
        • 循环神经网络(Recurrent Neural Networks, RNN)
        • GRU and Long Short Term Memory(LSTM)
      • 生成式对抗网络(Generative adversarial networks, GAN)
      • 图神经网络
  • 符号主义(数理逻辑)
    • 命题逻辑(Propositional Logic)
      • 语法与逻辑推导(Syntax and Derivation)
      • 语义与形式推演(Semantics and Deduction)
        • 形式推演的11条规则(一种形式推演系统)
        • 归结原理(Resolution)
          • 转化为CNF合取范式
          • 可靠性(Soundness)
          • 完备性(Completeness)
        • Modus Ponens规则
          • 前向推理(Forward chaining)
          • 后向推理(Backward Chaining)
          • 可靠性(Soundness)
          • 完备性(Completeness)
    • 一阶谓词逻辑(First-order Logic)
      • 语法与逻辑推导(Syntax and Derivation)
      • 语义与形式推演(Semantics and Deduction)
        • 合一化算子(Unification)
        • 归结原理(Resolution)
          • 转化为CNF合取范式
          • 归结策略:广度优先
          • 归结策略:删除策略与限制策略
        • Generalized Modus Ponens (GMP) 规则
          • 前向推理与后向推理
    • 模糊逻辑
      • 模糊集
        • 模糊集的表示
        • 模糊集的运算
        • 模糊关系
      • 模糊逻辑
  • 行为主义(强化学习)
    • 群体智能
      • 蚁群算法
      • 粒子群算法
    • 强化学习
      • 格子游戏
    • 博弈
      • 基本概念
      • 田忌赛马

声明: 部分图片来自于课程讲义,(沈华伟,罗平)

连接主义(神经网络、深度学习)

搜索问题

启发式算法

启发式搜索(Heuristically Search)是利用问题拥有的启发信息来引导搜索,达到减少搜索范围、降低问题复杂度的目的,这种利用启发信息的搜索过程称为启发式搜索。其代表算法为:贪婪最佳优先搜索(Greedy Best-First Search)和A*搜索。

评价函数f(n)描述的是从当前节点出发,根据评价函数来选择后续节点。

启发函数h(n)描述的是从计算节点到目标节点之间所形成路径(耗散)的最小代价值。

贪婪最佳优先搜索

在贪婪最佳优先搜索算法里面,评价函数f(n)等于启发函数h(n)。贪婪最佳优先搜索不是最优的,也不是完备的。

A*搜索

A*树搜索

启发函数 h ( n ) h(n) h(n)是可采纳的,那么
0 ≤ h ( n ) ≤ h ⋆ ( n ) 0 \leq h(n) \leq h^{\star}(n) 0≤h(n)≤h⋆(n)
其中 h ⋆ ( n ) h^{\star}(n) h⋆(n)是到最近目标的真实耗散,即估计的耗散小于到最近目标的实际耗散。

A*树搜索算法最优性的条件是启发函数 h ( n ) h(n) h(n)是可采纳的,证明如下:
令A为最优目标节点,B为次优目标节点,并且 h ( n ) h(n) h(n)是可采纳的,要证明A在B之前离开边缘集合

假设B在边缘集合中,A的某个祖先节点n(可能包括A)也在边缘集合中,

所以 f ( n ) ≤ f ( A ) f(n) \leq f(A) f(n)≤f(A),

所以 f ( n ) ≤ f ( A ) < f ( B ) f(n) \leq f(A) < f(B) f(n)≤f(A)<f(B),
所以A的所有祖先在B之前扩展,A在B之前扩展,因此A*树搜索算法是最优的。

通常,可采纳启发函数是松弛问题的解的耗散。

A*图搜索

启发函数 h ( n ) h(n) h(n)是一致的,那么
h ( A ) − h ( C ) ≤ h(A) - h(C) \leq h(A)−h(C)≤ actual cost(A to C)
即对于图中的每一条弧,估计的耗散都小于实际的耗散。

A*图搜索算法最优性的条件是启发函数 h ( n ) h(n) h(n)是一致的,证明如下:


实话说,这些证明我没看懂,我的问题,老师上课也是读了一遍slide,与我无关……
启发函数的一致性暗示了可采纳性,通常天然的可采纳启发函数是倾向于一致的,特别是从松弛问题中获得的启发函数。

传教士和野人问题

[例题]
传教士missionary和野人caveman问题通常描述如下: 三个传教士和三个野人在河的一边,还有一条能载一个人或者两个人的船,找到一个方法让所有的人都渡到河的另一岸,要求在任何地方野人数都不能多于传教士的人数,可以只有野人没有传教士。
(1) 精确地形式化该问题,只描述确保该问题有解所必须的特性,画出该问题的完全状态图.
(2) 用一个合适的算法实现和最优地求解该问题,检查重复状态是个好主意嘛?
(3) 这个问题的状态空间如此简单,为什么求解却很困难?
本题答案部分来源于网络,有待确定!


完全状态图:


应该注意检查重复状态,能够避免进入死循环。

虽然状态空间比较简单,但是检查重复状态是一项困难的工作;并且列举当前状态所有合法的后继状态也很困难,包括无合法后继状态后的回溯问题。

归结原理中的应用

[例题]
应该如何设计A*启发式函数使得归结次数最少?

h ( n ) h(n) h(n) = minimal length of clause in this set.

神经网络

传统神经网络

多层感知机(Multi-Layer Perceptron)

多层感知机特性:

  1. 多层感知机层间神经元全连接。
  2. Can represent AND, OR, NOT, etc., but not XOR.
  3. 若训练数据集是线性可分的,则感知机模型收敛。

权重学习方式:BP算法


计算机视觉的深度学习模型

残差网络(Residual Networks, ResNets)

序列数据的深度学习模型

循环神经网络(Recurrent Neural Networks, RNN)



使用BPTT(Back Propagation Through Time)算法训练循环神经网络RNN。

梯度爆炸与梯度消失:

GRU and Long Short Term Memory(LSTM)

生成式对抗网络(Generative adversarial networks, GAN)

GAN的核心思想来源于博弈论的纳什均衡。GAN包括一个生成器(Generator)和一个判别器(Discriminator),生成器的目的是尽量去学习真实的数据分布,判别器的目的是尽量正确判别输入数据是来自真实数据还是来自生成器生成的数据。

图神经网络

符号主义(数理逻辑)

逻辑研究的内容:


KB ⊨ α \text{KB} \models \alpha KB⊨α的等价描述:

  1. M o d e l ( KB ) ⊆ M o d e l ( α ) Model(\text{KB}) \subseteq Model(\alpha) Model(KB)⊆Model(α)
  2. KB ⇒ α \text{KB} \Rightarrow \alpha KB⇒α is valid(永真)
  3. KB ∧ ¬ α \text{KB} \land \lnot \alpha KB∧¬α is unsatisfiable(不可满足)

命题逻辑(Propositional Logic)

语法与逻辑推导(Syntax and Derivation)


Entailment以及Implication的区别: Entailment是逻辑上的概念,刻画两组sentence之间的关系;Implication是命题proposition之间的一种算子,使用真值表刻画其语义。


命题逻辑中的知识库KB为满足命题逻辑语法的sentence的集合,假设在这组sentence中,一共有n个原子命题,对每个原子命题赋值称为真值指派,一共有 2 n 2^n 2n种真值指派,其中:使得KB中的每个sentence都为真的真值指派,就是KB的model。在此基础上,在命题逻辑中,可以明确的定义KB ⊨ α \models \alpha ⊨α。

语义与形式推演(Semantics and Deduction)

形式推演的11条规则(一种形式推演系统)

声明:此部分内容来自《面向计算机科学的数理逻辑》




归结原理(Resolution)

转化为CNF合取范式


Resolution归结原理证明KB ⊢ α \vdash \alpha ⊢α:

证明KB ⊢ α \vdash \alpha ⊢α举例:

需要注意:两个子句根据归结原理可以推出多个不同的子句。

[例题]

可靠性(Soundness)

在研究可靠性与完备性问题时,应当把语法层面的知识理解为Groundtruth,因此可靠性可以大概表述为:语义上推演得到的知识在语法上正确。因此要证明归结原理的可靠性,即证明:

可靠性的证明使用真值表即可。

完备性(Completeness)

完备性可以大概表述为:如果语法上能够推理得到的,那么语义上正确。


Modus Ponens规则

上述提到的归结原理具有完备性,这是很好的性质,对于许多现实世界的应用,如果添加一些限制,可以实现更高效的推理。为了换取更好的inference的时间效率,缩小命题逻辑propositional logic的表达范围,得到适用于Horn Form的Modus Ponens规则,是另外一种形式的归结原理。

Modus Ponens规则可以使用Forward Chaining or Backward Chaining,这些算法易于理解,并且时间复杂度为线性时间。

前向推理(Forward chaining)

前向推理的核心思想是:触发所有前提(前件)存在于知识库中的规则,将其结论(后件)添加到知识库中,直到完成查询query。

前向推理算法执行过程举例如下:

后向推理(Backward Chaining)


Forward Chaining以及Backward Chaining的比较:

可靠性(Soundness)


可靠性的证明使用真值表即可。

完备性(Completeness)

一阶谓词逻辑(First-order Logic)

语法与逻辑推导(Syntax and Derivation)





全称量词与存在量词:




[例题]

语义与形式推演(Semantics and Deduction)

合一化算子(Unification)

归结原理(Resolution)

转化为CNF合取范式


归结策略:广度优先

广度优先策略的优点:当问题有解时保证能找到最短归结路径;是一种完备的归结策略。
广度优先策略的缺点:归结出了许多无用的子句;既浪费时间,又浪费空间。

广度优先对大问题的归结容易产生组合爆炸,但对小问题却仍是一种比较好的归结策略。

归结策略:删除策略与限制策略

删除策略是通过删除某些无用的子句来缩小归结范围。限制策略是通过对参加归结的子句进行某些限制,来减少归结的盲目性,以尽快得到空子句。

Generalized Modus Ponens (GMP) 规则

前向推理与后向推理

[例题]

后向推理:

模糊逻辑

首先需要明确,模糊性的概念为对象从属的界限是模糊的,随判断人的思维而定。模糊性描述的是事件发生的程度,而不是一个事件是否发生;而随机性描述的是事件发生的不确定性,即一个事件发生与否。

模糊集



模糊集的表示


模糊集的运算






模糊关系






模糊逻辑

[例题]

行为主义(强化学习)

群体智能

蚁群算法


粒子群算法


强化学习

格子游戏

[例题]
假如玩家采用的策略是在每个格子以等概率选择上下左右四个方向进行移动,每移动一步的收益是-1,移动到出口时游戏结束,如果当前移动会导致出界,那么移动后位置不变.
(1) 策略评估: 请使用动态规划方法计算出当前策略下每个格子对应的状态估值.
(2) 策略提升: 写出上述估值函数对应的贪心策略.
(3) 最优策略: 求解该问题的最优策略以及相应的状态估值.



[例题]
更正:下面的贝尔曼方程中的符号有错误,但是结果正确,方程形式以上题为准!

博弈

基本概念





任何有限博弈都至少存在一个纳什均衡:不一定是纯策略纳什均衡,例如剪刀-石头-布;寻找博弈的纳什均衡是困难的,至少从算法角度来讲是这样。



其思想是最小化损失,控制风险;预防其它局中人的不理性给自己带来损失。

田忌赛马

[例题]
田忌和齐王赛马,每人有上、中、下三个等级的马各一匹,上等马优于中等马,中等马优于下等马,同一等级的马中齐王的马优于田忌的马. 比赛共进行三局,每局的胜者得1 分,负者的-1分,比赛结果为三局得分之和。
(1) 请写出田忌赛马这场博弈中的局中人、策略集合和效用矩阵。
(2) 请给出田忌赛马的任意一种混合策略纳什均衡解,并计算此时双方的期望得分。

高级人工智能(国科大2021-2022秋季学期课程)-基础概念及算法相关推荐

  1. 自然语言处理(国科大2021-2022秋季学期课程)-基础概念及算法

    自然语言处理-刘洋-国科大2021-2022秋季学期课程 数学基础 拉格朗日乘子法 熵.相对熵.交叉熵 隐马尔科夫模型 马尔科夫模型 前向.后向算法:观测状态序列概率计算 前向概率 后向概率 Vite ...

  2. 中科大数字图像分析(DIA)知识点总结与考试回忆-2022秋季学期

    文章目录 课程简介 知识点总结(复习用) 考试题回忆 1.三种图像采样效率比较(12) 2.二值化形态学算子的设计(8) 3.逆滤波的基本思想和如何改进(10) 4.图像分割的定义.阈值分割方法(10 ...

  3. 2021年秋季学期“大数据能力提升项目”证书办理及领取通知

    同学们,2021年秋季学期第2次证书办理工作即将开启.请满足办理证书条件的同学,按时提交申请材料.具体通知如下: [办理流程] 1. 自行再次确认报名大数据能力提升项目年份(2019年及之前.2020 ...

  4. 通知 | “大数据能力提升项目”证书办理及领取(2021年秋季学期)

    同学们,2021年秋季学期第1次证书办理工作即将开启.请满足办理证书条件的同学,按时提交申请材料.具体通知如下: [办理流程] 1. 自行再次确认报名大数据能力提升项目年份(2019年及之前.2020 ...

  5. 李宏毅2021/2022春机器学习课程(机器学习基本概念简介)

    (强推)李宏毅2021/2022春机器学习课程_哔哩哔哩_bilibili 目录 1.机器学习是什么? 2.机器学习任务 2.1 regression回归问题 2.2 classification分类 ...

  6. 哈工大2021~2022春季学期《计算机系统》大作业

    计算机系统 大作业 题     目 程序人生-Hello's P2P 专       业 计算机类 学    号 120L021025 班    级 2003001 学       生 指 导 教 师 ...

  7. 中国科学技术大学2021年秋季学期可编程逻辑器件原理及应用试题回忆版

    一.简答题 1. 请解释Tsu.Thold和Tco并画图说明 2. SignalTap II有什么特点?和传统逻辑分析仪相比有什么优点?简要说明SignalTapII的使用步骤 3. 请说明PLD的I ...

  8. 2022秋季学期总结

    今年的暑假十分愉快,一百分的愉快!论文初稿完成了90%. 去上海的每个周末都会和lsy骑车去各种有意思的地方,白天太热有时会在家里做做饭,偶尔忙忙各自的工作,到了晚上出去溜达时他就会拿着花露水喷雾在我 ...

  9. 南开大学软件学院2021年秋季学期研究生计算机网络课程(复习)

    一.ARPANET核心解决的问题是什么? ARPANET研究的核心:通信网络方案的设计两个基本问题: 网络拓扑结构:分布式网络结构 数据传输方式:分组交换 二.不同的拓扑结构的特点? 集中式网络结构( ...

最新文章

  1. 【Java基础】异常处理与输入输出流
  2. php 修改 wordpress,修改WordPress中文章编辑器的样式的方法详解
  3. php 能处理死循环吗,详解PHP死循环写法和作用
  4. 下单消息的发送和接收案例
  5. HTML使用vue的 event,vue-js 特殊变量$event常识
  6. macos big sur正式版_苹果macOS Big Sur正式版发布
  7. 樊昌信版通信原理期末复习第一章绪论
  8. 局域网中计算机网络密码查看,Win10怎么查看电脑上已知的wifi网络密码
  9. 小型的搜索引擎设计_广州网站设计工作室-赛致信息科技
  10. Flash Builder4与Flash cs4 协同工作
  11. IP is locked 的解决办法 Vivado
  12. 什么是串行接口和并行接口
  13. 融云:让银行轻松上“云”
  14. UE编辑器格式化java代码
  15. JAVA程序员必备网站
  16. ConnectString中enlist设置的含义
  17. 华为也无奈,P20pro降到历史新低价,老用户:买太早
  18. cBridge 2.0: 基于Celer状态守卫者网络的通用跨链平台
  19. python复数类型及其特点_python复数类型
  20. 前端常用素材网站大全

热门文章

  1. Unity CPU优化卡顿
  2. Coursera Algorithms week3 快速排序 练习测验: Nuts and bolts
  3. 旋转矩阵及旋转向量相互转化 Rodrigues矩阵及matlab实现
  4. Vundle ,Vim Bundle
  5. Github上找好东西的方法
  6. 可以说今年最详细的面试要点!耗时两个礼拜,五章8000字面试长文,写简历—阿里Offer一步到位!
  7. Python sublime 中文的问题汇总【收藏】
  8. linux中的ubiq命令用途,Linux3剑客习题及解答
  9. 台式计算机用电量是多少,台式计算机的功率是多少?台式计算机多少电量[详细介绍]...
  10. greenplum-db-5.10 for Centos 7.6 分布式安装,使用,备份与恢复