偏好强化学习概述

简介: 偏好强化学习概述

为什么需要了解偏好强化学习

为什么需要了解偏好强化学习?目前强化学习主流的方法都是基于奖励的,强化学习优化目标是长期的累计奖励。而如何设计一个好的奖励函数通常需要大量专家领域知识。并且需要考虑提出的奖励函数是否会影响学习过程,比如学习速度等等问题。在有些场景也并不是能够很好地去定义出这样一个奖励。

对于实际业务问题,业务本身比较复杂,传统解决方法(比如行为树)如果不好,那也不能基于数据去做一些offline RL。并且如果不好给定奖励函数的话,通常会采用模仿学习的方法。但是也存在一些场景人类专家也不能给出一些确切的行为,因此也不能去做一些模仿学习,比如在机器人领域控制电机的电流进而控制机械臂,人类专家无法直接给出电流的参考示例。直接人类给出动作的代价相比于给出偏好的代价是更高的。还有一些场景动作空间巨大,比如电网调度领域,动作空间高达几万个等等的一些传统解决方案很棘手的场景中,可以考虑去采用偏好强化学习来作为一种初始化网络参数,或者微调修复性能的方法。

随着生产物质的丰富,用户对于个性化追求将愈发强烈。如何将用户的个性化偏好进行量化,进而更好地服务用户(比如用GPT作为智能家居中控,给用户提供个性化的全家智能)。比如在游戏AI领域,如何基于用户反馈,设计出拟人性的智能体,或者是符合玩家兴趣爱好的智能体,或者依据玩家偏好变化而变化的NPC都是未来的发展趋势。


什么是偏好强化学习


想要去解决一个问题,首先需要去寻找的就是优化目标。在强化学习里面的优化目标就是奖励函数,因此想要待解决的问题用强化学习方法来求解,就需要将优化目标与奖励函数挂钩。而基于专家经验设计的奖励函数通常会面临四个问题:1. Reward Hacking: 只管最大化奖励分数,不考虑实际情况。2. Reward Shaping: 平衡goal definition和guidance task。3. Infinite Rewards: 存在一些case,是坚决不允许发生的。虽然现在有mask可以去做,但是也有一些问题其实是没有办法用mask去做的,只有做了之后才能验证是否违反了硬约束条件。4. Multi-objective Trade-off: 如果需要考虑多个优化目标

当然也有一些方法在设计一些内在的奖励,来处理这样一个问题。然而设计一个好的内在奖励其实也是很困难的。

偏好强化学习(Preference-Based Reinforcement Learning, PbRL)直接基于专家的反馈进行学习,并不需要设计奖励函数,并且对于人类对于专业领域的需求也比较少,因为给一个确切的数值奖励给智能体,而是一个比较值。PbRL的关键在于说把强化学习里面,对于奖励,从一个数值的反馈信号变成了一个偏好的反馈信号。想要构建偏好强化学习的优化过程,我们还需要去定义一些符号,和我们能够拿到的数据集合:


image.png

基于偏好的马尔科夫决策过程(Markov decision processes with preferences,MDPP)

image.png

注意:这里并没有假设一个奖励的数值信号r ( s , a )

如何基于人类反馈的偏好来优化策略呢?

基于人类反馈的优化框架如下图所示:


image.png

基于轨迹(trajectory)的最大化偏好问题可以描述为:


image.png

到此,我们就可以定义出一个最小化偏好损失函数:


image.png

在有多个偏好相互比较的关系下,损失函数可以表示为:


image.png


表示为权重加和的方式则为:


image.png

反馈类型分类


  1. 动作偏好(action preference): 对于给定的相同状态,比较两个动作。这种方法无法处理短期偏好与长期偏好的关系。
  2. 状态偏好(state preference): s i 1 ≻ s i 2 表示相比于状态s i 2,人类更偏好状态s i 1
  3. 轨迹偏好(trajectory preference): τ i 1 ≻ τ i 2 表示轨迹τ i 1 优于轨迹τ i 2 。轨迹偏好里一个重要问题就是信用分配问题(temporal credit assignment problem)。


学习算法分类

近似策略分布(Approximating the Policy Distribution)

对于给定的trajectoryζ \zetaζ,基于参数化的策略分布Pr ⁡ ( π ∣ ζ ) 产生不同的策略π1,π2,再基于产生的不同的策略来产生不同的trajectorτ 1 , τ 2 再给定人类评判偏好,存储偏好轨迹。最后产生能够最大化轨迹偏好的策略argmaxπPr(πζ)

