一、原理介绍
使用随机策略有两个关键点
从策略当中进行采样,获得动作a(Action)
计算特定动作的似然数 logπθ(a∣s)
1、什么是多元高斯分布?
在多元高斯分布中,当协方差矩阵 ∑ 只有在对角元素非零,而其余元素为 0时,成为对角高斯分布。
多元高斯分布(Multivariate Gaussian Distribution)是一元高斯分布的在向量形式上的推广,其中向量的均值为,协方差矩阵为,概率密度函数表示为:
(, 下载次数: 255) 上传 点击文件名下载附件 例如二元高斯多元分布可以如图所示: (, 下载次数: 264) 上传 点击文件名下载附件 对于一对随机变量X和Y,它们的协方差矩阵写作 (, 下载次数: 251) 上传 点击文件名下载附件 对于多个变量的问题,用协方差矩阵 来表示各个变量之间的相关性,有 (, 下载次数: 273) 上传 点击文件名下载附件 2、对角多元高斯分布特殊地,当 N 个随机变量为各自独立的高斯随机变量时,协方差矩阵为对角阵,即 (, 下载次数: 267) 上传 点击文件名下载附件 3、对角高斯策略 Diagonal Gaussian Policies由于标准差的公式可知σ始终大于等于 0 ,对标准差取log对数,可以将标准差映射到,这样更有利于神经网络的训练。采样:假设已知动作(Action) 的均值和标准差,引入服从分布的噪声,下一步的动作采样表示为其中⊙表示两个向量之间的内积。似然数:当均值为,标准差为的维的动作的似然数表示为: (, 下载次数: 311) 上传 点击文件名下载附件 二、代码实现要求:· 输入: 样本x,对角高斯分布的均值和标准差· 输出:样本x的似然数import tensorflow as tfimport numpy as npEPS = 1e-8根据上一节,似然数公式,理解公式后就很容易写出代码 (, 下载次数: 263) 上传 点击文件名下载附件 (, 下载次数: 275) 上传 点击文件名下载附件 (, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
例如二元高斯多元分布可以如图所示:
(, 下载次数: 264) 上传 点击文件名下载附件 对于一对随机变量X和Y,它们的协方差矩阵写作 (, 下载次数: 251) 上传 点击文件名下载附件 对于多个变量的问题,用协方差矩阵 来表示各个变量之间的相关性,有 (, 下载次数: 273) 上传 点击文件名下载附件 2、对角多元高斯分布特殊地,当 N 个随机变量为各自独立的高斯随机变量时,协方差矩阵为对角阵,即 (, 下载次数: 267) 上传 点击文件名下载附件 3、对角高斯策略 Diagonal Gaussian Policies由于标准差的公式可知σ始终大于等于 0 ,对标准差取log对数,可以将标准差映射到,这样更有利于神经网络的训练。采样:假设已知动作(Action) 的均值和标准差,引入服从分布的噪声,下一步的动作采样表示为其中⊙表示两个向量之间的内积。似然数:当均值为,标准差为的维的动作的似然数表示为: (, 下载次数: 311) 上传 点击文件名下载附件 二、代码实现要求:· 输入: 样本x,对角高斯分布的均值和标准差· 输出:样本x的似然数import tensorflow as tfimport numpy as npEPS = 1e-8根据上一节,似然数公式,理解公式后就很容易写出代码 (, 下载次数: 263) 上传 点击文件名下载附件 (, 下载次数: 275) 上传 点击文件名下载附件 (, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
对于一对随机变量X和Y,它们的协方差矩阵写作
(, 下载次数: 251) 上传 点击文件名下载附件 对于多个变量的问题,用协方差矩阵 来表示各个变量之间的相关性,有 (, 下载次数: 273) 上传 点击文件名下载附件 2、对角多元高斯分布特殊地,当 N 个随机变量为各自独立的高斯随机变量时,协方差矩阵为对角阵,即 (, 下载次数: 267) 上传 点击文件名下载附件 3、对角高斯策略 Diagonal Gaussian Policies由于标准差的公式可知σ始终大于等于 0 ,对标准差取log对数,可以将标准差映射到,这样更有利于神经网络的训练。采样:假设已知动作(Action) 的均值和标准差,引入服从分布的噪声,下一步的动作采样表示为其中⊙表示两个向量之间的内积。似然数:当均值为,标准差为的维的动作的似然数表示为: (, 下载次数: 311) 上传 点击文件名下载附件 二、代码实现要求:· 输入: 样本x,对角高斯分布的均值和标准差· 输出:样本x的似然数import tensorflow as tfimport numpy as npEPS = 1e-8根据上一节,似然数公式,理解公式后就很容易写出代码 (, 下载次数: 263) 上传 点击文件名下载附件 (, 下载次数: 275) 上传 点击文件名下载附件 (, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
对于多个变量的问题,用协方差矩阵 来表示各个变量之间的相关性,有
(, 下载次数: 273) 上传 点击文件名下载附件 2、对角多元高斯分布特殊地,当 N 个随机变量为各自独立的高斯随机变量时,协方差矩阵为对角阵,即 (, 下载次数: 267) 上传 点击文件名下载附件 3、对角高斯策略 Diagonal Gaussian Policies由于标准差的公式可知σ始终大于等于 0 ,对标准差取log对数,可以将标准差映射到,这样更有利于神经网络的训练。采样:假设已知动作(Action) 的均值和标准差,引入服从分布的噪声,下一步的动作采样表示为其中⊙表示两个向量之间的内积。似然数:当均值为,标准差为的维的动作的似然数表示为: (, 下载次数: 311) 上传 点击文件名下载附件 二、代码实现要求:· 输入: 样本x,对角高斯分布的均值和标准差· 输出:样本x的似然数import tensorflow as tfimport numpy as npEPS = 1e-8根据上一节,似然数公式,理解公式后就很容易写出代码 (, 下载次数: 263) 上传 点击文件名下载附件 (, 下载次数: 275) 上传 点击文件名下载附件 (, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
2、对角多元高斯分布
特殊地,当 N 个随机变量为各自独立的高斯随机变量时,协方差矩阵为对角阵,即
(, 下载次数: 267) 上传 点击文件名下载附件 3、对角高斯策略 Diagonal Gaussian Policies由于标准差的公式可知σ始终大于等于 0 ,对标准差取log对数,可以将标准差映射到,这样更有利于神经网络的训练。采样:假设已知动作(Action) 的均值和标准差,引入服从分布的噪声,下一步的动作采样表示为其中⊙表示两个向量之间的内积。似然数:当均值为,标准差为的维的动作的似然数表示为: (, 下载次数: 311) 上传 点击文件名下载附件 二、代码实现要求:· 输入: 样本x,对角高斯分布的均值和标准差· 输出:样本x的似然数import tensorflow as tfimport numpy as npEPS = 1e-8根据上一节,似然数公式,理解公式后就很容易写出代码 (, 下载次数: 263) 上传 点击文件名下载附件 (, 下载次数: 275) 上传 点击文件名下载附件 (, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
3、对角高斯策略 Diagonal Gaussian Policies
由于标准差的公式可知σ始终大于等于 0 ,对标准差取log对数,可以将标准差映射到,这样更有利于神经网络的训练。
采样:假设已知动作(Action) 的均值和标准差,引入服从分布的噪声,下一步的动作采样表示为其中⊙表示两个向量之间的内积。
似然数:当均值为,标准差为的维的动作的似然数表示为:
(, 下载次数: 311) 上传 点击文件名下载附件 二、代码实现要求:· 输入: 样本x,对角高斯分布的均值和标准差· 输出:样本x的似然数import tensorflow as tfimport numpy as npEPS = 1e-8根据上一节,似然数公式,理解公式后就很容易写出代码 (, 下载次数: 263) 上传 点击文件名下载附件 (, 下载次数: 275) 上传 点击文件名下载附件 (, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
二、代码实现
要求:
· 输入: 样本x,对角高斯分布的均值和标准差
· 输出:样本x的似然数
import tensorflow as tf
import numpy as np
EPS = 1e-8
根据上一节,似然数公式,理解公式后就很容易写出代码
(, 下载次数: 263) 上传 点击文件名下载附件 (, 下载次数: 275) 上传 点击文件名下载附件 (, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
(, 下载次数: 275) 上传 点击文件名下载附件 (, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
(, 下载次数: 260) 上传 点击文件名下载附件 三、参考链接ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policieshttps://www.tensorflow.org/api_docs/python/tf/math/reduce_sum 欢迎光临 乐聚社区 (https://bbs.lejurobot.com/) Powered by Discuz! X3.4
三、参考链接
ttps://spinningup.openai.com/en/latest/spinningup/rl_intro.html#stochastic-policies
https://www.tensorflow.org/api_docs/python/tf/math/reduce_sum