关于MAB, CB, RL三个问题的理解

一、三个接近的问题

  1. 多臂老虎机MAB(Multi-armed bandit problem)

    1. 概念讲的最简单易懂的:https://blog.csdn.net/yfzhandd1989/article/details/79082414?utm_source=blogxgwz2

    2. 我的理解:MAB就是一个老虎机,上面有多个臂,要解决的问题是选择拉哪个臂得到最多的奖励。只要拉足够多的次数,就知道每个臂的期望回报,然后去拉期望回报最高的那个臂即可。

    3. 精髓:MAB是没有状态的或者说状态是一样的,都是面对同一个MAB,学习的是reward最大的动作a,即先学习a->r,然后选最大r对应的a。学到最后,只会反复做一个最优动作。

  2. 上下文赌博机CB(Contextual Bandit)

    1. 概念理解https://blog.csdn.net/qq_32690999/article/details/78996398

    2. 我的理解:其实就是多个MAB摆成一排,面对任意一个MAB,选择拉哪个臂的问题;

    3. 精髓: CB在MAB问题上增加了状态。学习的是对于任意一个状态,采取什么动作,使得r最大。学到最后,针对一个状态,只会选择一个最优动作。

  3. RL:(s, a)->(s',r)

    1. 概念理解:MDP问题

    2. 我的理解:增加了状态转移和延迟reward

    3. 精髓:学到最后,针对一个状态,只会先把一个最优动作。

二、三个问题的解法

  1. MAB问题:多次采样,得到期望;迭代的话,大概率选择当前平均最高的动作,小概率去探索新的动作

  2. CB问题:每个状态,多次采样,得到期望;迭代的话,同上

  3. RL问题:Q-learning等

三、三个问题如何在业务场景上区分

状态是否只有一个,如果只有一个,那么是MAB问题;

如果有多个状态,看下执行动作后,状态是否有转移,如果无转移那么是CB问题;

如果执行动作后,状态有转移,那么就是RL问题,无需关心reward有没有延迟,无延迟即gamma=0,有延迟,则gamma != 0。故判断一个问题是不是RL问题关键在于状态是否有转移而非有无延迟reward。

四、这三个问题和监督学习的区别

其实,思考清楚了MAB/CB问题和监督学习的区别就差不多了,MAB/CB是一个从历史经验中学习决策的问题,使数值奖赏最大;而监督学习是从历史经验中学习打哪个标签的问题,没有奖赏可言;RL与监督学习的区别还在于:有状态转移,而监督学习对应的特征是客观独立的。

你可能感兴趣的:(互联网,机器学习)