强化学习探索率是什么?用 ε-greedy 核对探索和贪心选择

用可运行的小例子检查探索率、随机分支和实际动作分布。提供演示数据、核对方法和适用边界。

在 ε-greedy 策略中,探索率 ε 控制“这一次是否走随机分支”的概率。它不是学习率,也不等于“选择非最佳动作的比例”:随机分支仍可能抽到当前最优动作。要调参数,先把这两个统计口径分清。

一个可手算的三动作例子

假设某一状态有左、右、停三个动作,当前 Q 值分别是 1、5、2,且没有并列。本文自拟例子约定:以概率 ε 在三个动作中均匀抽样;否则选择 Q 值最大的“右”。当 ε=0.3 时,右的概率是 0.7+0.3/3=0.8,左和停各是 0.1。因此探索分支约占 30%,非贪心动作却只约占 20%。

强化学习探索率是什么?用 ε-greedy 核对探索和贪心选择

这个结论依赖“随机分支包含所有合法动作”的约定。有些实现只在非贪心动作中抽样,不能沿用同一个公式。遇到动作屏蔽时,也要按剩余合法动作数重新计算。

用 Python 分别统计分支和动作

下面例子只需要 Python 标准库。保存为 epsilon_demo.py,运行后观察两组统计;它演示动作选择,不会更新 Q 表,也不代表已经训练出智能体。

import random
from collections import Counter

rng = random.Random(19)
actions = ["左", "右", "停"]
q = [1.0, 5.0, 2.0]
epsilon = 0.3
assert 0.0 <= epsilon <= 1.0
greedy = max(range(len(q)), key=q.__getitem__)
counts = Counter()
exploration_count = 0
for _ in range(10000):
    exploring = rng.random() < epsilon
    if exploring:
        index = rng.randrange(len(actions))
        exploration_count += 1
    else:
        index = greedy
    counts[actions[index]] += 1
print("探索分支比例:", exploration_count / 10000)
print("动作比例:", {a: counts[a] / 10000 for a in actions})

核对时,探索分支比例应接近 0.3,右动作比例应接近 0.8。有限次数的随机采样会有波动,不要求恰好相等;换随机种子再运行,可以观察这一点。如果右动作接近 0.7,先查代码是否把贪心动作排除在随机分支之外。

训练时怎样安排探索率

常见做法是训练开始时多探索,再逐渐降低 ε。一个演示日程可以写成 max(0.05, 1.0 - step / 10000);这些数值只是例子,不能当成所有任务的推荐配置。先记录 ε、合法动作数量、每个动作的访问次数和评估回报,再判断衰减是不是太快。

如果某个动作几乎没被尝试,就难以可靠地比较它的价值;如果评估时仍有大量随机行动,又可能掩盖已学策略的表现。训练探索和独立评估应分别记录,不要把两组成绩混合。贪心评估也不保证最佳,只是帮助检查当前 Q 表的选择。

三个容易混淆的参数

参数 改变什么 不能据此推出什么
探索率 ε 动作选择的随机分支概率 每一步一定学习得更快
学习率 α 一次更新改变价值估计的幅度 随机动作更多
折扣因子 γ 未来奖励在目标中的权重 探索比例更高

本文没有对任何环境训练效果做实测;示例中的概率来自明确的选择规则与算式。探索过少可能漏掉机会,探索过多可能增加低回报动作,需要结合具体任务验证。

探索与利用的概念可参阅 2026 年 10 月 3 日读取的 Spinning Up 强化学习基础。实际 ε-greedy 细节仍应核对所用算法的选择代码。

Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/32949.html

赞 (0)
AI小管家的头像AI小管家
强化学习智能体是什么?用一次迷宫行动分清观察、动作与奖励
上一篇 1天前
强化学习的策略是什么?用确定性与随机策略解释动作选择
下一篇 1天前

相关推荐

联系我们

联系我们

1

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部