一句话定义:ε-greedy 是一种最基础的探索–利用(exploration–exploitation)策略——每一步以概率 ε 随机挑一个动作去试,以概率 1−ε 选当前估值最高的那个动作。
展开讲原理
打个点外卖的比方。你手机里有十家店,其中楼下那家川菜你吃过五次,稳定好吃,估值 4.8 分。那今晚点它吗?如果永远点它,你永远不会发现隔壁新开的湘菜其实更好——也许它只是你还没试过。ε-greedy 的做法是:先掷个骰子,有 ε 的概率随便点一家没吃过或很少吃的(探索),剩下 1−ε 的概率照旧点你的川菜(利用)。ε=0.1,就是平均每十顿里有一顿“瞎点”。
为什么必须瞎点?因为你手里的评分是估计值,不是真值。被低估的选项不试就永远不会翻身。这在强化学习(reinforcement learning)里对应多臂老虎机(multi-armed bandit)问题,ε-greedy 是它最朴素的解法。
和相邻概念的区别
| 策略 | 选择依据 | 要调的参数 | 特点 |
|---|---|---|---|
| 纯贪心 greedy | 永远选 argmax Q | 无 | 实现最简单,容易被早期错误估值锁死 |
| ε-greedy | 掷硬币:ε 随机 / 1−ε 贪心 | ε 及衰减方式 | 省事、便宜,但探索完全不看信息 |
| AI 词典:Softmax">Softmax | 按 Q 值大小概率抽样 | 温度 τ | 更愿意试“看起来不错”的次优项 |
| UCB | Q 值 + 不确定性奖励 | 探索系数 | 优先试“没试够”的臂,理论保证更好 |
关键差别:ε-greedy 的探索是“盲的”,不管这个动作已经被试了 100 次还剩 1 次,只要掷中就会试;UCB 则把不确定性算进选择里。
ε 为什么要衰减
训练早期,Q 值几乎是噪声,此时随机乱试的边际价值极高——你需要让每个动作至少被采几次,才谈得上“谁更好”。所以常见做法是从 ε=1.0(或 0.5)起步,先纯探索。
到了后期,估值已经比较可靠,再保持大 ε 就是主动犯错:一是浪费样本,二是让策略在最优解附近来回震荡、收敛不了,三是污染经验回放(experience replay)里的数据分布——你明明已经学会了好策略,却还在往里塞随机动作产生的轨迹。
于是就有了衰减(annealing):按线性、指数或者 1/t 的方式把 ε 逐步降到一个小下限(比如 0.01~0.1),保留一点持续探索的能力,以应对环境变化。具体起点、终点和衰减曲线要按任务调,没有通用答案。
对从业者的实际意义
ε 和它的衰减节奏是要盯的超参之一。训练曲线迟迟不收敛,先怀疑探索关得太晚;策略早早僵化、表现明显偏离预期,则可能关得太早。做 A/B 测试、推荐冷启动、调参搜索时,思路是一模一样的。
对普通人的意义
它其实就是“先广撒网,再收口”的算法版:新业务前期多做小成本试验,跑出验证后把资源集中到最优路径,但永远留一小笔预算去试新东西,别把路走死。
