什么是强化学习
强化学习(Reinforcement Learning)在百度上的解释是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益。在我的理解里,强化学习就是用了解决庞大而又复杂问题的一种方式,这通常是最优化问题。用CS234中的一句话解释就是:
Learning to make good sequences of decisions under uncertainty.
一个著名的例子:AlphaGo。如果不用 RL 的话,用穷举来解决这个问题可以吗 ?说实话,肯定是可以的,但这个程序就会十分复杂而且运行起来十分缓慢,那这,又有什么意义呢?
这时强化学习就派出了用场。
应用强化学习的场景
当前应用最广泛的领域就是游戏。无论是大名鼎鼎的AlphaGo还是现在的王者绝悟,你都能看出 RL 的影子。如果一个问题符合其中3个要素,RL 都能排上用场。
- 最优化问题
- 结果未来可知
- 奖励不明显
- 实际应用需要泛化
如果问题符合以下条件:
p
(
s
t
+
1
∣
s
t
,
a
t
)
=
p
(
s
t
+
1
∣
h
t
,
a
t
)
p(s_{t+1}|s_t , a_t ) = p(s_{t+1}|h_t , a_t )
p(st+1∣st,at)=p(st+1∣ht,at)
则可以使用 RL 解决。
未完待续…