关于强化学习(2)

根据 Simple statistical gradient-following algorithms for connectionist reinforcement learning

5. 段落式(Episodic)的REINFORCE算法

该部分主要是将我们已有的算法进行扩展, 扩展到拥有temporal credit-assignment component的问题上.

特别地, 我们假设一个网络N, 基于一段一段这样来训练, 每一段都包含k个时间步, 每一个时间步, 许多单元会重新计算它们的输出, 整个环境可能会改变其非强化的输入, 在每一段的结束的时候, 一个强化值r将会被传递到网络N.

该算法的引出是基于使用按时间展开(unfolding-in-time)进行映射, 即当任意的一个网络N在一个时间周期中进行操作, 另一个网络N^*没有周期但是展现对应的行为. 展开的网络N^*通过在每一个时间步对N进行复制来获得.

形式化来说, 这相当于和每一个在N中的时间依赖的变量v联系起来, 对应的N^*以时间为索引的集合\{v^t\}, 其中N^*中的变量并不依赖于时间, 在N中的w_{ij}就对应N^*中的\{w_{ij}^t\}.

给出参数w_{ij}的增量形式:
\Delta w_{ij}=\alpha_{ij}(r-b_{ij})\sum_{t=1}^k{e_{ij}(t)}

上述形式和我们之前给的形式有点类似, 唯一出现改动的地方就是e_{ij}变为\sum_{t=1}^k{e_{ij}(t)}
这个对应于非周期的网络N^*, 即e_{ij}(t)=e_{ij}^t

我们举个例子吧, 一个内部全连接的递归神经网络(Recurrent Neural Network), 使用伯努利-逻辑斯蒂单元, 有
e_{ij}(t)=(y_i(t)-p_i(t))x_j(t-1)
需要注意的是baseline是独立于其他变量和输出的, 我们称具有以上格式的算法为段落式的REINFORCE算法
给出完整的权值修改公式:
\Delta w_{ij}=\alpha_{ij}(r-b_{ij})\sum_{t=1}^k{(y_i(t)-p_i(t))x_j(t-1)}

定理2:

对于任意的段落式REINFORCE算法, E\{\Delta W| W\}\nabla_W E\{r|W\}的内积是非负的, 更进一步, 如果\alpha_{ij}>0, 那么当仅当\nabla_WE\{r|W\}=0, 内积才为0, 如果\alpha_{ij}是和i,j独立的话, 有E\{\Delta W|W\}=\alpha\nabla_WE\{r|W\},

在段落式的REINFORCE算法中, 性能度量应该改为E\{\sum_{t=1}^{k}{r(t)|W}\}

6. 多参数分布的REINFORCE

REINFORCE框架的一个有趣的应用就是对于单元的学习算法的发展决定了它们的随机标量输出, 输出来自于多参数分布而不是使用半线性随机单元的单参数分布. 举个例子, 试想一个这样的单元, 首先得到确定性的计算结果, 基于权值和输入, 来获得所有参数来控制的随机数值生成过程的值, 接着将符合一个合适的分布的输出随机输出. 特别地, 正态分布具有两个参数, 均值\mu和标准差\sigma, 一个单元根据这样的一个分布来进行输出, 那么将要首先计算出\mu\sigma的值, 然后根据该正态分布随机进行输出, 保证均值和标准差.

一种高斯单元(Gaussian Unit)的可能的有用特征是它输出的均值和变化是单独地可控的, 只要分离的权值(或者可能是输入)被用来确定这两个参数, 有趣的点是控制标准差\sigma就相当于控制单元的搜索行为. 通俗来讲, 使用多参数分布的随机单元就有可能控制探索行为的等级, 并且和在哪里进行探索无关, 这就与使用单参数分布的单元不一样.

这里我们注意到对于任意单元的REINFORCE算法是易于推导出来, 我们用高斯单元来作为一个例子. 为了保证确定这种单元输出的均值和标准差的特定方法, 而不是它的输入和它的权重, 我们将会简单地将单元的均值和标准差它们看作是单元的自适应的参数. 在实际的自适应参数和输入上这些参数的任何更多的通用的函数依赖需要链式法则, Gullapalli提出来一个计算这些参数的方法是, 使用通过输入行的共同集合的分离的权值的和(并且使用一些不同的学习规则), 为了简化这种方法, 我们关注于单一的单元并且自始至终忽略单元索引的下标.

给出这样的密度函数g:
g(y, \mu, \sigma)=\frac{1}{(2\pi)^{\frac{1}{2}}\sigma}{e^{-\frac{(y-\mu)^2}{2\sigma}}}

进而
e_\mu = \frac{\partial ln g}{\partial \mu}=[e^{\frac{(y-\mu)^2}{2\sigma}}]\frac{1}{(2\pi)^{\frac{1}{2}}\sigma}\frac{\partial}{\partial \mu}(e^{-\frac{(y-\mu)^2}{2\sigma}})=\frac{y-\mu}{\sigma^2}
e_\sigma=\frac{\partial ln g}{\partial \sigma}=-\frac{\partial ln(\sqrt{(2\pi)}\sigma)}{\partial \sigma}-\frac{\partial (\frac{(y-\mu)^2}{2\sigma})}{\partial \sigma}=\frac{(y-\mu)^2-\sigma^2}{\sigma^3}

我们可以得到一个更新的表达式
\Delta \mu = \alpha_\mu(r-b_\mu)\frac{y-\mu}{\sigma^2}
\Delta \sigma = \alpha_\sigma(r-b_{\sigma})\frac{(y-\mu)^2-\sigma^2}{\sigma^3}

