我们想一下一个场景:驯兽师对海豚进行训练,使得海豚可以进行:起立——上台阶——跳跃——投篮——投中这一系列动作,并对海豚的每一个动作给予奖赏。所以海豚需要学习摸索,如何才能得到最高的奖赏。对海豚而言,每次动作得到的奖赏不同,海豚需要从驯兽师给的反馈中,总结出一套策略,针对每一个状态选择一个最优的动作,使得最终获得的奖赏最高。这就是强化学习。
强化学习任务可用四元组来表示
E=(X,A,P,R)
:
1,状态空间
X
,表示机器能感知到的所处环境的状态,比如海豚当前所处的环境是最有利于投篮、利于投篮,还是最不利于投篮等;
2,动作空间
3,当前状态为
x t
,动作
a∈A
作用于当前状态
x t
,使得下一状态为
x t+1
,转移函数
P
定义了
4,奖励函数
R
则定义了从一个状态转移到另一个状态,机器可以收到的奖赏,假设海豚从最不利于投篮的状态转移到了最利于投篮的状态,可收到价值为10的奖励,依然保持着最不利于投篮的状态,则会收到价值为-1的奖励。转移函数的映射为:
以上过程是一个马尔科夫决策过程(Markov Decision Process,MDP)。
机器在这个学习过程中,可以作为的是根据当前状态和收到的反馈选择动作。从机器的角度来看,环境的状态是客观存在的,状态的转移也是客观的,收到的奖赏也是客观被决定了的。机器可以做的就是选择动作来影响其所处环境,并通过观察动作后的状态和收到的反馈来感知环境。
机器就是不断地尝试和反馈中,学习到一个策略,定义为
π
。得到策略
π
之后,就可以知道在状态时,需要执行的动作
a=π(x)
。
π
一般有2种:确定性策略;随机性策略。前者把策略表示为函数
π:X→A
,直接返回当前需要选择的动作;后者把策略表示为概率
π:X×A→R
,
π(x,a)
表示在状态
x
下,欲得到最高奖赏,需要选择动作[a]的概率,由概率性质可知,
强化学习同监督学习有很大不同。监督学习有标记样本提高信息,可供机器去学习。强化学习没有任何标记样本可以利用,也没有人告诉机器在何种状态下改采取何种动作,甚至不知道当前动作对最终奖赏的影响,也仅能得到一个当前局部反馈。只有等最终结果揭晓,才知道之前所采取的动作对最终结果是有利还是不利的。机器只有通过多次尝试来发觉不同动作所带来的结果。
[ML]强化学习
最新推荐文章于 2023-11-20 13:57:59 发布