比较和排序策略(Comparing and Ranking Policies)

给定策略集合,在策略集合中直接进行偏好排序,选取获取偏好排序最大的策略作为最终策略进行输出:

学习偏好模型(Learning a Preference Model)

直接学一个偏好模型:C ( a ≻ a ′ ∣ s ) ,策略为贪婪策略。类似DQN,在这里是直接计算偏好函数,然后基于偏好函数来直接求解策略。

学习奖励函数(Learning a Utility Function)

基于偏好计算一个奖励函数U ( τ ) ,在许多场景中可以拆分为 U ( s , a ) 。策略求解即为最大化奖励的过程。 这也是目前主流的求解方案:

总结这四类方法就是:1. 构建一个产生策略的函数θ ,一最大化偏好轨迹来优化θ 。2. 给定一个策略集合,基于偏好,直接在策略集合中选取能够产生人类偏好最大的策略。3. 学习一个偏好模型C ( a ≻ a ′ ∣ s ) , 基于这个偏好模型直接贪婪产生策略。4. 学习奖励函数,策略基于奖励函数进行优化。

近期工作

Deep Reinforcement Learning from Human Preference(2023)

这篇文章主要贡献是用于比较困难的游戏场景中:

奖励预测器损失函数可以表示为:


image.png

人类偏好的不稳定性,会导致奖励预测器的偏差和方差都受到一定的影响。

实验结果:

Preference Transformer: Modeling Human Preferences using Transformers for RL(2023)

这篇文章主要用于解决非马尔科夫性

整体框架图:

Preference Transformer局部:


注意奖励在Linear层就已经进行了预测,后续输出是对trajectory奖励的加权。

在实验部分,作者设计了一系列的评估指标,用于确定Preference Transformer确实是学到了中间的关键步骤奖励,也就是确实进行了置信分配。


更多相关文章


相关文章
|
1月前
|
机器学习/深度学习 自然语言处理 算法
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
【大模型】如何向非技术受众解释LLM的概念及其能力?
【5月更文挑战第7天】【大模型】如何向非技术受众解释LLM的概念及其能力?
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
【大模型】如何利用 LLM 来创建更像人类的对话?
【5月更文挑战第7天】【大模型】如何利用 LLM 来创建更像人类的对话?
|
1月前
|
机器学习/深度学习 数据可视化 数据挖掘
强化学习第1天:强化学习概述
强化学习第1天:强化学习概述
27 0
|
4月前
|
机器学习/深度学习 搜索推荐 算法
推荐系统算法的研究与实践:协同过滤、基于内容的推荐和深度学习推荐模型
推荐系统算法的研究与实践:协同过滤、基于内容的推荐和深度学习推荐模型
257 1
|
9月前
|
机器学习/深度学习 人工智能 搜索推荐
经典机器学习系列(十一)【个性化推荐之协同过滤】
经典机器学习系列(十一)【个性化推荐之协同过滤】
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
强化学习从基础到进阶–案例与实践[11]:AlphaStar论文解读、监督学习、强化学习、模仿学习、多智能体学习、消融实验
强化学习从基础到进阶–案例与实践[11]:AlphaStar论文解读、监督学习、强化学习、模仿学习、多智能体学习、消融实验
强化学习从基础到进阶–案例与实践[11]:AlphaStar论文解读、监督学习、强化学习、模仿学习、多智能体学习、消融实验
|
11月前
|
机器学习/深度学习 人工智能 算法
强化学习从基础到进阶-常见问题和面试必知必答[1]:强化学习概述、序列决策、动作空间定义、策略价值函数、探索与利用、Gym强化学习实验
强化学习从基础到进阶-常见问题和面试必知必答[1]:强化学习概述、序列决策、动作空间定义、策略价值函数、探索与利用、Gym强化学习实验
|
11月前
|
机器学习/深度学习 人工智能 算法
强化学习从基础到进阶-案例与实践[1]:强化学习概述、序列决策、动作空间定义、策略价值函数、探索与利用、Gym强化学习实验
强化学习从基础到进阶-案例与实践[1]:强化学习概述、序列决策、动作空间定义、策略价值函数、探索与利用、Gym强化学习实验
强化学习从基础到进阶-案例与实践[1]:强化学习概述、序列决策、动作空间定义、策略价值函数、探索与利用、Gym强化学习实验
|
11月前
|
机器学习/深度学习 算法 大数据
深度学习入门笔记5 Facebook营销组合分类预测
深度学习入门笔记5 Facebook营销组合分类预测