增强学习(Reinforcement Learning)

本文介绍了增强学习的基础概念,包括激励方程、价值方程和环境模型,并深入探讨了Q-learning。接着,文章重点讨论了深度Q网络(DQN)如何解决Q-learning在处理复杂问题时的局限性,详细阐述了DQN的结构、损失函数、经验回放等关键特性。此外,还提到了DQN的改进方法,如Double DQN和Dueling DQN。最后,通过自动游戏机器人的实例展示了DQN在实践中的应用。

增强学习(Reinforcement Learning)

1. 增强学习基础

什么是增强学习

通过训练学到最优的state -action映射关系的过程,使得agent得到最好的value/reward。

这里写图片描述

  • Agent:要学习的智能程序;
  • Policy:程序知道所处某状态后采取行为的策略(复杂情况DL,简单情况lookup table)
  • Environment:智能程序交互外界环境,接受action产生状态变化,返回reward,可以是真实世界,游戏模拟器,棋牌等。
激励方程 – reward function

某次行为结果产生的激励,如分数的增加;
定义增强学习的目的。

价值方程 – value function

agent 能够带来的长期累计回报,如累计的时间转换为价值;
激励方程短期,价值方程长期。

环境模型 – Model of the environment

环境模拟模型,模拟action作用之后环境返回的价值、激励以及状态的变化,模拟器中不需要,真实世界中有知道训练意义。

增强学习中的问题

  • 策略学习policy learning
    policy梯度学习
    (每一个策略的概率不同,好的策略概率大)
  • 价值、回报迭代学习
    确定方法:Q-learning;DQN,DQN扩展。
    (确定策略执行后得到回报的概率)
  • 环境模型学习
    知道此刻的状态以及行为(s,a)预测下一刻的状态以及回报,模拟真实的环境反馈。

Q-learning

  • 下一状态最大回报作为价值
    Q(st,at)=maxRt+1
  • 能够达到价值最大的行为作为策略
    π(s)=argmaxaQ(s,a)
  • 目标价值由当前回报和t+1时刻的价值
    Q(s,a)=r+γmaxaQ(s,a)

算法:

initialize Q[num_states, num_actions] arbitrarily
observe initial state s 
repeat
    select and carry out an action a 
    ovserve reward R and new state s'
    Q(s,a) = R(s,a)+r*max(Q(s',ai))
until terminated

Q-learning 实例

假设我们在建筑物中连接了5个房间,如下图所示。 我们将每个房间的号码从0到4编号。建筑物的外部可以被认为是一个大的房间(5)。 注意,门1和4可以从5室(外部)进入建筑物。

这里写图片描述

我们可以在图表上表示房间,每个房间作为一个节点,每个门作为一个链接。

这里写图片描述

对于这个例子,我们想把智能体放在任何房间里,从那个房间里到外面去(这将是我们的目标房间)。 换句话说,目标房间是第5号。为了将这个房间设定为目标,我们将把每个门的奖励值(即节点之间的链接)相关联。 直接导向目标的门立刻得到100,其他没有直接连接到目标房间的门没有奖励。 因为门是双向的(0可以到4,4也可以到0),每个房间分配两个箭头。 每个箭头包含即时奖励值,如下所示:

这里写图片描述

Q-Learning中包括术语“state”和“action”。

我们会称每个房间为“state”,智能体从一个房间到另一个房间的运动将是一个“action”。 在我们的图中,“state”被描绘为一个节点,而“action”由箭头表示。

我们可以将状态图和即时奖励值构成奖励表矩阵R,如下所示:

这里写图片描述

我们将首先设置学习参数 γ=0.8 的值,将初始状态设置为Room 1。
将矩阵Q初始化为零矩阵:

这里写图片描述

  • 假设:当前状态s:1,下一步随机到s:5。
    Q(1,
### 从人类反馈中学习的强化学习综述 强化学习(Reinforcement Learning, RL)是一种通过与环境交互来学习最优策略的方法。然而,传统强化学习方法通常依赖于明确的奖励函数设计,这在许多实际问题中可能难以实现。为了解决这一挑战,从人类反馈中学习的强化学习(Reinforcement Learning with Human Feedback, RLHF)逐渐成为研究热点[^2]。 #### 1. RLHF的核心概念 RLHF的核心思想是通过人类提供的反馈信号来指导智能体的学习过程。这种反馈可以以多种形式存在,例如直接奖励、偏好比较或演示数据。通过将这些反馈整合到强化学习框架中,模型能够更高效地学习复杂的任务,并减少对显式奖励函数的需求[^1]。 #### 2. RLHF的主要机制 RLHF通常包括以下关键步骤: - **反馈收集**:人类提供关于智能体行为的反馈,例如标记“好”或“坏”的动作。 - **奖励建模**:基于人类反馈构建一个奖励函数,用于引导智能体的学习。 - **策略优化**:利用更新后的奖励函数训练智能体的策略网络。 这种方法不仅提高了学习效率,还增强了模型决策的可解释性。 #### 3. 挑战与局限性 尽管RLHF具有显著优势,但也面临一些挑战和潜在风险: - **对抗性输入**:恶意行为者可能通过提供错误反馈干扰学习过程,这种现象被称为“RLHF trolling”[^2]。 - **过拟合与偏见**:如果反馈来自狭窄群体,模型可能会过度拟合特定偏好或表现出偏见[^2]。 - **标注成本**:高质量的人类反馈需要大量时间和资源,增加了实施难度。 #### 4. 替代方法:从AI反馈中学习 为克服上述局限性,研究者提出了从AI反馈中学习(Reinforcement Learning with AI Feedback, RLAIF)的方法。这种方法通过另一个大语言模型评估当前模型的行为,从而部分或完全替代人类反馈。虽然RLAIF仍处于早期阶段,但它为未来的发展提供了新的方向[^2]。 #### 5. 应用场景 RLHF已在多个领域展现出巨大潜力,例如自然语言处理、机器人控制和游戏AI等。特别是在对话系统中,通过结合人类反馈,模型能够生成更符合用户期望的回复。 ```python # 示例代码:基于人类反馈的奖励建模 def reward_modeling(human_feedback): # 假设human_feedback是一个二元标签列表 rewards = [] for feedback in human_feedback: if feedback == "positive": rewards.append(1.0) elif feedback == "negative": rewards.append(-1.0) else: rewards.append(0.0) return rewards ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值