我们令\alpha_\mu=\alpha_\sigma=\alpha \sigma^2, b_\mu=b_\sigma可以得到简化的版本

推广到指数分布簇上
g(y,\mu, \theta_2,...,\theta_k)=exp[Q(\mu, \theta_2,...,\theta_k)y+D(\mu, \theta_2,...,\theta_k)+S(y)]
对于均值, 仍然有
e_\mu = \frac{\partial ln g}{\partial \mu}=\frac{y-\mu}{\sigma^2}

7. 和反向传播的兼容性

当我们使用强化算法的时候, 会忽略掉所有单元之间连接的信息, 作为有监督学习的算法, 反向传播就完全利用了这样的信息, 注意到我们的强化学习是针对目标函数和环境的, 所以不像有监督的学习那样, 但是我们可以将反向传播和我们的强化学习结合起来.

7.1 使用确定性的隐藏单元的网络

考虑一个前馈的网络, 拥有确定的隐藏单元, 使用随机的输出单元, 使用这样的一个网络对于强化学习系统是有意义的, 因为对于输出单元有随机性的限制使得发生必要的探索.

x是网络的输入向量, y是输出向量, 我们可以定义g(\xi, W, x)=Pr(y=\xi|W, x)为概率质量函数, 描述了网络的输入和输出.
只不过整个网络的输出是一个向量而不是标量, 对于网络里面的任意一个权值w_{ij}, 有\partial E\{r|W\}/ \partial w_{ij}的无偏估计是(r-b_{ij})\partial lng/\partial w_{ij}

O是输出单元的索引集合, 因为所有的随机性都在输出单元上, 并且输出单元的随机性是独立的. 我们有
Pr(y=\xi|W, x)=\prod_{k\in O}{Pr(y_k=\xi_k|W,x)}=\prod_{k\in O}{Pr(y_k=\xi_k|w^k,x^k)}

x_k是由于将模式x呈现给网络而出现在第k个单元的输入处的模式

lng(\xi, W, x)=ln\prod_{k\in O}{g_k(\xi_k, w^k, x^k)}=\sum_{k\in O}{lng_k(\xi_k, w^k, x^k)}
故, 可以得到
\frac{\partial lng(\xi, W, x)}{\partial w_{ij}}=\sum_{k\in O}{\frac{\partial g_k(\xi_k, w^k, x^k)}{\partial w_{ij}}}
以上的求和可能可以使用反向传播来计算出来, 特别地, 如果是伯努利非线性单元, 我们可以直接使用参数p_k作为中间变量, 故有:
\frac{\partial ln g}{\partial w_{ij}}=\sum_{k\in O}{\frac{\partial lng_k}{\partial p_k}\frac{\partial p_k}{\partial w_{ij} }}
我们可以直接计算得到
\frac{\partial ln g_k}{\partial p_k}=\frac{y_k-p_k}{p_k(1-p_k)}

我们只需要将无偏估计进行反向传播即可

7.2 通过随机数字生成器的反向传播

考虑一个随机的半线性单元, 并且假设有这么一个函数J, J对输出y_i有一定的确定性的依赖, 这种条件下, 我们假设这个单元是输出单元并且J=E\{r|W\}, 我们可以利用\frac{\partial J}{\partial y_i}来计算\frac{\partial J}{\partial p_i}

我们还可以推出E\{\partial J/\partial y_i|p_i\}决定了\partial E\{J|p_i\}/\partial p_i

不幸的是, 这种性质并不是通用的. 如果Jy_i的非线性函数的话. 然而, 如果输出是一个随机数生成器, 可以被写成一个参数可微的函数, 那么我们就可以利用确定性的计算.

考虑一个正态随机数生成器, 比如高斯单元, 输出y根据\mu\sigma随机生成
y=\mu+\sigma z
其中z标准正态离差(standard normal deviate), 注意到
\frac{\partial y}{\partial \mu}=1
以及
\frac{\partial y}{\partial \sigma}=z=\frac{y-\mu}{\sigma}
因此, 我们可以将高斯隐藏单元和REINFORCE结合起来

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,012评论 4 359
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,589评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 106,819评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,652评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 51,954评论 3 285
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,381评论 1 210
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,687评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,404评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,082评论 1 238
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,355评论 2 241
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,880评论 1 255
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,249评论 2 250
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,864评论 3 232
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,007评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,760评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,394评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,281评论 2 259

推荐阅读更多精彩内容

  • 文章主要分为:一、深度学习概念;二、国内外研究现状;三、深度学习模型结构;四、深度学习训练算法;五、深度学习的优点...
    艾剪疏阅读 21,641评论 0 57
  • 亲爱的宝贝,今天是你降临在这个世界的第365天,你所感知的每一天都是如此的新鲜。 还记得21个月之前,妈妈...
    dada仰望天空阅读 389评论 2 0
  • 6:30 起床 晾衣服烧水 6:55 出门 打车班车点 7:10 错过班车,步行十分钟赶到等待点 7:21 出发上...
    Min_Xu阅读 302评论 0 0
  • 梦想已经飞翔了好久、也在空中盘旋了好久,为了抓住它越走越远、远到忘记自己还要走多久。 人总有一个归属地就是你出发...
    天下庐阅读 523评论 0 3
  • View.onSaveStateInstance被调用的条件 View有唯一的ID View的初始化时要调用set...
    yuansip阅读 344评论 0 0