问题标签 [reward]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
94 浏览

python - 为什么我的奖励函数在 Python 中返回 None?

好的,所以,我正在尝试使用 keras 和 tensorflow 制作一个内在好奇心代理。该代理的奖励函数是自动编码器在前一个状态和当前状态之间的损失以及自动编码器在当前状态和想象的下一个状态之间的损失之差。然而,这个奖励函数总是返回 None 而不是实际的差异。我试过打印损失,但它总是给出正确的值。

奖励功能/重播代码:

代理环境循环代码:

0 投票
1 回答
44 浏览

artificial-intelligence - 奖励结构的制定

我是强化学习和尝试训练 RL 代理的新手。

我对奖励公式有疑问,从给定状态来看,如果代理采取了好的行动,我会给予积极的奖励,如果行动不好,我会给予消极的奖励。因此,如果我在代理采取好的行动时给予非常高的正奖励,例如正值是负奖励的 100 倍,它会在训练期间帮助代理吗?

直觉上我觉得这会有助于智能体的训练,但是这种倾斜的奖励结构会有什么弊端吗?

0 投票
0 回答
92 浏览

artificial-intelligence - 为什么我的奖励收敛但仍然有很多变化

我正在针对固定情节长度的情节任务训练强化学习代理。我通过绘制一集的累积奖励来跟踪训练过程。我正在使用张量板来绘制奖励。我已经对我的代理进行了 2000 万步的训练。所以我相信代理已经有足够的时间来训练。一集的累积奖励可以从+132到-60左右。我的情节平滑为 0.999

在此处输入图像描述

在剧集中,我可以看到我的奖励已经收敛。但是如果我看到平滑为 0 的情节

在此处输入图像描述

奖励有很大的不同。那么我应该考虑代理是否已经收敛?另外我不明白为什么即使经过这么多的训练,奖励也会有如此巨大的差异?

谢谢。

0 投票
1 回答
85 浏览

python - 如何用分类神经网络训练不好的奖励?

Keras我正在尝试通过强化学习来训练神经网络玩井字游戏Python。目前,网络获取当前板的输入:

如果网络赢得了一场比赛,它会从它所做的每一个动作(输出)中获得奖励。 [0,0,0,0,1,0,0,0,0] 如果网络输了,我想用不好的奖励来训练它。 [0,0,0,0,-1,0,0,0,0]

但目前我得到了很多 0.000e-000 准确度。

我可以训练一个“坏奖励”吗?或者如果不能用-1我应该怎么做呢?

提前致谢。

0 投票
0 回答
37 浏览

tensorflow - 用奖励处理不平衡样本数据库的最佳方法是什么

我寻找一种解决方案来从不平衡的奖励样本数据文件中训练 DNNClassifier(4 个类,20 个数字特征)。每个类代表一个游戏动作并奖励动作得分。给出特征观察。所以它看起来像QLearning模型......但是QLearning模型是一种无数据的在线训练方法。

我尝试使用以下公式管理样本权重:

权重 = ((reward-minreward)/(maxreward-minreward))*(totalsamples/classsamples)

180k 样本,准确率低;490k 样本准确率为 83%;不够好。

那么执行此操作的最佳方法是什么:

  • 和我一样有重量,但有更多样品或其他公式
  • 使用 QLearning 算法(但不知道该怎么做......)
  • 使用 Learning to Rank 算法(没有找到任何好的和完整的教程)

感谢您的回答

0 投票
2 回答
418 浏览

c# - 为什么我的代码没有增加观看的奖励视频广告的分数?

当我单击按钮加载奖励视频广告时,分数应该会翻倍。相反,奖励广告会播放,当我看完后关闭时,什么也没有发生。我使用公共静态变量点来获取从游戏场景到关卡完成场景的得分值,然后从玩家预制件中获取总分。我是编码新手。

贝娄是代码。

0 投票
1 回答
297 浏览

python - REINFORCE 深度强化学习算法中的折扣奖励

我正在使用基线算法实施 REINFORCE,但我对折扣奖励功能有疑问。

我实现了这样的折扣奖励功能:

因此,例如,对于折扣因子和它给出gamma = 0.1的奖励:rewards = [1,2,3,4]

r = [1.234, 2.34, 3.4, 4.0]

根据 return G的表达式,这是正确的:

回报是折扣奖励的总和:G = discount_ factor * G + reward

但是,在这里我的问题是,我从 Towards Data Science https://towardsdatascience.com/learning-reinforcement-learning-reinforce-with-pytorch-5e8ad7fc7da0找到了这篇文章,他们在其中定义了相同的函数,如下所示:

计算相同gamma = 0.1并给出奖励rewards = [1,2,3,4]

r = [1.234, 0.234, 0.034, 0.004]

但是这里看不到流程,好像不符合G的规则……

有人知道第二个函数发生了什么以及为什么它也可能是正确的(或者在哪些情况下可能......)?

0 投票
0 回答
61 浏览

reinforcement-learning - 奖励与前一个状态或下一个状态有关吗?

在强化学习框架中,我对奖励以及它与状态的关系有点困惑。例如,在 Q-learning 中,我们有以下公式用于更新 Q 表:

q-learning 更新公式

这意味着奖励是在时间 t+1 从环境中获得的。我的意思是在应用动作 a t之后,环境给出 s t+1和 r t+1

奖励通常与前一个时间步相关联,即在上述公式中使用 r t 。例如,参见 Q-learning 的 Wikipedia 页面 ( https://en.wikipedia.org/wiki/Q-learning )。为什么是这样?

偶然地,一些关于相同主题但使用不同语言的维基百科页面使用 r t+1(或意外地 R t+1)。例如,参见意大利语和日语页面:

0 投票
1 回答
24 浏览

state - 关于强化学习(RL)中奖励的问题

我有一个关于 RL 奖励的问题。这句话是真的吗?如果是为什么?先感谢您

“每次(对于来自同一状态的同一动作)的奖励不必相同。”

0 投票
1 回答
146 浏览

python - 乒乓游戏的奖励——(OpenAI 健身房)

在此处输入图像描述

我知道当一方得 20 分时,Pong Game 初始化为新游戏。

顺便说一句,奖励显示它下降到 -20 以下。
为什么呢?

值得期待的一件事是,在一方获得 20 分后,游戏会通过再玩一次来重置。游戏需要21分才能初始化吗?

(使用 8 个工人,A2C,PongNoFrameskip-v4)