计算机技术学习札记

《人工智能》光速复习

第 2 讲:智能体

理性

理性的定义:对每一个可能的感知序列,根据先验知识,能最大化性能量度。

理性不等于全知。

PEAS

智能体的任务环境简写为 PEAS,即 Performance 性能、Environment 环境、Actuators 执行器和 Sensors 传感器。

环境的性质:完全可观察的 / 部分可观察的、确定性 / 随机性、片段的 / 延续的、静态的 / 动态的、离散的 / 连续的、单智能体 / 多智能体。

Agent 的类型

  • 表驱动的 Agent:做不到;

  • 简单反射 Agent:基于当前的感知选择行动,而不基于历史;可以通过随机化防止无限循环;

  • 基于模型的反射 Agent:模型是「世界如何运转」的知识,通过内部状态记忆。

  • 基于目标的 Agent:考虑行动的后果,思考「选择该动作会有什么影响」,更灵活(决策被显式地表现出来)。

  • 基于效用的 Agent:思考「选择该动作能取得多少效用」。

第 3 讲:一阶逻辑

谓词、函词、常量

  • 谓词:表示关系(x 是 y 的 P),比如 Brother、Owns、……

  • 函词:表示函数(x 的 F),比如 LeftLeg、……

  • 常量:表示对象

一阶逻辑知识工程

例子:对 1 位全加器进行建模。

先定义好词汇表,然后将基础知识表示出来:

然后对已知知识进行建模:

最后将问题表示出来:

第 4 讲:一阶逻辑推理

量词的推理规则

  • 全称量词(UI):置换成任何变量

  • 存在量词(Skolem):用未出现的常量符号置换,只置换一次

合一

前向链接推理

  1. 先把所有事实写在最下面

  2. 然后一条一条检查规则,向上找能不能匹配上的

反向链接推理

  1. 先把要证明的结论放最上面

  2. 找规则,看推出上面的结论,需要哪些条件,以及进行怎样的置换操作

归结

首先,需要将规则转换为若干子句「或」起来的形式,同时消除所有的量词和蕴涵。使用的方法是:

  • \(a\Rightarrow b\) 转为 \(\neg a\vee b\)

  • \(\neg\forall x p\) 变成 \(\exist x\neg p\)\(\neg\exist x p\) 变成 \(\forall x\neg p\)

  • \(\exist a p(a)\) 变成 \(p(F(a))\)

  • 删除全称量词

  • \(\wedge\) 分配到 \(\vee\)

然后,不断用条件去拿掉规则里面的子句,最终推出矛盾。

第 5 讲:约束满足问题

回溯搜索(Backtracing)

最少剩余值(MRV)

选择受到约束最多的变量(可选值最小的变量):

最少约束值(LCV)

选定变量后,选择给邻居最多选择的值:

弧相容性(Arc Consistency)

对于每个结点,无论它选择什么,和它相邻的结点都有可选的空间。

树结构 CSP

转换为树结构 CSP

第 6、7 讲:贝叶斯网络

条件概率表(CPT)

惰性与无知:没有足够的条件(事实、信息)来明确各种各样的因素,只能诉诸于概率。

概率的计算

Markov Blanket

给定一个结点的父结点、子结点和子结点的其他父结点,这个结点与网络中所有其他结点独立。

构建贝叶斯网络

精确推理:枚举

按顺序循环遍历所有变量进行计算。

精确推理:变量消元

感觉就是一种动态规划,把部分共用的值只算一次。

精确推理的复杂度

近似推理

就是顺着网络一个个事件地尝试,最后得到一个具体情况(比如,[阴天,下雨,地是湿的]),然后重复实验看有多少次这样的情况,就能近似出一个条件概率。

拒绝采样就是一个非常典型的估计条件概率的思维:N(a, b)/N(a) 就能预计 P(b|a)。它的问题是效率太低,因为本来 a 可能就少见,你还要等 a, b。

似然加权没看懂,把教材打印了。

第 8 讲:时间上的概率推理

没看懂,把 PPT 打印了。

第 9、10 讲:统计因果分析

结构因果模型(SCM)

用来描述变量之间的因果关系。比如:

  • 外生变量:U1: 性染色体;U2: 饮食环境;U3: 家庭条件,属于不用管的范围

  • 内生变量:V1:性别;V2:身高;V3:成绩,属于考虑范围

链结构

如上图。正常来说,Z 可以依赖 Y,也可能依赖 X;Y 可以依赖 X。但是,如果给定 Y(相当于,固定 Y=sth),那么 Z 和 X 就「无关系」了,即

\[P(Z=z|X=x, Y=y)=P(Z=z|Y=y)\]

分叉结构

如上图。正常来说,Y 和 Z 都可以依赖 X。此外,Y 和 Z之间也可能相互依赖,比如:

  • X=温度;Y=犯罪率;Z=冰激凌销量。X 上升,Y 和 Z 都会一起上升,意味着:如果 Y 上升,很有可能是因为 X 导致的,所以 Z 应该也会上升,于是 Y「潜移默化」地影响着 Z。即

    \[P(Z=z|Y=y)\not=P(Z=z)\]

但是如果给定 X(固定 X=sth),那么 Y 和 Z 就没关系了。

对撞结构

正常情况下,X 和 Y 是独立的,但是如果给定 Z,X 和 Y 反而可能会依赖。例如:

  • X=成绩好;Y=科研强;Z=奖学金。现在已经有 Z,并知道 X 不满足,那就能马上推出 Y。即

    \[P(X=x|Y=y, Z=z)\not=P(X=x|Z=z)\]

同样的依赖会发生在给定 Z 的子孙条件的情况。

d-分离

如果给定一组结点,给定这些结点的值(按住它们,给出具体的值),就能让两个结点之间完全没有依赖,称这组结点能让它们 d-分离。

校正公式

强调一个概念:\(P(X=x|do(Y=y))\) 表示强制让 \(Y=y\)(不用考虑为什么)的时候,\(X\) 的概率;而 \(P(X=x|Y=y)\) 则表示自然条件下如果出现了 \(Y=y\) 再出现 \(X=x\) 的概率。通过这种方式可以按住某个变量来阻断路径,避免其他变量的干扰。

后门准则

前门准则

第 11-14 讲:AIGC

词嵌入模型

c ̂_t - Candidate State : represents a temporary value that carries new information to update the LSTM cell's internal state.CBOW:上下文推中心:

Skip-gram:中心推上下文:

LSTM

  • \(i_t\) - Input Gate : The input gate is responsible for updating the cell state with new information.

  • \(f_t\) - Forget Gate : The forget gate is responsible for deciding what information from the previous cell state should be thrown away or kept.

  • \(o_t\) - Output Gate : The output gate decides what the next external state ℎ_t should be.

  • \(C_t\) - Internal State : represents the memory of the LSTM cell at a given time step "t", It is also referred to as the cell state.

  • \(h_t\) - External State : represents the output of the LSTM cell at a given time step "t." It can also be considered as the hidden state of the LSTM cell.

  • \(\hat{c}_t\) - Candidate State : represents a temporary value that carries new information to update the LSTM cell's internal state.

GRU

书上作业答案

第 4 次作业

第 5 次作业

第 6 次作业

第 7 次作业