国科大高级人工智能-总结
文章目录
- 1.概论
- 2. 搜索
- A\*最优性
- 三个传教士与野人
- 3.神经网络
- RBM DBN DBM hopfield比较
- 结构及特性
- 逐层贪婪训练与CD
- BP
- GAN
- 4.逻辑
- 一个永远无法归结结束的FOL
- 合取范式规范化
- 归结原理
- 4.1resolution是完备的、可靠的
- Modus ponens
- 4.1 蕴含与包含的证明
- 蕴含与implication的关系
- 5. 模糊数学和遗传算法
- 6. 强化学习
- 7. 群体智能
- 8. 博弈
- 田忌赛马
- 剪刀石头布
- 性别之战
- 拍卖
- 讨价
- 讨价的情形
- 打官司
- 海盗分金币
- 匹配问题分宿舍
- 中介
1.概论
- 图灵测试:表明其智能水平从表现来看,难以和人区分开来
- 三个学派:
- 符号学派
- 联结学派
- 行为学派
2. 搜索
- 广度优先搜索是代价一致搜索的特例(无权的)
- UCS是A*的特例
- A*=UCS+贪婪搜索
- UCS:看已经花费的
- 贪婪搜索:启发搜索,看未来(TSP-距离目标的直线距离)
- A*:过去未来都看
- 贪婪最佳优先搜索:是不完备的
- 爬山法:可以任意位置起始,移动到最好的相邻状态。
- 最优条件:
- A*树搜索:h(n)可采纳
- h(n)<=h*(n)
- A*图搜索:h(n)是一致的
- h(A)-h©<=cost(A to C)
- h(A)>h©–递减
- f(A)<f©(连续性?)
- A*树搜索:h(n)可采纳
- 避免重复状态
- 如果算法不检测重复状态,线性问题会变成指数问题
算法名称 | 算法策略 | 时间复杂度 | 空间复杂度 | 完备性 | 最优性 | 存储 |
---|---|---|---|---|---|---|
DFS(深度优先) | 深度优先(从左往右,得到最左结果, | O(bm)O(b^m)O(bm) | O(bm)O(bm)O(bm) | (不完备)有限就有解 | 无 | 堆栈 |
Depth-limited(深度优先) | 深度优先,限制最长搜索深度,超过就换一条 | O(bl)O(b^l)O(bl) | O(bl)O(bl)O(bl) | (不完备)m有限就有解 | 无 | 堆栈 |
Iterative-Depth(深度优先) | 逐层限制深度,使用DFS(DFS的空间+BFS的最优) | O(bd)O(b^d)O(bd) | O(bd)O(bd)O(bd) | 有解,s必然有限 | 无 | 堆栈 |
BFS | 宽度优先,会得到最浅层的解 | O(bd)O(b^d)O(bd) | O(bd)O(b^d)O(bd) | 有解,s必然有限(完备) | 最优(无权时才最优 | 队列 |
UCS(代价一致搜索 | 优先队列BFS,考虑当前代价(优先级),BFS是UCS的特例,g(x) | O(b[C∗/ϵ])O(b^[C^*/\epsilon])O(b[C∗/ϵ]) | O(b[C∗/ϵ])O(b^[C^*/\epsilon])O(b[C∗/ϵ]) | 完备 | 最优 | 优先队列 |
启发式搜索 | 使用额外信息(如到终点的长度)–启发函数h(x) | - | - | - | - | - |
贪婪搜索 | h(x)最好的先扩展 | 快速,最坏同DFS(全树扩展) | - | (完备) | 最大问题在于往往找不到最优解 | 优先队列 |
A* | UCS+贪婪,优先级用f(x)=g(x)+h(x),目标出列时才停止 | 指数 | 指数 | (完备) | 实际h>估计h,且目标出列时结束的情况,最优(往好了估计) | 花费的话小的优先队列 |
A*图搜索 | 去除树中重复节点(一个状态则不扩展)(保证h(A)<=实际,且h(A)-h©<=弧cost(一致性) | 指数 | 指数 | (不完备)完备(树有的状态他都有) | 弧一致时最优 | 优先队列 |
算法名称 | 方向 | 最优 |
---|---|---|
贪婪 | 快速地向目标方向扩展, | 不一定能够得到最优解 |
UCS | 所有方向等可能扩展 | 能够得到最优解 |
A* | 朝着最优解方向扩展 | 能够得到最优解 |
算法名称 | 算法策略 | 时间复杂度 | 空间复杂度 | 完备性 | 最优性 |
---|---|---|---|---|---|
爬山法(如SGD) | 1.任意位置起始,2.移动到最好的相邻位置,3.无最好则结束 | - | - | (不完备) | 无 |
模拟退火(从爬山法改进) | 1.任意位置起始,2.移动到最好的相邻位置,3.不好的状态则以eΔE/Te^{\Delta E/T}eΔE/T概率接受 | - | - | (不完备) | 下降够慢,则最优 |
遗传算法 | 1.选最好的N个(基于适应度函数),2.这几个配对,并杂交,3.随机变异各串中的一个,重复 | - | - | (不完备) | ? |
A*最优性
- 证明A*树搜索最优(使用了可采纳启发)
- B-次优,A-最优,h-可采纳的,证明A在B前离开边缘集合(出队列)
- 假设B和A的祖先n在边缘集合上
- 那么,n会在B之前被扩展
- f(n)<=f(A)(因为还未到达终点,f(A)=g(A)就是实际全程耗散)
- f(A)<f(B)(g(A)<g(B),且h(A)=h(B)=0到达终点了)
- 所以,n先扩展
- 所以A的所有祖先都在B之前扩展
- A在B之前扩展
- 所以,A*最优
- B-次优,A-最优,h-可采纳的,证明A在B前离开边缘集合(出队列)
- A*图搜索最优?
- 前提:一致性–就是可采纳性
- h(A)<=实际,
- 且h(A)-h©<=弧cost(一致性)
- 采用一致的h(启发函数,所以
- f单调递增
- 对每个状态s,到达s最优的节点,优于次优
- 所以是最优的
- 证明
- 假定到达G*(最优值)的路径上某个n不能进入队列,因为某个具有相同状态且较差的n’先被扩展了
- 找到树中最高的这个节点n
- p是n的祖先,且n’出列时在队列里
- f§<f(n)(递增
- f(n)<f(n’)次优
- p应该在n’之前被扩展
- 矛盾
- 得证先到达G*
- 前提:一致性–就是可采纳性
三个传教士与野人
- M-左岸传教士数目
- C-左岸野人数目
- B-左岸是否有船
- Pcm-有c个传教士,m个野人从左岸到右岸
- Qcm-有c个传教士,m个野人从右岸到左岸
- 问题有解所必须的特性
- M>=C且(3-M)>=(3-C)<==>M=C
- 或者M=0,M=3
- 安全状态(以左岸为例):
- 传教士与野人的数目相等;
- 传教士都在左岸;
- 传教士都不在左岸。
- 完全状态图:不满足约束的不在图内)
3.神经网络
- DBN(深度置信网络)网络结构由多个RBM层叠而成
- CNN的特点
- 局部连接
- 参数共享
- 子采样
- 决策树
- 信息熵
- 系统不确定性的度量
- 系统永久恒定在某一状态后,该系统的信息熵最小
- 除了香农熵,有多种定义方式
- Ent(D)=−Σk=1∣y∣pklogpkEnt(D)=-\Sigma_{k=1}^{|y|} p_klogp_kEnt(D)=−Σk=1∣y∣pklogpk
- 纯度越高,值越小
- 信息增益
- 决策树划分节点依据信息增益来
- Gain(D,a)=Ent(D)−Σv=1V∣Dv∣∣D∣Ent(Dv)Gain(D,a)=Ent(D)-\Sigma_{v=1}^V\frac{|D^v|}{|D|}Ent(D^v)Gain(D,a)=Ent(D)−Σv=1V∣D∣∣Dv∣Ent(Dv)
- 选择增益大的划分
- 条件熵
- 是条件熵Σv=1V∣Dv∣∣D∣Ent(Dv)是条件熵\Sigma_{v=1}^V\frac{|D^v|}{|D|}Ent(D^v)是条件熵Σv=1V∣D∣∣Dv∣Ent(Dv)
- 信息增益应该是使得条件熵变小
- –>决策树让条件熵变小
- 信息熵
- 感知机不可解决异或问题
- 因为感知机只在线性可分问题下收敛(有限步内收敛)
- 感知机收敛定理:线性可分则收敛
- w、x是增广得到的
- 若数据集可分,
- 存在w∗(∣∣w∗∣∣=1),γ>0,使得ytw∗xt≥γw^*(||w^*||=1),\gamma>0,使得y_tw^*x_t\geq \gammaw∗(∣∣w∗∣∣=1),γ>0,使得ytw∗xt≥γ
- 令最终分离超平面参数为w∗(∣∣w∗∣∣=1)w^*(||w^*||=1)w∗(∣∣w∗∣∣=1)
- wkw∗=(wk−1+xtyt)w∗≥wk−1w∗+γ≥...≥kγw_kw^*=(w_{k-1}+x_ty_t)w^* \geq w_{k-1}w^* + \gamma \geq ...\geq k\gammawkw∗=(wk−1+xtyt)w∗≥wk−1w∗+γ≥...≥kγ
- ∣∣wk∣∣2=∣∣wk+1+xtyt∣∣2=∣∣wk−1∣∣2+2wk−1Txtyt+∣∣xt∣∣2||w_k||^2=||w_{k+1}+x_ty_t||^2=||w_{k-1}||^2+2w_{k-1}^Tx_ty_t+||x_t||^2∣∣wk∣∣2=∣∣wk+1+xtyt∣∣2=∣∣wk−1∣∣2+2wk−1Txtyt+∣∣xt∣∣2——yt=1
- ≤∣∣wk−1∣∣2+∣∣xt∣∣2≤∣∣wk−1∣∣2+R2≤...≤kR2\leq ||w_{k-1}||^2+||x_t||^2\leq ||w_{k-1}||^2+R^2 \leq ...\leq kR^2≤∣∣wk−1∣∣2+∣∣xt∣∣2≤∣∣wk−1∣∣2+R2≤...≤kR2
- 所以kγ≤wkw∗≤∣∣wk∣∣∣∣w∗∣∣≤kRk\gamma \leq w_kw^* \leq ||w_k||||w^*|| \leq \sqrt{k} Rkγ≤wkw∗≤∣∣wk∣∣∣∣w∗∣∣≤kR
- k≤R2γ2k\leq \frac{R^2}{\gamma^2}k≤γ2R2
- 以超平面来划分两类样本
- 感知机收敛定理:线性可分则收敛
- 感知机学习是在假设空间中选取使得损失函数最小的参数模型
- 训练w=w+/−x,小了就调大一点,大了就调小一点,一个x调整一次w=w+/-x,小了就调大一点,大了就调小一点,一个x调整一次w=w+/−x,小了就调大一点,大了就调小一点,一个x调整一次
- 感知机存在的问题
- 噪声(线性不可分)
- 泛化性
- 异或问题是非线性问题(带进去看一下)
- 证明
- 假设可以解,y=ω1x1+ω2x2+θ则ω1、 ω2 和θ 必须满足如下方程组:
- ω1 + ω2 - θ < 0–(1,1,)–0
- θ > ω1 + ω2
- ω1 + 0 - θ ≥ 0
- 0 ≥ θ - ω1
- 0 + 0 - θ < 0
- θ > 0
- 0 + ω2 - θ ≥ 0
- 0 ≥ θ - ω2
- ω1 + ω2 - θ < 0–(1,1,)–0
- 显然,该方程组是矛盾的,无解!这就说明单层感知器是无法解决异或问题的。
- 假设可以解,y=ω1x1+ω2x2+θ则ω1、 ω2 和θ 必须满足如下方程组:
- 证明
- 因为感知机只在线性可分问题下收敛(有限步内收敛)
- BP遇到的困难,为什么会出现梯度消失
- 困难:
- 梯度消失,梯度爆炸
- 局部极小
- 只能用于标注数据
- why梯度消失
- 因为BP算法采用链式法则,从后层向前层传递信息时,
- 若每层神经元对上一层神经元偏导乘以w均小于1,多次链式法则,多级导数权值相乘结果会越来越小,导致loss传递到越前方越小。
- w采用正态分布初始化<1
- ∂yi∂zi<1\frac{\partial y_i}{\partial z_i}<1∂zi∂yi<1
- 困难:
RBM DBN DBM hopfield比较
网络结构 | 状态 | …目标函数… | 特点 | |
---|---|---|---|---|
Hopfield网络 | 单层,全连接(有权,无向图)wij=wji,wii=0 | 1,-1(0),确定性地取1、0 | E=−12STωSE=-\frac{1}{2}S^T\omega SE=−21STωS | 1.确定性地接受能量下降方向;2.会达到局部极小(模拟退火解决,以一定概率接受能量上升) |
Boltzman机器 | p(v)符合玻尔兹曼分布,生成模型,有隐层(与外部无连接),有可见层(输入层、输出层)(与外部有链接,收到外部约束),全连接(同层也有)(有权无向图)wij=wji,wii=0 | 1(on),0(off),状态满足boltzman分布,以p取1(二值神经元) | PαPβ=exp(−(E(Sα)−E(Sβ))/T)\frac{P_\alpha}{P_\beta}=exp(-(E(S^\alpha)-E(S^\beta))/T)PβPα=exp(−(E(Sα)−E(Sβ))/T) | 1.接受能量下降,以p(p(si=1)=11+exp(−bi−Σjsjwji)p(s_i=1)=\frac{1}{1+exp(-b_i-\Sigma_js_jw_{ji})}p(si=1)=1+exp(−bi−Σjsjwji)1)接受能量上升(模拟退火)2.训练时间长,3.结构复杂,4.也可能局部极小;5.功能强大 |
RBM(受限Boltzman机 | p(v)符合玻尔兹曼分布,生成模型,区别:同层无连接,其他全连接,可见层1(输入v)、隐藏层1(h,给定可视层下,条件独立)(二部图) | vi,hj,{0,1},以p取1(二值神经元) | 联合组态能量函数E(v,h;θ)=−Σijwijvihj−Σibivi−Σjajhj,pθ(v,h)=1Z(θ)exp(−E),目标函数log(pθ(v))(极大似然)E(v,h;\theta)=-\Sigma_{ij}w_{ij}v_ih_j-\Sigma_{i}b_{i}v_i-\Sigma_{j}a_{j}h_j, p_\theta(v,h)=\frac{1}{Z(\theta)}exp(-E),目标函数log(p_\theta(v))(极大似然)E(v,h;θ)=−Σijwijvihj−Σibivi−Σjajhj,pθ(v,h)=Z(θ)1exp(−E),目标函数log(pθ(v))(极大似然) | |
DBN | 生成模型,多层,顶层无向图(RBM)(hn-1-hn),低层(v<-hn-1),去除上层,下层是个RBM | (二值神经元) | 从下到上逐层当做RBM训练 | 低层是单向的与RBM不一致,所以提出了DBM |
DBM | p(v)符合玻尔兹曼分布,生成模型,多层,全无向图 | (二值神经元) | 双向,每层需要考虑上下层神经元(多层)E(v,h1,h2;θ)=−vTW1h1−h1TW2h2;p(v)=Σh1,h21Zexp(−E)E(v,h^1,h^2;\theta)=-v^TW^1h^1-h^{1T}W^2h^2;p(v)=\Sigma_{h1,h2}\frac {1}{Z}exp(-E)E(v,h1,h2;θ)=−vTW1h1−h1TW2h2;p(v)=Σh1,h2Z1exp(−E) | 低层是单向的与RBM不一致,所以提出了DBM |
结构及特性
- DNN 全连接
- Hopfield 全连接,确定性阈值神经元
- 参数计算得到
- BM 全连接,二值神经元
- RBM/DBM 无向图,层间全连接,二值神经元
- 逐层贪婪训练
- DBN 低层有向<–,高层无向(高->低)
- 逐层贪婪训练
- RNN 权值共享的多层前向神经网络(循环)
- 序列、时间
- 不同时间的RNN权值一样
- BPTT训练(LSTM也是)
- CNN 局部连接,参数共享,子采样
- 图
- 改进:用relu和dropout
逐层贪婪训练与CD
- DBN 逐层贪婪训练
- 仅保留v,h1层,使用CD-1训练得到W1
- 增加h2层,保持W1不变,h1右Q(h1|v)采样得到作为输入。h1/h2使用CD-1训练得到W2
- 类比
- DBM 逐层贪婪训练
- 训练时采用双方向(上下两层),同时考虑两个或多个隐层
- 由能量模型也可以得到p(v)——也符合boltzman分布
- p(v)=Σh1,h2,h31Zexp(vTW1h1+h1TW2h2+h2TW3h3)p(v)=\Sigma_{h1,h2,h3}\frac {1}{Z}exp(v^TW^1h^1+h^{1T}W^2h^2+h^{2T}W^3h^3)p(v)=Σh1,h2,h3Z1exp(vTW1h1+h1TW2h2+h2TW3h3)
- 两层的能量:E(v,h1,h2;θ)=−vTW1h1−h1TW2h2E(v,h^1,h^2;\theta)=-v^TW^1h^1-h^{1T}W^2h^2E(v,h1,h2;θ)=−vTW1h1−h1TW2h2
- p(v)=Σh1,h21Zexp(−E)p(v)=\Sigma_{h1,h2}\frac {1}{Z}exp(-E)p(v)=Σh1,h2Z1exp(−E)
- p(hj1=1∣v,h2)=σ(ΣiWij1vi+ΣWjm2hj2)p(h^1_j=1|v,h^2)=\sigma(\Sigma_iW^1_{ij}v_i+\Sigma W^2_{jm}h_j^2)p(hj1=1∣v,h2)=σ(ΣiWij1vi+ΣWjm2hj2)
- p(hm2=1∣h1)=σ(ΣiWim2hi1)p(h_m^2=1|h^1)=\sigma(\Sigma_iW^2_{im}h_i^1)p(hm2=1∣h1)=σ(ΣiWim2hi1)
- p(vi=1∣h1)=σ(ΣiWij1hj)p(v_i=1|h^1)=\sigma(\Sigma_iW^1_{ij}h_j)p(vi=1∣h1)=σ(ΣiWij1hj)
- CD-1
- p(v∣θ)极大似然估计,得到导数∂p(v)∂wij∂p(v)∂bi∂p(v)∂ajp(v|\theta)极大似然估计,得到导数\\\frac{\partial p(v)}{\partial w_{ij}}\\\frac{\partial p(v)}{\partial b_{i}}\\\frac{\partial p(v)}{\partial a_{j}}p(v∣θ)极大似然估计,得到导数∂wij∂p(v)∂bi∂p(v)∂aj∂p(v)
- 依据导数,对观测变量的所有维度的梯度求和平均,来更新参数依据导数,对观测变量的所有维度的梯度求和平均,来更新参数依据导数,对观测变量的所有维度的梯度求和平均,来更新参数
BP
- BP算法流程:
- 选取训练数据输入网络
- 根据权重与激活函数计算输出
- 算出实际输出与目标输出之间的误差
- 反向传播误差使全局误差最小
- BPTT
- 不同时间的相加一起更新
GAN
- GAN
- 核心思想:博弈论的纳什均衡——对抗达到平衡(共同进步)
- 生成器:尽量生成真实的分布——努力让判别器认不出来
- 输入向量,输出图或序列。。。
- 不同的向量表示不同的特征
- 想要发现数据的分布Pdata(x)P_{data}(x)Pdata(x)
- 假设一个分布Pdata(x;θ),用极大似然去找θP_{data}(x;\theta),用极大似然去找\thetaPdata(x;θ),用极大似然去找θ
- 判别器:区分是生成的还是真实的(努力让他能认出生成器生成的数据)
- 输入:图片
- 输出:标量评分
- 分越大,越真实–1
- 分小则假–0.1
- 生成器:尽量生成真实的分布——努力让判别器认不出来
- 基本原理:有一个判别器有一个生成器,生成器生成图片让判别器判别,生成器提升自己让判别器无法判别,判别器则提升自己努力识别出生成器生成的图片/序列,双方对抗达到平衡
- 学习算法
- 固定生成器G0,训练判别器,提升判别器的判别能力得到D1
- 固定判别器D1,训练生成器,提升生成器的生成能力,目标让判别器无法识别,得到G1
- 再回到1中用G1训练判别器得到D2,…,依次迭代,直至两者平衡。
- V(G,D)=1mΣi=1m[log(D(xi))]+1mΣi=1m[log(1−D(G(zi)))](G固定)V(G,D)=\frac{1}{m}\Sigma_{i=1}^m[log(D(x^i))]+\frac{1}{m}\Sigma_{i=1}^m[log(1-D(G(z^i)))] (G固定)V(G,D)=m1Σi=1m[log(D(xi))]+m1Σi=1m[log(1−D(G(zi)))](G固定)
- V(G,D)=1mΣi=1m[log(1−D(G(zi)))](d固定)V(G,D)=\frac{1}{m}\Sigma_{i=1}^m[log(1-D(G(z^i)))] (d固定)V(G,D)=m1Σi=1m[log(1−D(G(zi)))](d固定)
- 核心思想:博弈论的纳什均衡——对抗达到平衡(共同进步)
4.逻辑
- 一阶谓词逻辑下机器自动证明的正确步骤:(?)
- 结论取反
- 量词前束
- 合取范式标准化
- 归结树归结
- 一阶谓词逻辑表示
- 胜者为王,败者为寇
- (∀x,Winner(x)=>King(x))∧(∀y,Loser(y)=>Kou(y))(∀ x,Winner(x)=>King(x))∧(∀ y,Loser(y)=>Kou(y))(∀x,Winner(x)=>King(x))∧(∀y,Loser(y)=>Kou(y))
- ∀x∀y,Win(x,y)=>King(x)∧Kou(y)∀ x∀ y,Win(x,y)=>King(x)∧Kou(y)∀x∀y,Win(x,y)=>King(x)∧Kou(y)
- 胜者为王,败者为寇
- 模糊逻辑表示
- 画图表示
- 很少有成绩好的学生特别贪玩
- 很少就可以是量词
- ΔxG(x)=>P′(x)\Delta x G(x)=>P'(x)ΔxG(x)=>P′(x)
- '–加强了变成了原来的平方
- 大多数成绩好的学生学习都很刻苦。
ΣxG(x)=>H′(x)\Sigma x G(x)=>H'(x)ΣxG(x)=>H′(x)
一个永远无法归结结束的FOL
合取范式规范化
- ¬ (∀ x){P(x)=>{(∃y)[p(y)=>P(f(x,y))]∧¬(∀ y)(∃w)[Q(x,y)=>P(y,w)]}}
- 去除=>
- 否定内移
- 改换符号y->z
- 去除存在量词
- 全局的:A
- 局部的:g(z)
- 全称量词前移
- 消除全称量词
- 变换成CNF
归结原理
- 一阶谓词逻辑要合一化(置换)
4.1resolution是完备的、可靠的
- 可靠性:|- --> |=
- 归结的过程是可靠的
- 归结过程:C1、C2中有互补文字==》C1∨C2
- 已知C1,C2 |- C1∨C2
- 证明C1,C2 |= C1∨C2
- 因为推理规则是可靠的(检查真值表)
C1 | C2 | C1∨C2 |
---|---|---|
false | false | false |
true | false | true |
false | true | true |
true | true | true |
完备性:
- 已知C1,C2 |= C1∨C2
- 证明C1,C2 |- C1∨C2
- RC(S)–归结闭集 resolution closure–所有S归结出来的都在RC(S)中=PL-Resolution(KB,α\alphaα)的最终clauses
- S={KB,¬α\alphaα}
- KB |=α\alphaα<>KB∧ ¬α\alphaα不可满足(永假)<=>S不可满足
- S={KB,¬α\alphaα}
- ground resolution theorem:S不可满足==>RC(S)中包含空子句
- 证明:从逆否命题入手:S可满足<==RC(S)中不包含空子句
- 因为RC(S)是有限的,所以PL-Resolution(KB,α\alphaα)总是可以终止的
- PL-Resolution(KB,α\alphaα)的终止条件是clauses中包含空子句
ground resolution theorem:S不可满足==>RC(S)中包含空子句
- 证明:从逆否命题入手:RC(S)中不包含空子句==>S可满足
Modus ponens
4.1 蕴含与包含的证明
蕴含与implication的关系
5. 模糊数学和遗传算法
- 遗传算法
- 遗传算法模拟自然界优胜劣汰过程进行优化问题的求解
- 利用选择、交叉、变异产生更多可能的解
- 目标函数:天然可作为遗传算法的适应度函数
- 选择-受适应度函数控制
- 交叉、变异–不受适应度函数控制
- 以某种概率进行交叉、变异
6. 强化学习
方法 | 确定性? | 特性 | |
---|---|---|---|
贪心策略 | At=argmaxaQt(a)(均值)At=argmax_aQ_t(a)(均值)At=argmaxaQt(a)(均值) | 确定性算法 | 目标是当前行为的期望收益 |
ϵ\epsilonϵ贪心策略 | 1−ϵ1-\epsilon1−ϵ:贪心选择;ϵ\epsilonϵ:随机选择 | 确定性算法 | - |
乐观初值法Optimistic initial values | 每个行为的初值都高Q1高,ϵ=0\epsilon=0ϵ=0, | 确定性算法 | 初始只探索,最终贪心 |
UCB | AT=argmaxa(Qt(a)+clntNt(a)),Nt(a)−a被选择的次数A_T=argmax_a(Q_t(a)+c\sqrt{\frac{lnt}{N_t(a)}}),N_t(a)-a被选择的次数AT=argmaxa(Qt(a)+cNt(a)lnt),Nt(a)−a被选择的次数 | 确定性算法 | 最初差,后比贪心好,收敛于贪心 |
梯度赌博机算法 | $P(A_t=a)=\frac{e{H_t(a)}}{\Sigma_b=1k e^{H_t(b)}}=\pi_t(a).优化目标 E(R_t)=\Sigma_b\pi_t(b)q(b) $ | 不确定性算法 | 更新Ht |
- 多臂赌博机:累积收益最大=每次摇臂的平均期望收益最大
计算时,还是按照上下左右的策略计算的–贝尔曼方程,而不是贝尔曼最优方程
方法比较
- 蒙特卡罗:深
- 动态规划:宽
- 时序差分,只有一个
7. 群体智能
蚁群优化算法 | 粒子群优化算法 | |
---|---|---|
基本原理 | 局部随机搜索与正反馈相结合 | |
算法过程 | 1.随机放置蚂蚁;2.对每个蚂蚁,依据概率P(与邻接路径的信息素浓度和启发式信息有关)选择下一步移动位置;3.当所有蚂蚁跑完一轮(所有城市跑完一次),更新信息素浓度(与蚂蚁跑过的路径和路过的蚂蚁的数目有关,并且随时间减少);3.重复至收敛 | 1.随机放置粒子,设置其初始速度;2.计算各粒子的f(xi)(f(x)是目标函数值),记录其当前最优g*及各个粒子历史最右xi*;3.依据xi*和g*和当前速度改变速度,移动到下一位置;4.重复23至收敛 |
适用范围 | 离散问题 | 连续问题 |
更新 | 一轮一更新(batch) | 一步一计算(随机) |
优点 | 易于实现; 可调参数较少; 所需种群或微粒群规模较小;计算效率高,收敛速度快。 | |
缺点 | 收敛速度慢(找最优解的情况下);易于陷入局部最优;对于解空间为连续的优化问题不适用 | 和其它演化计算算法类似,不保证收敛到全局最优解 |
粒子群优化算法 | 遗传算法 |
---|---|
协同合作,不好的向好的学习 | 适者生存,不好的淘汰掉 |
最好的个体通过吸引其他个体向他靠近来施加影响 | 最好的个体产生后代来传播基因 |
除了速度位置外,还有过去的历史信息 | 只与上一代有关,与历史无关,markov链的过程 |
8. 博弈
- 议价范围
- 双方估价之差
- 成本100,标价200,买方估价160,卖方估价120
- 议价范围:120~160
- 网络交换博弈–均衡结局
- 均衡结局:全部满足均衡议价解的结局
- 双方备胎x,y,x+y<=1才能议价
- 议价空间s=1-x-y
- A=x+s/2
- B=y+s/2
- A-B-C-D
- 均衡结局:A=1/3=D,B=C=2/3
- 稳定结局:未配对的边两节点的效用和<1
- 均衡结局:全部满足均衡议价解的结局
- 最优
- 帕累托最优
- 以意大利经济学家维尔弗雷多·帕累托的名字命名
- 对于一组策略选择(局势),若不存在其他策略选择使所有参与者得到至少和目前一样高的回报,且至少一个参与者会得到严格较高的回报,则这组策略选择为帕累托最优
- 社会最优
- 使参与者的回报之和最大的策略选择(局势)
- 社会最优的结果一定也是帕累托最优的结果
- 帕累托最优不一定是社会最优
- 社会:是所有局中人构成的社会
- 帕累托最优
- minmax和max min
- minmax:最小化对手最好情况下的收益—对象时对方的效用
- 用于零和博弈
- maxmin:最大化自己最坏情况下的收益–对象是自己的效用
- 零和博弈下:二者等价
- minmax:最小化对手最好情况下的收益—对象时对方的效用
- 纳什均衡
- 每个人的策略都是当前策略的最佳应对
- 混合:让对手各个情况下的收益都一样。
- 纯:谁动谁输
- 市场结清价格
- 完全匹配是否存在可以通过寻找受限集来判断
- 价格能够引导市场优化配置
- 市场结清价格总是存在
- 市场结清价格使得买卖双方总效用最优
maxmin策略 | minmax策略 | 混合纳什均衡策略 | |
---|---|---|---|
公式 | argmaxsimins−iui(si,s−i)argmax_{s_i}min_{s_{-i}}u_i(s_i,s_{-i})argmaxsimins−iui(si,s−i) | argminsimaxsjuj(si,sj)argmin_{s_i}max_{s_{j}}u_j(s_i,s_{j})argminsimaxsjuj(si,sj) | a的分布不变情况下,使得b的各种策略的期望都一样 |
目的 | 损失最小化,预防对手不理性情况 | 把对手弄趴下,自己就赢了 | 自己的策略让对手无路可走(走哪里都一样) |
用于 | 多人博弈 | 零和博弈 | - |
特点 | 稳妥,以我为主 | 抑制对手 | 抑制对手 |
田忌赛马
剪刀石头布
- 剪刀石头布
- 局中人
- 两个玩家
- 策略
- 剪刀、石头、布
- 效用函数矩阵
- 不存在纯策略的纳什均衡
- 在任何情况下,对方都能找到更好的策略
- 混合策略下的纳什均衡
- 混合策略
- 玩家一的策略选择分布记为
国科大高级人工智能-总结相关推荐
- 国科大高级人工智能2020-2021年期末试题回顾
国科大高级人工智能2020-2021年期末试题回顾 题型 选择题 简答题 应用题 附件 题型 题型没有变,仍然为选择题(20道,每道1分),简答题(3道,每道10分),综合应用题(3道,15,15,2 ...
- 国科大高级人工智能6-GAN
文章目录 生成式模型的基础:极大似然估计 GANs 最终版本 问题 非饱和博弈 DCGAN 不同类型的GAN conditional GAN 无监督条件GAN--cycle GAN 对抗学习 http ...
- 国科大高级人工智能12-博弈
这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一 ...
- 国科大高级人工智能10-强化学习(多臂赌博机、贝尔曼)
文章目录 多臂赌博机Multi-armed bandit(无状态) 马尔科夫决策过程MDP(markov decision process 1.动态规划 蒙特卡罗方法--不知道环境完整模型情况下 2. ...
- 国科大高级人工智能9-模糊数学和遗传算法
文章目录 1.模糊计算 笛卡尔积.关系 模糊集 连续的隶属度函数 运算 2.evolution 遗传算法 1.模糊计算 why模糊 取得精确数据不可能或很困难 没有必要获取精确数据 模糊性概念:对象从 ...
- 国科大高级人工智能8-归结原理和horn子句
只有一条规则的推理 resolution(消解,归结) CNF(conjunction normal form合取范式 (A∨B)∧(B∨C)(A∨B)∧(B∨C)(A∨B)∧(B∨C) 任何逻辑式都 ...
- 国科大高级人工智能7-命题逻辑
文章目录 命题逻辑(语法Syntax) 由枚举推理(inference by enumeration 区别 deduction(形式推演,演绎) 作业(定理证明) logics:逻辑,表达信息的形式语 ...
- 国科大高级人工智能5-RNN/LSTM/GRU/集束搜索/attention
文章目录 BPTT BPTT前向传播 长序列循环神经网络 LSTM 序列到序列的模型 集束搜索--近似搜索 改进的集束搜索 集束搜索的误差分析 图到文本 注意力模型 序列数据建模 输入序列–>输 ...
- 国科大高级人工智能+prml4-CNN
文章目录 CNN 卷积 padding pooling BP 其他CNN ResNets残差网络-- 图像数据应用 CNN Hebb学习律(无监督 如果两个神经元在同一时刻被激发,则他们之间的联系应该 ...
最新文章
- 用云服务器实现janus之web端与web通话!
- AutoCAD .NET API二次开发学习指南
- 学校机房项目交换机的配置
- 为什么我的SQL server 在附加数据库后,数据库总是变成了只读?
- 《Pro ASP.NET MVC 3 Framework》学习笔记之十四【示例项目SportsStore】
- 华为防火墙USG6320透明模式配置
- “n个球放入m个盒子是否为空”的方案数
- 中电信将推出软件商店 或利用微软Google平台
- c语言如何用数组对字符串排序,怎么用qsort对二维字符数组存的若干字符串排序...
- 廖雪峰python教程官网-廖雪峰老师官方爬虫教程,13个案例带你全面入门
- 微信公众号小程序怎么做?
- 【读书笔记】《早起的奇迹》
- SQL Server 由于一个或多个对象访问此列,ALTER TABLE DROP COLUMN xxx 失败问题解决
- AtCoder Beginner Contest 156 D Bouquet 失之交臂 容斥原理+二项式定理+乘法逆元+快速幂+模后负数 多余担心
- linux文件编程 --- fflush函数
- 使用ensembl的API下载数据
- Large Scale Spectral Clustering with Landmark-Based Representation
- 关于给hexo博客增加视频vlog页面(主要引入哔哩哔哩视频)
- 《MLB棒球创造营》:走近棒球运动·密尔沃基酿酒人队
- 四步轻松实现用Visio画UML类图
热门文章
- Linux kernel中常见的宏整理
- mini2440驱动分析之LCD
- 人体反应测试仪 c语言,人体反应速度测试仪毕业设计说明
- Spring简化Java开发_spring如何简化java开发
- python历史波动率_历史波动率计算(旧文)
- 【Pytorch神经网络实战案例】18 最大化深度互信信息模型DIM实现搜索最相关与最不相关的图片
- PackagesNotFoundError: The following packages are not available from current channels:
- LeetCode 935. 骑士拨号器(动态规划)
- LeetCode 904. 水果成篮(滑动窗口)
- 程序员面试金典 - 面试题 16.09. 运算(只用+法做乘除)
- 国科大高级人工智能2020-2021年期末试题回顾
- 玩家一的策略选择分布记为
- 混合策略
- 局中人