关于强化学习(2)

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

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

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

特别地, 我们假设一个网络

, 基于一段一段这样来训练, 每一段都包含

个时间步, 每一个时间步, 许多单元会重新计算它们的输出, 整个环境可能会改变其非强化的输入, 在每一段的结束的时候, 一个强化值

将会被传递到网络

.

该算法的引出是基于使用按时间展开(unfolding-in-time)进行映射, 即当任意的一个网络

在一个时间周期中进行操作, 另一个网络

没有周期但是展现对应的行为. 展开的网络

通过在每一个时间步对

进行复制来获得.

形式化来说, 这相当于和每一个在

中的时间依赖的变量

联系起来, 对应的

以时间为索引的集合

, 其中

中的变量并不依赖于时间, 在

中的

就对应

中的

.

给出参数

的增量形式:

上述形式和我们之前给的形式有点类似, 唯一出现改动的地方就是

变为

这个对应于非周期的网络

, 即

我们举个例子吧, 一个内部全连接的递归神经网络(Recurrent Neural Network), 使用伯努利-逻辑斯蒂单元, 有

需要注意的是baseline是独立于其他变量和输出的, 我们称具有以上格式的算法为段落式的REINFORCE算法 给出完整的权值修改公式:

定理2:

对于任意的段落式REINFORCE算法,

的内积是非负的, 更进一步, 如果

, 那么当仅当

, 内积才为0, 如果

是和

独立的话, 有

,

在段落式的REINFORCE算法中, 性能度量应该改为

6. 多参数分布的REINFORCE

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

和标准差

, 一个单元根据这样的一个分布来进行输出, 那么将要首先计算出

的值, 然后根据该正态分布随机进行输出, 保证均值和标准差.

一种高斯单元(Gaussian Unit)的可能的有用特征是它输出的均值和变化是单独地可控的, 只要分离的权值(或者可能是输入)被用来确定这两个参数, 有趣的点是控制标准差

就相当于控制单元的搜索行为. 通俗来讲, 使用多参数分布的随机单元就有可能控制探索行为的等级, 并且和在哪里进行探索无关, 这就与使用单参数分布的单元不一样.

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

给出这样的密度函数

:

进而

我们可以得到一个更新的表达式

我们令

可以得到简化的版本

推广到指数分布簇上

对于均值, 仍然有

7. 和反向传播的兼容性

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

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

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

是网络的输入向量,

是输出向量, 我们可以定义

为概率质量函数, 描述了网络的输入和输出. 只不过整个网络的输出是一个向量而不是标量, 对于网络里面的任意一个权值

, 有

的无偏估计是

是输出单元的索引集合, 因为所有的随机性都在输出单元上, 并且输出单元的随机性是独立的. 我们有

是由于将模式

呈现给网络而出现在第

个单元的输入处的模式 有

故, 可以得到

以上的求和可能可以使用反向传播来计算出来, 特别地, 如果是伯努利非线性单元, 我们可以直接使用参数

作为中间变量, 故有:

我们可以直接计算得到

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

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

考虑一个随机的半线性单元, 并且假设有这么一个函数

,

对输出

有一定的确定性的依赖, 这种条件下, 我们假设这个单元是输出单元并且

, 我们可以利用

来计算

我们还可以推出

决定了

不幸的是, 这种性质并不是通用的. 如果

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

考虑一个正态随机数生成器, 比如高斯单元, 输出

根据

随机生成

其中

标准正态离差(standard normal deviate), 注意到

以及

因此, 我们可以将高斯隐藏单元和REINFORCE结合起来

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏算法channel

最小二乘法原理(后):梯度下降求权重参数

在上一篇推送中总结了用数学方法直接求解最小二乘项的权重参数,然而有时参数是无法直接求解的,此时我们就得借助梯度下降法,不断迭代直到收敛得到最终的权重参数。首先介...

4127
来自专栏杂七杂八

梯度下降

梯度下降(Gradient Descent)是在求解机器学习算法的模型参数(无约束优化问题)时,最常采用的方法之一 代价函数 提到梯度下降就不得不说一下代价函...

3075
来自专栏数据科学与人工智能

【概念】深度学习25个概念,值得研读

小编邀请您,先思考: 深度学习有哪些重要概念,怎么理解? 深度学习和机器学习有什么异同? 人工智能,深度学习,机器学习—无论你在做什么,如果你对它不是很了解的话...

2257
来自专栏计算机视觉战队

尺度不变人脸检测器(S3FD-Single Shot Scale-invariant Face Detector)

今天讲尺度不变人脸检测前之前,我想讲解下一位热心研究者的问题,可以简单讲解下,希望也可以帮助其他读者,谢谢! ? ? 这样的人脸尺度怎么去实现的,其实很简单,如...

6144
来自专栏包子铺里聊IT

经典智能算法快速入门之神经网络——技术篇

在上一篇文章里,小编给大家概括地介绍了下神经网络的历史和应用。这次,小编要给大家细细讲解下神经网络的组成,和几种常见神经网络的模型及其适用领域。 基本组成 顾名...

3759
来自专栏人工智能LeadAI

通道洗牌、变形卷积核、可分离卷积?盘点卷积神经网络中十大令人拍案叫绝的操作。

CNN从2012年的AlexNet发展至今,科学家们发明出各种各样的CNN模型,一个比一个深,一个比一个准确,一个比一个轻量。我下面会对近几年一些具有变革性的工...

3818
来自专栏机器学习算法工程师

特征工程最后一个要点 : 特征预处理

地址:https://www.cnblogs.com/pinard/p/9093890.html

1053
来自专栏数据科学与人工智能

【机器学习】神经网络技术篇

在上一篇文章里,小编给大家概括地介绍了下神经网络的历史和应用。这次,小编要给大家细细讲解下神经网络的组成,和几种常见神经网络的模型及其适用领域。 基本组成 顾名...

2747
来自专栏机器之心

学界 | 图神经网络+池化模块,斯坦福等提出层级图表征学习

近年来人们开发图形神经网络的兴趣持续激增。图形神经网络即可以在如社交网络数据 [16,21,36] 或基于图形的分子表征 [7,11,15] 的图形结构数据上运...

1251
来自专栏人工智能头条

如何使用TensorFlow实现卷积神经网络

901

扫码关注云+社区

领取腾讯云代金券