强化学习之Q函数的个人理解

首先了解为什么要用强化学习?强化学习是智能体(Agent)与环境之间一种学习和反馈。就像狗撞在玻璃门上两次,第三次它就不会再去跑到玻璃门了。可以通过强化学习来实现经验的快速积累,并针对实时情况作出动态规划(注意强化学习和无监督学习的区别)其中,用的最广泛的就是Q Learning了。

Q Learning是由Q函数引出来了的,因此先给出Q函数和V函数的定义。

----------------------------------------------------------------------------------------------------------------------------------

以下都是图片,实在是不想在写一遍了,就偷懒了。。。。


V函数称为状态值函数,表示从状态x出发,采用策略缩带来的累积奖赏值。而Q函数称为状态-动作值函数,它比状态值函数多了一步,就是在指定初始状态x时,也指定了第一步动作a,同样Q函数也是表示累积奖赏值。这里都是采用的折扣累积奖赏。下面就来推导下Q函数的公式。先假设状态转移函数P和奖赏函数R是已知的。推导过程如下:





  • 9
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
一个简单的强化学习拟合函数的例子是拟合正弦函数。具体步骤如下: 1. 定义状态、动作和奖励:状态是正弦函数的输入值,即自变量 x;动作是正弦函数的输出值,即因变量 y;奖励可以定义为预测值与真实值之间的均方误差,即 $reward = - (y_{predicted} - y_{true})^2$。 2. 构建模型:在这个例子中,可以采用基于值函数的 Q-learning 算法来构建模型。Q-learning 算法的核心是 Q 值函数,可以用来估计状态-动作对的价值。具体来说,在这个例子中,Q 值函数可以定义为 $Q(s, a)$,其中 $s$ 是当前状态,即 $x$ 值,$a$ 是当前动作,即 $y$ 值。 3. 训练模型:将正弦函数的输入值 $x$ 作为状态,输出值 $y$ 作为动作,通过 Q-learning 算法来训练模型。具体来说,每次选择当前状态下 Q 值最大的动作作为当前的输出值,然后根据预测值和真实值之间的误差来更新 Q 值函数。这个过程可以重复多次,直到 Q 值函数收敛。 4. 验证模型:使用一些测试数据来验证模型的预测准确性和泛化能力。可以比较模型预测值和真实值之间的均方误差来评估模型的性能。 总的来说,利用强化学习拟合一个函数的例子可以帮助我们更好地理解强化学习的基本原理和应用方法。当然,在实际应用中,需要根据具体问题来选择合适的模型和算法,以及定义合理的状态、动作和奖励函数

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值