一. 简述
在和环境一直交互的过程中,智能体在不同的状态下不停地摸索,获取不同的动作的反馈。摸索(Exploration)可能帮忙智能体通过一直试验取得反馈,利用(Exploitation)是指利用已有的反馈信息抉择最好的动作。因而如何均衡摸索和利用是智能体在交互中一直学习的重要问题。
二. 什么是摸索和利用?
场景假如:假如咱们开了一家叫 Surprise Me 的饭馆,客人来了不必点餐,而是用算法来决定该做哪道菜。具体过程为:
(1)客人 user = 1,…,T 顺次达到饭馆。
(2)给客人举荐一道菜,客人承受则留下吃饭(Reward=1),回绝则来到(Reward=0)。
(3)记录抉择承受的客人总数 total_reward。
为了由浅入深地解决这个问题,咱们先做以下三个假如。
(a)同一道菜,有时候会做得好吃一些(概率=p),有时候会难吃一些
(概率 = 1−p),然而并不知道概率 p 是多少,只能通过屡次观测进行统计。
(b)不思考集体口味的差别,即当菜做得好吃时,客人肯定会留下
(Reward=1);当菜不好吃时,客人肯定会来到(Reward=0)。
(c)菜好吃或不好吃只有客人说的算,饭馆是当时不晓得的。
摸索阶段:通过屡次观测推断出一道菜做得好吃的概率。如果一道菜曾经举荐了 k 遍(获取了 k 次反馈),就能够算出菜做得好吃的概率
如果举荐的次数足够多,k 足够大,那么 会趋近于实在的菜做得好吃的概率 p。
利用阶段:已知所有的菜做得好吃的概率,决定该如何举荐?如果每道菜都被举荐了很多遍,就能够计算出每道菜做得好吃的概率,于是只需举荐 最大的那道菜。
摸索和利用的均衡是一个经久不衰的问题。一是,摸索的代价是要不停地拿用户去试菜,影响客户的体验,但有助于更加精确的预计每道菜好吃的概率;二是,利用会基于目前的预计拿出“最好的”菜来服务客户,但目前的预计可能是不准的(因为试吃的人还不够多)。
三. 如何均衡摸索和利用?
如何均衡摸索和利用呢?能够应用∈-greedy 算法,即每当客人到来时,先以的概率抉择摸索,从 N 道菜中随机抉择(概率为∈/N)一个让客人试吃,依据客人的反馈更新菜做得好吃的概率;而后,以 1 -∈的概率抉择利用,从 N 道菜 中抉择好吃的概率最高的菜举荐给用户。
∈-greedy 算法也存在一些毛病,比方,在试吃次数雷同的状况下,好吃和难吃的菜失去试吃的概率是一样的:有一道菜继续失去好吃的反馈,而另一道菜继续失去难吃的反馈,但在∈-greedy 中,摸索两道菜的概率是一样的,均为∈/N;在预计的胜利概率雷同的状况下,试吃次数多的和试吃次数少的菜失去再试吃的概率是一样的:假如有两道菜,第一道菜 50 人当中 30 集体说好,第二道菜 5 集体当中 3 集体说好,尽管两道菜的胜利概率都是 60%(30/50 = 3/5),但显然反馈的人越多,概率预计的越准。再摸索时,应该把重心放在试吃次数少的菜上。
总结一下,∈-greedy 僵硬地将抉择过程分成摸索阶段和利用阶段,在摸索时对所有物品以同样的概率进行摸索,并不会利用任何历史信息,包含某道菜被摸索的次数和某道菜取得好吃反馈的比例。
无妨让咱们遗记摸索阶段和利用阶段,认真想想如何充沛地利用历史信息,找到最值得被举荐的菜。
观测 1:如果一道菜曾经被举荐了 k 遍,同时获取了 k 次反馈,就能够算出菜做得好吃的概率:
image.png
当 k 趋近正无穷时,p 会趋近于实在的菜做得好吃的概率 p。
观测 2:事实当中一道菜被试吃的次数 k 不可能无穷大,因而预计出的好吃的概率 p 和实在的好吃的概率 p 总会存在一个差值 Δ。
基于下面两个观测,咱们能够定义一个新的策略:每次举荐时,总是乐观地认为每道菜可能取得的回报是 +Δ,这便是驰名的置信区间上界(Upper Confidence Bound,UCB)算法。最初只需解决一个问题:计算实在的概率和预计的概率之间的差值 Δ。
四. 最新利用
举荐零碎:举荐零碎的罕用形式,其次要是寻找损失函数评估能够使模型预测后果和即时用户相应之间差别最小化的模型。也就是示意,传统的举荐零碎模型没有明确思考到用户的长期趣味。但用户的趣味会依据其看到的内容随着工夫而变动,而推荐者的行为可能会显著的受到此类变动的影响。
为了解决无模型工作的样本复杂度大的问题,基于模型的深度强化学习对解决举荐零碎的问题更为牢靠。该举荐零碎框架应用对立的极小化极大框架学习用户行为模型和相干的处分函数,而后再利用用户行为模型学习深度强化学习策略
image.png
博弈游戏:近年来,深度强化学习在游戏博弈的利用越来越宽泛。特地实用于领有微小状态空间、宏大的动作空间、部分察看、多玩家同时在线游戏个性的游戏。
image.png
AlphaGo 在初期版本中,通过与人类棋手的棋谱进行学习训练,学习到如何下围棋。AlphaGo Zero 则跳过该步骤,通过自我对弈学习下棋,从零学起,因而也命名为 Zreo。该算法零碎从一个对为围棋无所不知的深度学习网络开始,将该深度神经网络和搜索算法联合,进行自我对弈。对弈过程中,深度神经网络一直调整、降级其参数,用于预测每一步落子的概率和最终的胜利者。
五. 总结
强化学习就是这样一直的对数据进行摸索尝试,再将尝试失去的后果反馈到模型中,让参数失去优化,使得最终的模型性能最优。强化学习能够利用在领有微小状态空间、宏大的动作空间的工作场景中。