咨询热线:13521327170 联系人:张立群 地址:吉林市长春长春市长春大街与大马路交汇处宝迪克公馆13楼
[Reinforcement Learning] Cross-entropy Method
来源:大班娱乐官方网址 发布时间:2019-11-18 点击量:298
Cross-entropy Method(简称CEM)虽然是一种基于交叉熵的算法,但并不是我们熟知的监督学习中的交叉熵方法,与其说它是一种基于交叉熵的算法,倒不如说是一种基于蒙特卡洛和进化策略的算法。CEM算法不仅可以用作评估,也可以作为一种有效的优化算法,与进化算法(EAs)类似CEM是一种完全免梯度(gradients free)的算法。
这里引用维基百科上对Cross-entropy Method的解释[1]:
The cross-entropy (CE) method is a Monte Carlo method for importance sampling and optimization. It is applicable to both combinatorial and continuous problems, with either a static or noisy objective.
CEM算法的迭代训练过程可以分为两个阶段:
根据采样概率分布进行重采样;通过最小化采样概率分布和目标概率分布的交叉熵来更新采样概率分布。Importance sampling
CEM要解决的是这样一种问题,假设我们需要估计一个事件$H(x)$发生的期望:
$$mathbb{E}_{u}[H(x)]=int H(x)f(x;u)dx$$
最简单的方法就是利用朴素蒙特卡洛采样从真实概率密度函数$f(x;u)$中采样一些样本$x^{"}$,然后通过求均值估计期望,即:
$$mathbb{E}_{u}[H(x)]=frac{1}{N}sum_{i=1}^{N}x_{i}^{"}$$
但如果事件$H(x)$是一种小概率事件,那么朴素蒙特卡洛模拟需要采样非常多的样本才能准确估计期望。针对这个问题,CEM算法引入了重要性采样(importance sampling)。
Importance sampling[2]的主要思想如下:
首先通过一个类似于目标概率分布的采样概率分布$f(x;v)$(其中$v$被称为reference parameter)来进行采样,则期望变为:
$$mathbb{E}_{u}[H(x)]=frac{1}{N}sum_{i=1}^{N}x_{i}^{"}frac{f(x;u)}{f(x;v)}$$
于是现在的目标变成了如何找到一个最优的采样概率函数$f(x;v^{*})$去指导采样出一些少量的样本来准确地估计期望。CEM在每次迭代中通过选取较好的采样样本(Elite samples)来更新采样概率函数的参数$v$,目的是减小当前采样概率函数$f(x;v)$与最优采样概率函数$f(x;v^{*})$的分布差距(即KL散度,相对熵)(PS:paper最后只用到了交叉熵,所以取名为CEM)。
Pseudo-code of CEM
下面给出一个以高斯分布作为采样概率分布的CEM伪代码:
# Step1: initialization初始化采样概率分布参数:mu, sigma;初始化当前迭代次数t=0,设置最大迭代次数max_its,样本个数N,精英样本个数Ne,以及采样方差的误差范围epsilon;for t in range(0, max_its):# Step2: 使用高斯分布进行随机采样X = SampleGaussian(mu, sigma, N)# Step3: 评估样本S = EvaluateSamples(X)# Step4: 重要性采样X = sort(X, S)mu = mean(X[0:Ne-1])sigma = var(X[0:Ne-1])if sigma > epsilon:break# Step5: 返回精英样本的均值return mu
CEM && RL
注:以下内容引自博文《进化策略优化算法CEM(Cross Entropy Method)》[3]。
CEM也可以用来求解马尔可夫决策过程,也就是强化学习问题。我们知道,强化学习也是一种动态规划过程,在某个状态下选择某个动作就像在某个节点选择路径一样,整个过程就是一个从初始状态到末状态的路径规划问题,只不过我们希望得到一条能最大化收益的路径。在这种考虑下,就可以用CEM建模了,我们让一条完整的路径成为一个样本$x=(s_0,a_0,s_1,a_1,…,s_n,a_n)$,路径获得的总收益为$S(x)=sum_{i=0}^{N} r(s_i,a_i)$,目标是最大化这个$S(x)$,那么如何采样出这些样本呢?我们可以构建一个$p$矩阵:矩阵行表示状态,列表示动作,如$p_{ij}$表示在状态$s_i$下执行$a_j$动作的概率,我们通过对这个$p$矩阵进行多次采样就可以获得多个样本,然后选出$S(x)$较高的样本用来更新$p$矩阵,不断迭代,最终找到最优$hat{p}$矩阵。
这是一种类似于策略迭代(policy iteration)的强化学习方法:通过$p$矩阵找到在每一步状态下各个动作的概率来形成决策策略,但参数更新并没有用到梯度。从另外一个角度,你也可以认为这是一种值迭代(value iteration)的强化学习方法,此时$p$矩阵就是经典Q-learning中的$Q$矩阵,只不过$Q$矩阵中第$i$行第$j$列元素表示的是状态$s_i$下动作$a_j$的未来收益的期望,基于贝尔曼方程(Bellman equation)来更新Q值;而$p$矩阵表示的是概率值,通过交叉墒来更新。
Reference
[1] 维基百科:Cross-entropy Method
[2] 维基百科:Importance sampling
[3] 进化策略优化算法CEM(Cross Entropy Method)
相关产品
-
新华社伊斯兰堡1月21日电(记者季伟 刘天)据巴基斯坦媒体21日报道,当天上午发生在该国西北部部落地区一蔬菜市场的炸弹袭击事件已造成至少25人死亡,另有50多人受伤。
-
与陈子豪排在并列第六位的是胡牧,“我今天出现了三个三推,腰伤还是挺大的影响。” 胡牧本轮在标准杆5杆的9号洞长推拿下了一只老鹰,但是转场后在15号洞吞下了双柏忌。“我这一轮开球进步很大,但是问题主要出在推杆。王耀进目前领先的太多了,我就希望明天能够好好打,但是有机会我还是希望能够赢。”
-
央行制订《中国人民银行不宜流通人民币挑剔标准》要求银行业金融机构无偿为客户办理不宜流通人民币的兑换,并将收到的不宜流通人民币缴存人民银行发行库。商业银行不得将收到的不宜流通人民币再对外支付。
-
奥迪A6L 2014年型通过优化设计,提升了部分产品的性能。30 FSI和35 FSI、35 FSI quattro车型搭载的两款V6发动机,对“发动机二次进气阀门”进行了优化改进,使发动机排放更加清洁。奥迪A6L的旗舰产品50 TFSI quattro搭载的3.0 TFSI发动机,最大功率上调至228千瓦,使之从静止加速至100公里/小时仅为5.8秒,最高时速达253公里。辅以7速S tronic双离合变速器、奥迪quattro全时四驱系统、奥迪空气悬架、奥迪驾驶模式选项等“性能利器”,从而使奥迪A6L 50 TFSI quattro堪称同级别中最具实力的“性能座驾”。
-
声明指出,完善跨境纠纷解决机制有利于形成区域内和谐有序的经贸投资法律环境。在本国国内法允许的范围内,与会各国法院将积极考虑调解及其他替代性纠纷解决机制在本国的尝试和运用。
-
【游侠导读】近日,推特上疯传的“《名侦探柯南》小黑人Cosplay团”的照片让小黑再次火了一把。并且诞生了一波超级有趣的照片。一起来看吧!
-
中国侨网3月17日电 据新西兰先驱报中文网报道,过去两年中,随着新西兰的华人与日俱增,学习中文的中学生人数增长了30%。日前,亚洲新西兰基金会公布了2016年度报告《新西兰人对亚洲和亚裔的认识》,在调查中,大多数受访者认为中文是孩子们最应该学习的外国语言。
-
11月22日,人人影视、射手网关闭。就像与十年的老友分离一样,对于喜爱海外影视剧的网友来说,人人影视与射手网关闭后,以后去哪观赏这个免费大餐是个问题。
热点资讯
- 已拍卖的土地被人长期非法占用,法院“铁腕”强制腾空2019-07-02
- 你的特斯拉Model3,只需要一台手机就能偷走它2019-11-12
- 农村土地确权跟户口有关系吗?2018年农村土地确权政策2019-07-02
- 再把宋美龄的身份当作一篇文章!台湾的“东昌”检查国民党国家财产和抄送幼儿园2019-11-12
- 供应链:S9销量低迷,三星Note9将提前上市2019-07-02
- 《神力科莎AssettoCorsaCompetizione》登陆Steam展开抢先体验2019-11-08
- 一架载有170名乘客的飞机在伊朗坠毁,发动机故障没有造成人员伤亡。2019-07-02
- 西南大学研究生问题泄漏上传器调用老师给出的文件|西南大学|问题|上传器2019-10-31