【RL】基本概念
【RL】基本概念
概率统计
随机变量:一个未知的量,它的值取决于一个随机事件的结果。
概率密度函数:随机变量在某个确定的取值点附近的可能性(连续概率分布 & 离散概率分布)
期望:连续分布(p(x)和f(x)的乘积做定积分) & 离散分布(对p(x)和f(x)的乘积进行连加)
随机抽样: from numpy.random import choice / sample = choice(['a','b','c'], size=100, p=[0.2,0,5,0,3])
简介
基本概念
监督学习: 用于处理分类与回归问题,这类问题的任务是对输入X与输入Y之间的映射关系进行拟合,从而对不同X对应的Y进行预测
强化学习:用于求解序列决策问题,这一类问题的任务是求解一个策略用于指导机器在不同状态下选择最佳动作。
核心思想:强化学习的做法是让机器自行对动作进行探索,然后根据环境的反馈,不断地对策略进行调整,最终目标是使得环境收益尽可能地大。

State & Action
马尔可夫决策过程
马尔可夫决策:\(\left(S_t, A_t, R_t, P_t\right)\)
\(S_t:\) 环境状态
\(A_t\) : 智能体的动作
\(Policy\ \pi:\) 状态到动作之间的映射
\(\boldsymbol{R}_t\) : 奖励函数, 取决于当前状态与动作
\(P_t=p\left(S_{t+1}=s^{\prime} \mid S_t=s, A_t=a\right)\) : 状态转移概率
学习与决策者被称为智能体 (agent)
与智能体交互的部分则称为环境 (state)
环境下一时刻的状态与奖励均只取决于当前时刻的状态与智能体的动作(action)
Policy \(\pi\)
本质是一个概率密度函数,根据观测到的状态来进行决策,来控制agent运动。 \[ \pi(a \mid s)=P(A=a \mid S=s) \]
State Transition
状态转移可以使用p函数表示,条件概率密度函数,意思是如果观测到当前的状态s以及动作a,p函数输出s’的概率
\[ p\left(s^{\prime} \mid s, a\right)=P\left(S^{\prime}=s^{\prime} \mid S=s, A=a\right) \]
Reward(\(R_t\)) & Return(\(U_t\))
Reward(奖励)
\[ R_t=R\left(s_t, a_t\right) \quad \]
短期利益,在某状态下采取某动作的好坏,在当前环境中获得的短期利益,只考虑动作对当前状态的影响
Return(收益)Discounted Return
\[ \quad U_t = R_{t+1}+\gamma R_{t+2}+\gamma^2 R_{t+3}+\cdots=\sum_{k=0}^{\infty} \gamma^k R_{t+k+1} \quad \]
长远利益,t时刻的return叫做 \(U_t\) or \(G_t\)。 指将t时刻到未来所有折扣奖励之和(\(\gamma\) 折扣因子,超参数,并且越往后,衰减越大),当前的奖励比未来奖励影响大。
某一时刻\(t\),对于未来\(R_i(i>t)\),依赖于所有\(S_i\)以及\(A_i\),由于Action、State的转移是随机的,因此 \(U_t\) 是一个随机变量
Action-Value Function(\(Q_\pi\))
动作-状态价值函数 \(Q_\pi(s_t,a_t)\)
表示在给定状态-动作对的条件下未来依据某策略做决策所能获得的平均收益
Discounted Return: \(U_t=R_t+\gamma R_{t+1}+\gamma^2 R_{t+2}+\gamma^3 R_{t+3}+\cdots\)
定义\(Policy\ \pi\)的 Action-value function: \[ Q_\pi\left(s_t, a_t\right)={\mathbb{E}}\left[U_t \mid S_t=s_t, A_t=a_t\right] . \]
由于 \(U_t\) 依赖于 \(A_t, A_{t+1}, A_{t+2}, \cdots\) 以及 \(S_t, S_{t+1}, S_{t+2}, \cdots\),而Action和State的转移是随机的。
因此\(U_t\)是一个随机变量,它依赖所有的动作和状态,在t时刻并不知道\(U_t\)是什么,因此求期望\(\mathbb{E}\)积掉随机性。
利用期望\(\mathbb{E}\)消除\(A_i,S_i(i>t)\),留下\(A_t,S_t\)
最优动作价值函数(Optimal Action-Value Function)\(Q^\star(s_t,a_t)\)
定义最佳策略下的动作价值函数为最优价值函数 \[ Q^*\left(s_t, a_t\right)=\max _\pi Q_\pi\left(s_t, a_t\right) . \] 核心:求解最优策略也就等价于求解最优Q值。
学习目标:学习到一个最优策略 \(\pi^*\), 使智能体在任意状态下的价值最大最优动作-状态价值函数(最优 \(\mathrm{Q}\) 值)
State-Value Function (\(V_\pi\))
状态价值函数 \(V_\pi(s_t)\)
\(V_\pi\)是动作价值函数\(Q_\pi\)的期望。
\(Q_\pi(s_t,a_t)\)和\(Policy\ \pi,\ s_t,\ a_t\)有关,将动作\(a_t\)作为随机变量,然后期望\(\mathbb{E}\)把\(A_t\)消掉,求期望得到的\(V_\pi\)只与\(Policy\ \pi,\ s_t\)有关。 \[ V_\pi\left(s_t\right)=\mathrm{E}_A\left[Q_\pi\left(s_t, A\right)\right] \] 作用:
对于给定的 \(\pi\) ,\(V_\pi\) 评价当前的\(s_t\)好不好
评估 \(Policy\ \pi\) 的好坏
随机性
动作随机
动作是根据\(Policy\ \pi\)随机抽样得到的,利用\(Policy\ \pi\)来控制Agent.
给定当前状态 S,Agent的动作A是按照\(Policy\ \pi\)输出的概率来随机抽样 \[ \begin{aligned} & \mathbb{P}[A=a \mid S=s]=\pi(a \mid s) \end{aligned} \]
状态转移随机
Environment用状态转移函数p算出概率,然后用随机抽样得到下一个状态S’ \[ \mathbb{P}\left[S^{\prime}=s^{\prime} \mid S=s, A=a\right]=p\left(s^{\prime} \mid s, a\right) \]