IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 基于Pytorch的强化学习(DQN)之价值学习 -> 正文阅读

[人工智能]基于Pytorch的强化学习(DQN)之价值学习

目录

1. 引言?

2. DQN

3. TD算法

3.1 算法原理

3.2 在DQN中的TD


1. 引言?

我们上次?最后提到了动作价值函数?Q_{\pi},它是与状态(state)、动作(action)和策略函数?\pi?有关的概率分布函数,其中我们提到的它取最优策略后得到的最优动作价值函数?Q^*(s_t,a_t),其中?\pi?的影响已经被消除,所以在给定状态下我们想要最优化?Q^*?就是寻找最好的?a_t=argmaxQ^*(s_t,a),?所谓价值学习就是使用神经网络DQN来拟合函数?Q(s,a,w),其中?s?是观测到的状态是网络的输入,?a?是agent需要做出的动作,是网络的输出值,w?表示网络的参数,下面我们来介绍强化学习(DQN)。

2. DQN

我们刚刚提到我们需要状态作为输入值,在许多情况下当前状态是以图片的形式出现,我们之前讲过:CNN是一种很好的处理图片信息的网络,所以我们将state输入卷积层(Conv)提取特征信息(feature),再通过全连接层(Dense)计算不同动作下的得分得到reward,输出一个奖励向量(r_1,r_2,...,r_n)?, agent只需要选取这个向量中的最大的分量对应的action就可以做出决策了。如下图:

3. TD算法

3.1 算法原理

那么DQN是怎么训练的呢,我们使用的算法是时序差分(Temporal Difference)算法,我们考虑一辆从A点向B点行驶的汽车,如果我们想要利用TD算法预测所需的总时间,TD会先随机猜测一个时间t=100,经过一段时间 t_1=20?行驶后到达了C点此时TD预测还需要?t_2=70?就可以到达B点,我们发现这相当于现在TD预测所需的总时间是?t{}'=90?这与一开始的预测有差距,我们知道后面预测的时间更加可靠,因为其中含有真实的信息,而一开始的预测完全是随机的,我们令一开始的预测为q=Q(w),后面的预测值为?y?,我们称之为TD target,因为它是我们的优化的目标,我们想通过改变?w?,来使这两者之间的误差?loss=L?,L=\frac{1}{2}(q-y)^2,减小,这样预测值就会更加接近真实值,于是我们需要用到之前讲过的优化算法来减小误差,比如说SGD,我们就得到了参数更新的迭代式:w_{t+1}=w_t-\alpha\frac{\partial L}{\partial w}|w=w_t,看到这里你肯定知道了前面L中的1/2出现是因为我们需要计算导数,刚好可以把前面的系数消成1(没错只是为了好看)。

3.2 在DQN中的TD

我们知道return的表达式是U_t=\sum_{i=0}^{\infty}\gamma^i R_{t+i},简单变形就得到U_t=R_t+\sum_{i=1}^{\infty}\gamma^i R_{t+i}=R_t+\gamma U_{t+1},于是我们得到了关于价值函数的递推关系式,由于Q[s_t,a_t;w]?是对?U_t?的期望,所以我们可以使用其对?U_t?近似,于是有?Q[s_t,a_t;w]\approx R_t+\gamma Q[s_{t+1},a_{t+1};w],左侧是预测右侧是TD target。于是就可以使用上述算法了。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-03-22 20:35:19  更:2022-03-22 20:38:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 13:57:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码