价值学习(Value-based Reinforcement Learning)

本文介绍了价值学习,重点讲解了Deep Q-Network(DQN)在强化学习中的核心作用,包括如何通过神经网络逼近Q*函数,以及如何使用Temporal Difference Learning(TD算法)进行在线学习和模型更新。通过打游戏实例,展示了DQN在决策制定中的优势。最后总结了价值学习在强化学习领域的关键概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

讲完强化学习的基本概念,来介绍一下价值学习算法;


一、价值学习(Value-based Reinforcement Learning)

1.Deep Q-Network(DQN)

核心就是用神经网络去近似Q*(s,a)函数;我们把这个神经网络记为Q是Q(s,a;w),神经网络的参数是w,输入是状态s,输出是很多数值,这些数值是每一个动作对应的分数,通过奖励reward学习神经网络,使神经网络打分越来越准;

(以打游戏为例,强化学习的目标是在游戏结束的时候,获得的奖励最大;当有Q*(s,a)函数时,就可以告诉我们每个动作的平均回报,从而做平均回报最高的动作)

问题是我们并不知道Q*(s,a)函数,价值学习的想法就是学习一个函数来近似Q*(s,a)函数;

例子:应用DQN来打游戏
在这里插入图片描述
观测到当前的状态st,DQN把st作为输入,给所有的动作打分,选出分数最高的动作作为at;

agent执行动作at后,环境会改变状态,用状态转移函数p随机抽一个新的状态st+1,环境同时也告诉我们这一步的奖励rt;(奖励就是强化学习中的监督信号,DQN靠这些奖励来训练)

同理,观测到当前的状态st+1,DQN把st+1作为输入,给所有的动作打分,选出分数最高的动作作为at+1;

agent执行动作at+1后,环境改变状态,用状态转移函数p随机抽一个新的状态st+2,环境同时也告诉我们这一步的奖励rt+1

一直重复这个过程,一直到游戏结束;

2.训练DQN使用的算法

Temporal Difference Learning(TD算法);

TD算法例子理解Td算法:假设现在要开车从纽约到亚特兰大,模型Q(W)可以估计开车的时间,估计Q(W)估计开车要花1000分钟;

更新模型参数的过程:
---
首先估计开车要花多长时间;

到达亚特兰大后,看一下开车所花的真实时间;

计算预测时间与真实时间的差距;(也就是计算损失函数)

求损失函数对模型参数w的梯度;

梯度梯度下降更新模型的参数,使得估计的时间与真实时间越来越接近;

问题:如果我想在到达亚特兰大之前就更新模型的参数w呢?

这时候就需要用TD算法了;(从纽约到亚特兰大要经过DC(华盛顿),我们可以到华盛顿后,估计华盛顿到亚特兰大的时间,假设纽约到亚特兰大要300分钟)
在这里插入图片描述
模型估计从纽约到亚特兰大要花1000分钟;

(到华盛顿后发现用了300分钟;(300分钟是真实的观测),模型估计从华盛顿到亚特兰大要花600分钟;)根据模型新的预测,总的时间应该为900分钟,新的估计900分钟叫做TD target,虽然TD target也是估计值,但比原来的1000分钟更可靠,因为里面有事实的成分,300分钟就是真实值,因此当越接近亚特兰大时,TD target越准确;因此到达华盛顿就可以更新模型参数了!

损失函数就是最初的估计与TDtarget的差距的平方,这个差距叫做TD error,然后再做梯度下降更新模型的参数就行了;

TD算法的优点:即使不完成整个旅途,也能更新模型的参数,改进模型;

3.TD learning for DQN

应用TD算法到DQN的上个例子要用的公式:
在这里插入图片描述
整个旅途的时间和第二段时间都是模型的估计,而第一段时间是真实的时间;

TD算法必须等式左边有一项,右边有两项,也右边的两项必须有一项是真实观测到的;

在深度强化学习中,我们要应用的公式为:
在这里插入图片描述
简要证明:
在这里插入图片描述
应用TD算法到DQN上:
在这里插入图片描述
t时刻,DQN输出的值Q(st,at;w)是对Ut作出的估计;
t+1时刻,DQN输出的值Q(st+1,at+1;w)是对Ut+1作出的估计;

Q(st,at;w)类似于出发之前预计的时间,Q(st+1,at+1;w)类似于到达华盛顿后预计的到亚特兰大的时间;

整个过程:
在这里插入图片描述

总结

以上就是今天要讲的内容,本文简单介绍了价值学习。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值