基于模型的学习

• 11 min read • 2007 words
Tags: Re-Le
Categories: Introduction to Artificial Intelligence

基于模型的学习

1. 相关概念

在强化学习中,基于模型的学习(Model-Based Learning)是一种方法,其核心思想是让智能体通过与环境的交互来学习环境的动态模型。这个模型通常包括两个关键部分:

  • 转移函数 (Transition Function) T(s,a,s)T(s, a, s'):预测在状态 ss 执行动作 aa 后,转移到下一个状态 ss' 的概率。
  • 奖励函数 (Reward Function) R(s,a,s)R(s, a, s'):预测在状态 ss 执行动作 aa 并转移到 ss' 后,能够获得的奖励。

智能体通过与环境交互收集的经验,建立一个近似的模型(T^\hat{T}R^\hat{R}。随后,它可以在这个内部模型上使用规划算法(如价值迭代或策略迭代)来计算出最优策略,而无需与真实环境进行更多交互。

这种方法的本质是将学习与规划分离,先从经验中学习世界如何运转,再利用学到的知识进行推理和决策。

2. 模型学习过程

模型学习的过程主要依赖于对智能体与环境交互历史的统计和归一化

a.a. 数据收集与统计

智能体首先在环境中执行一个探索策略 πexplore\pi _{explore} 来收集数据。在探索过程中,智能体会记录下所有经历过的 (s,a,s)(s, a, s') 元组及其对应的奖励。

通过多次试验,智能体会累积大量的样本数据。核心步骤是统计每个状态-动作对 (s,a)(s, a) 被访问的次数,以及(s,a)(s, a) 转移到特定下一状态 ss' 的次数

b.b. 转移与奖励函数估计

利用收集到的统计数据,我们可以估计转移函数和奖励函数。

  • 转移函数 T^\hat{T} 的估计:通过归一化(Normalization)计数来计算。其原理是 T(s,a,s)=P(ss,a)T(s, a, s') = P(s' | s, a),可以用观测频率来估计概率。
T^(s,a,s)=count(s,a,s)count(s,a)\hat{T}(s, a, s') = {{count(s, a, s')} \over count(s, a)}
  • 奖励函数 R^\hat{R} 的估计:直接使用在探索过程中观测到的奖励作为估计值。

根据大数定律,随着收集的样本越来越多,估计模型 T^\hat{T}R^\hat{R} 会逐渐收敛于真实的环境模型。

3. 从模型到策略

一旦智能体获得了足够精确的环境模型 T^\hat{T}R^\hat{R},它就可以停止或减少探索,并利用这个模型进行规划,以生成一个利用策略 πexploit\pi _{exploit}

这个过程通常涉及以下步骤:

  1. 停止探索:在任意时刻,当智能体认为模型已经足够好时,可以暂停数据收集。
  2. 执行规划算法:将学到的 T^\hat{T}R^\hat{R} 作为输入,运行价值迭代策略迭代 等动态规划算法。
  3. 生成最优策略:规划算法会计算出在当前模型下的最优价值函数或最优策略 πexploit\pi _{exploit}
  4. 执行策略:智能体遵循 πexploit\pi_ {exploit} 在环境中行动,以最大化累积奖励,实现从学习到应用的转换。