Bayesian RL and PGMRL
简介:
PGMRL: PGMRL就是把RL问题建模成一个概率图模型,如下图所示:
然后通过variational inference的方法进行学习:
PGMRL给RL问题的表示给了一个范例,对解决很多RL新问题提供了一种思路和工具。
Bayesian RL: 主要是对RL的reward function, transation function引入uncertainty, 引入prior和更新posterior来建模,从而更好地进行探索。
思考:为什么PGMRL推导过程中没有Beyesian RL的exploration-exploitation trade-off的问题。
简单的PGMRL建模的reward和transation是确定的,没有超参数的。在某种程度下,比如问题是凸的情况下,是不需要进行exploration的。而Beyesian RL的问题设定是假设这些东西是一种概率分布,而不是确定性的。而BeyesionRL对这种不确定性的处理恰巧克服了RL问题不是凸的情况local optimal的减弱。
thinking: what things does the Beyesian RL not consider?
Beyesian RL关注的点主要还是在uncertainty上,对policy学习过程的建模能力较弱,更适合用来处理RL中的uncertainty的问题,比如对sparse reward的问题处理能力较弱。
relationship between PGMRL and Bayesian RL:
我觉得Bayesian RL应该归为PGMRL中的一部分,PGMRL更具有整体性,对问题描述更全面,而Bayesian RL更像是处理某一特殊问题的方式。Bayesian RL需要在通过数据更新后验,然后也是model学习和policy学习相互交替的过程,但是由于没有很好的描述,我们不清楚这里面那些东西是missing variables,而且表面上看上去似乎reward和transation是missing的,但在PGMRL框架下,我们可以很清晰的看到其实optimal policy才是missing variable(PGMRL中把optimal policy转换成了variable)。这种迭代学习的过程,和EM算法的迭代类似,就是一边做inference一边做learning。这里inference就是对opitmal policy的学习过程,learning就是对MDP参数学习的过程。而在对optimal policy学习的时候,是这一种变分推断的过程,而这个变分推断过程又结合了MCMC采样的东西,MCMC采样有个冷启动的过程,所以前期不能只根据policy的最优结果来进行采样,需要加一些扰动。各种inference技术的结合加上简化形成了目前的基于deep learning的RL policy学习方法。
对于无先验的东西,我觉得还是用maximum entropy和variational infercence的方式去处理,简单的Bayesian RL中如果使用简单的共轭先验,对问题的处理局限性也较大,不具有普适性。所以,对于无先验的东西,直接采用maximum entropy更具有普适性。
Bayesian RL and PGMRL的更多相关文章
- 从Bayesian角度浅析Batch Normalization
前置阅读:http://blog.csdn.net/happynear/article/details/44238541——Batch Norm阅读笔记与实现 前置阅读:http://www.zhih ...
- Learning Bayesian Network Classifiers by Maximizing Conditional Likelihood
Abstract Bayesian networks are a powerful probabilistic representation, and their use for classifica ...
- Stanford机器学习笔记-3.Bayesian statistics and Regularization
3. Bayesian statistics and Regularization Content 3. Bayesian statistics and Regularization. 3.1 Und ...
- 中间值为什么为l+(r-l)/2,而不是(l+r)/2
二分法的算法中,我们看到一些代码里取中间值: MID=l+(r-l)/2; 为什么是这个呢?不就是(l+r)/2吗?为什么要多此一举呢? 其实还是有不一样的,看看他们的区别吧: l,r是指针的时候只能 ...
- 【原】对频率论(Frequentist)方法和贝叶斯方法(Bayesian Methods)的一个总结
注: 本文是对<IPython Interactive Computing and Visualization Cookbook>一书中第七章[Introduction to statis ...
- 算法杂货铺——分类算法之朴素贝叶斯分类(Naive Bayesian classification)
算法杂货铺——分类算法之朴素贝叶斯分类(Naive Bayesian classification) 0.写在前面的话 我个人一直很喜欢算法一类的东西,在我看来算法是人类智慧的精华,其中蕴含着无与伦比 ...
- Why are very few schools involved in deep learning research? Why are they still hooked on to Bayesian methods?
Why are very few schools involved in deep learning research? Why are they still hooked on to Bayesia ...
- 听同事讲 Bayesian statistics: Part 2 - Bayesian inference
听同事讲 Bayesian statistics: Part 2 - Bayesian inference 摘要:每天坐地铁上班是一件很辛苦的事,需要早起不说,如果早上开会又赶上地铁晚点,更是让人火烧 ...
- 一起啃PRML - 1.2.3 Bayesian probabilities 贝叶斯概率
一起啃PRML - 1.2.3 Bayesian probabilities 贝叶斯概率 @copyright 转载请注明出处 http://www.cnblogs.com/chxer/ 这一节简单讲 ...
随机推荐
- node加密
var crypto = require('crypto'); //md5加密 exports.md5 = function (str) { var md5sum = crypto.createHas ...
- hibernate方法中参数传入数组的查询方法
public List<T> getByIds(Long[] ids) { return getSession().createQuery(// "FROM User WHERE ...
- [HNOI2017]礼物
Description: 给定两个有n个数的序列,你可以将其中一个进行旋转(想象是在一个环上),或者对序列的每个数加上一个非负整数C 求操作后 \(\sum{(a_i-b_i)^2}\)的最小值 De ...
- Java基础知识--内存管理
Java语言中 的垃圾收集器相对于以前的其他语言优势是什么? 过去的语言需要程序员显示的进行分配内存.释放内存.这种做法可能会引起“内存泄漏”,即由于某种原因是分配给程序的内存无法释放,如果该任务不断 ...
- JS_高程3.基本概念(1)
1.语法 (1)ECMAScript中的一切(变量,函数名和操作符)都是区分大小写的. (2)标识符 标识符的第一个字符必须是字母,下划线或是美元符号. 其他字符可以是字母,下划线,美元符号和数字. ...
- [Java代码] Java用pinyin4j根据汉语获取各种格式和需求的拼音
pinyin4j是一个功能强悍的汉语拼音工具包,主要是从汉语获取各种格式和需求的拼音,功能强悍,下面看看如何使用pinyin4j.下面介绍用pinyin4j来做的一个根据汉语获取各种格式和需求的拼音d ...
- Docker容器内部端口映射到外部宿主机端口的方法小结
转自:https://www.cnblogs.com/kevingrace/p/9453987.html Docker允许通过外部访问容器或者容器之间互联的方式来提供网络服务.容器启动之后,容器中可以 ...
- IDEA下Maven的Offline Mode
今天上午别人加了一个Maven依赖项(dependency)我始终获取不到本地 Maven的setting.xml文件检查没有问题 根目录的pom.xml检查也没有问题 本来怀疑公司的Maven服务器 ...
- Android的Databinding-RecyleView绑定
public class UserAdapter extends RecyclerView.Adapter<UserAdapter.UserHolder> { private static ...
- Class:DbConnectionManipulator.cs
ylbtech-Class:DbConnectionManipulator.cs 1.返回顶部 1.DbConnectionManipulator.cs using System; using Sys ...