- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Q 学习中,从当前状态开始,智能体在每个离散时间步采取行动,并且在执行操作后,智能体会立即收到奖励以了解所执行操作的成功或失败。假设我们想要使用 Q 学习来控制车辆速度,其中 Action 是目标速度,智能体的目标是尽快到达 parking 线(距起点 1 公里)。
1) 所以在这个例子中,智能体是否需要在每个离散时间步长(1秒)采取行动,或者智能体可以在每 100m 而不是每个离散时间步长采取行动。是否必须在每个离散时间步采取行动?
2)Q-learning中的延迟奖励是什么意思?是在代理达到目标后更新奖励,而不是在每个时间步骤采取每个操作后更新奖励?预先感谢:)
最佳答案
1) does agent need to take action at every discrete time step (1sec) or agent can get an action at every 100m instead of every discrete time step. Is that a must to take action at every discrete time step?
我认为您可能将 Q-learning 中的时间步长概念与我们对时间的物理实现混淆了。在 Q 学习中,每个时间步都是轮到智能体采取行动/采取行动的时间。因此,如果游戏是国际象棋,那么每个时间步都是玩家下棋的时间。因此,你的智能体采取行动的频率是由游戏规则决定的。在你的例子中,我不太清楚“游戏”的规则是什么?如果规则规定代理每 1“秒”选择一个操作,那么代理将需要遵循该规则。如果您认为这种情况太频繁,您可以查看“无”是否是代理可以采取的操作选项。
what is mean by delayed reward in Q-learning? is that updating reward once agent reaches to the target instead of updating reward after taking each action at every time step?
要了解延迟奖励,也许可以看看 formula有助于。 正如您所看到的,时间步 t 处的 Q 值不仅受到旧 Q 值和即时奖励的影响,还受到“估计的最佳 future 值”的影响。这个估计的最佳值(带有待调整的超参数折扣因子)被设置为捕获“延迟奖励”。
延迟奖励背后的直觉是,有时一个 Action 在当时可能看起来是一个不好的 Action (从数学上讲,通过采取这个 Action ,代理会收到较低的即时奖励甚至惩罚),但不知何故,这个 Action 会导致长期效益。放在你的例子中,假设代理在位置 P,有两条路线可以到达 parking 线。一条路线直线距离为 1 公里,另一条路线有一点绕道,距离为 1.5 公里。代理选择 1.5 公里的路线,它可能会比选择 1 公里的路线获得更少的直接奖励。我们进一步假设 1.5 公里路线的速度限制比 1 公里路线更高,这实际上导致代理比走 1 公里路线更快地到达 parking 线。这个“ future 奖励”是计算时间步t(位置P的状态,采取1.5公里路线的 Action )的Q值时需要考虑的延迟奖励。
该公式实现起来可能有点困惑,因为它涉及 future 的 Q 值。我曾经这样做的方法是简单地计算时间步 t 的 Q 值,而不用担心延迟奖励。
# @ time step t
Q(st, at) = Q(st, at) + alpha * immedate_reward - alpha*Q(st, at)
然后在达到时间步 t+1 后,我返回以延迟奖励更新时间步 t 处的先前 Q 值。
# @ time step t+1
Q(st+1, at+1) = Q(st+1, at+1) + alpha * immedate_reward - alpha*Q(st+1, at+t)
Q(st, at) = Q(st, at) + alpha * gama * max(Q(st+1, a))
我希望这有助于澄清并回答您的问题......
关于machine-learning - Q-learning更新频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40121969/
基本上,我的问题是,由于无监督学习是机器学习的一种,是否需要机器“学习”的某些方面并根据其发现进行改进?例如,如果开发了一种算法来获取未标记的图像并找到它们之间的关联,那么它是否需要根据这些关联来改进
生成模型和判别模型似乎可以学习条件 P(x|y) 和联合 P(x,y) 概率分布。但从根本上讲,我无法说服自己“学习概率分布”意味着什么。 最佳答案 这意味着您的模型要么充当训练样本的分布估计器,要么
是否有类似于 的 scikit-learn 方法/类元成本 在 Weka 或其他实用程序中实现的算法以执行常量敏感分析? 最佳答案 不,没有。部分分类器提供 class_weight和 sample_
是否Scikit-learn支持迁移学习?请检查以下代码。 型号 clf由 fit(X,y) 获取 jar 头型号clf2在clf的基础上学习和转移学习 fit(X2,y2) ? >>> from s
我发现使用相同数据的两种交叉验证技术之间的分类性能存在差异。我想知道是否有人可以阐明这一点。 方法一:cross_validation.train_test_split 方法 2:分层折叠。 具有相同
我正在查看 scikit-learn 文档中的这个示例:http://scikit-learn.org/0.18/auto_examples/model_selection/plot_nested_c
我想训练一个具有很多标称属性的数据集。我从一些帖子中注意到,要转换标称属性必须将它们转换为重复的二进制特征。另外据我所知,这样做在概念上会使数据集稀疏。我也知道 scikit-learn 使用稀疏矩阵
我正在尝试在 scikit-learn (sklearn.feature_selection.SelectKBest) 中通过卡方方法进行特征选择。当我尝试将其应用于多标签问题时,我收到此警告: 用户
有几种算法可以构建决策树,例如 CART(分类和回归树)、ID3(迭代二分法 3)等 scikit-learn 默认使用哪种决策树算法? 当我查看一些决策树 python 脚本时,它神奇地生成了带有
我正在尝试在 scikit-learn (sklearn.feature_selection.SelectKBest) 中通过卡方方法进行特征选择。当我尝试将其应用于多标签问题时,我收到此警告: 用户
有几种算法可以构建决策树,例如 CART(分类和回归树)、ID3(迭代二分法 3)等 scikit-learn 默认使用哪种决策树算法? 当我查看一些决策树 python 脚本时,它神奇地生成了带有
有没有办法让 scikit-learn 中的 fit 方法有一个进度条? 是否可以包含自定义的类似 Pyprind 的内容? ? 最佳答案 如果您使用 verbose=1 初始化模型调用前 fit你应
我正在使用基于 rlglue 的 python-rl q 学习框架。 我的理解是,随着情节的发展,算法会收敛到一个最优策略(这是一个映射,说明在什么状态下采取什么行动)。 问题 1:这是否意味着经过若
我正在尝试使用 grisSearchCV 在 scikit-learn 中拟合一些模型,并且我想使用“一个标准错误”规则来选择最佳模型,即从分数在 1 以内的模型子集中选择最简约的模型最好成绩的标准误
我正在尝试离散数据以进行分类。它们的值是字符串,我将它们转换为数字 0,1,2,3。 这就是数据的样子(pandas 数据框)。我已将数据帧拆分为 dataLabel 和 dataFeatures L
每当我开始拥有更多的类(1000 或更多)时,MultinominalNB 就会变得非常慢并且需要 GB 的 RAM。对于所有支持 .partial_fit()(SGDClassifier、Perce
我需要使用感知器算法来研究一些非线性可分数据集的学习率和渐近误差。 为了做到这一点,我需要了解构造函数的一些参数。我花了很多时间在谷歌上搜索它们,但我仍然不太明白它们的作用或如何使用它们。 给我带来更
我知道作为功能 ordinal data could be assigned arbitrary numbers and OneHotEncoding could be done for catego
这是一个示例,其中有逐步的过程使系统学习并对输入数据进行分类。 它对给定的 5 个数据集域进行了正确分类。此外,它还对停用词进行分类。 例如 输入:docs_new = ['上帝就是爱', '什么在哪
我有一个 scikit-learn 模型,它简化了一点,如下所示: clf1 = RandomForestClassifier() clf1.fit(data_training, non_binary
我是一名优秀的程序员,十分优秀!