【大模型学习】第十八章 强化学习介绍

目录

引言

一、 强化学习的理论基础与发展脉络

1.1 基本概念与核心要素

1.2 历史演进与里程碑

二、 强化学习的数学框架与核心算法

2.1 马尔可夫决策过程与贝尔曼方程

2.2 基于价值的算法

2.3 基于策略的算法

2.4 混合算法:Actor-Critic架构

2.5 应用举例

生活例子:每日健身计划

示例代码:

三、技术突破与前沿方向

3.1 多智能体强化学习(MARL)

3.2 分层强化学习(HRL)

3.3 基于模型的强化学习(MBRL)

四、一个生活例子让你快速理解什么是强化学习

4‌.1 背景设定‌

4‌.2 强化学习要素拆解‌

4‌.3 学习过程全记录‌

4‌.4 技术机制类比‌

4‌.5 进阶挑战与突破‌


引言

        在人工智能的发展历程中,强化学习(Reinforcement Learning, RL)因其独特的“试错学习”机制,成为实现自主决策的核心技术。从AlphaGo击败人类围棋冠军到特斯拉自动驾驶系统的持续进化,强化学习不断突破机器智能的边界。本文将系统解析强化学习的理论框架、核心算法、技术突破及实际应用。

一、 强化学习的理论基础与发展脉络

1.1 基本概念与核心要素

强化学习的本质是智能体(Agent)通过与环境的交互,学习最大化累积奖励的策略。其数学框架基于‌马尔可夫决策过程(Markov Decision Process, MDP)‌,包含五个核心要素:

  • 状态空间(S)‌:环境所有可能情况的集合,如围棋棋盘的所有落子组合。
  • 动作空间(A)‌:智能体可执行的操作集合,例如机器人的移动方向。
  • 状态转移概率(P)‌:描述在状态ss执行动作aa后转移到状态s′s′的概率,即P(s′∣s,a)。
  • 奖励函数(R)‌:环境对智能体动作的反馈信号,如游戏得分增减。
  • 折扣因子(γ)‌:平衡当前奖励与未来奖励的系数(0≤γ≤10≤γ≤1)。
1.2 历史演进与里程碑
  • 1950年代‌:Richard Bellman提出动态规划,奠定价值迭代的理论基础。
  • 1988年‌:Sutton提出时序差分学习(TD Learning),解决无需环境模型的预测问题。
  • 1992年‌:Watson的Q-learning算法实现无模型控制,成为经典算法。
  • 2013年‌:DeepMind将深度神经网络与Q-learning结合,提出DQN算法,在Atari游戏中超越人类水平。
  • 2016年‌:AlphaGo结合蒙特卡洛树搜索与策略网络,战胜围棋世界冠军李世石。
  • 2022年‌:OpenAI的ChatGPT利用RLHF(基于人类反馈的强化学习)实现对话质量的飞跃。

二、 强化学习的数学框架与核心算法

2.1 马尔可夫决策过程与贝尔曼方程

MDP的核心假设是“未来仅取决于当前状态”(马尔可夫性)。通过定义‌状态价值函数V(s)V(s)‌和‌动作价值函数Q(s,a)Q(s,a)‌,贝尔曼方程揭示了最优策略的递归结构:

2.2 基于价值的算法

Q-learning‌:通过更新动作价值表逼近最优策略:

深度Q网络(DQN)‌的创新:

  • 经验回放‌:打破数据相关性,提高样本利用率。
  • 目标网络‌:固定参数的网络用于计算目标Q值,稳定训练过程。
  • 双DQN‌:解耦动作选择与价值评估,解决Q值高估问题。
2.3 基于策略的算法

策略梯度(Policy Gradient)‌直接优化策略函数πθ(a∣s)πθ​(a∣s),其梯度公式为:

PPO(Proximal Policy Optimization)‌通过裁剪重要性采样权重,确保更新稳定性:

2.4 混合算法:Actor-Critic架构
  • Actor‌:策略网络πθ(a∣s)生成动作。
  • Critic‌:价值网络Vϕ(s)评估状态优劣。
  • 优势函数‌:A(s,a)=Q(s,a)−V(s),衡量动作的相对价值。
    A3C(Asynchronous Advantage Actor-Critic)‌通过分布式异步训练加速收敛,成为早期深度RL的标杆算法。
2.5 应用举例

生活例子:每日健身计划

一个人决定是否每天去健身房锻炼。这个决策可以被建模为一个马尔可夫决策过程(MDP),其中状态表示当前的身体健康状况,动作是选择去或不去健身房,奖励则根据健身后的身体状态变化来确定。

  • 状态(S):身体健康状态,可以用几个离散级别来表示,比如“差”、“中等”、“好”。
  • 动作(A):去健身房或者不去健身房。
  • 转移概率(P):基于当前状态和所选动作,下一个状态的概率分布。例如,如果当前健康状态是“差”,并且选择了去健身房,那么下一天变为“中等”的概率可能会较高。
  • 奖励(R):与状态相关联的即时奖励。例如,“好”状态可能得到较高的奖励值,因为这意味着更高的健康水平。
  • 折扣因子(γ):用来计算未来奖励的现值,通常设置在0到1之间。
  • 示例代码:

以下是一个简化版的Q-learning算法示例,用于模拟个人健身计划的选择过程。我们将使用Python实现,并假设有一个简单的环境模型。

import numpy as np# 假设我们有3种健康状态: 差, 中等, 好
num_states = 3
# 动作有两个: 不去健身房(0), 去健身房(1)
num_actions = 2# 初始化Q表
Q = np.zeros([num_states, num_actions])# 学习参数
alpha = 0.1  # 学习率
gamma = 0.9  # 折扣因子
epsilon = 0.1  # 探索概率# 模拟的环境反馈 (reward) 和状态转移
rewards = np.array([[-1, -5],  # 当前状态为差时,不去健身房(-1),去健身房(-5)[0, -2],   # 当前状态为中等时,不去健身房(0),去健身房(-2)[1, 0]     # 当前状态为好时,不去健身房(1),去健身房(0)
])# 状态转移概率(这里简化为确定性转移)
next_state = {0: {0: 0, 1: 1},  # 如果状态为差,不去健身房保持不变,去健身房转为中等1: {0: 0, 1: 2},  // 如果状态为中等,不去健身房退步为差,去健身房进步为好2: {0: 1, 1: 2}   // 如果状态为好,不去健身房退步为中等,去健身房保持不变
}# Q-learning循环
for episode in range(1000):state = np.random.randint(0, num_states)  # 随机初始状态done = Falsewhile not done:if np.random.rand() < epsilon:action = np.random.randint(0, num_actions)  # 探索else:action = np.argmax(Q[state, :])  # 利用next_s = next_state[state][action]reward = rewards[state, action]# 更新Q表Q[state, action] += alpha * (reward + gamma * np.max(Q[next_s, :]) - Q[state, action])state = next_s# 在这个简化环境中,我们没有真正的终止条件,因此每次都循环直到达到最大迭代次数done = True  # 这里只是为了演示目的而提前结束print("Learned Q-values:")
print(Q)

三、技术突破与前沿方向

3.1 多智能体强化学习(MARL)

在竞争或协作场景中,多个智能体需平衡个体与集体利益:

  • 博弈论融合‌:Meta的CICERO模型在《外交》游戏中实现人类级谈判能力,结合自然语言理解与纳什均衡策略。
  • 集中训练分散执行(CTDE)‌:如MADDPG算法,训练时共享信息,执行时仅依赖局部观测。
3.2 分层强化学习(HRL)

通过时间抽象分解复杂任务:

  • Option框架‌:将动作扩展为可重复使用的子策略(Option),如“开门”包含移动、抓握、旋转等原子动作。
  • HIRO算法‌:通过元控制器协调底层策略,在机器人导航任务中提升效率。
3.3 基于模型的强化学习(MBRL)

构建环境动力学模型以提升样本效率:

  • World Models‌:Ha等人训练RNN预测未来状态,在赛车游戏中实现超人类表现。
  • MuZero‌:结合蒙特卡洛树搜索与隐空间模型,无需预先规则即可掌握围棋、国际象棋等游戏。

四、一个生活例子让你快速理解什么是强化学习

4‌.1 背景设定

你购买了一台具备强化学习功能的咖啡机,希望它能根据你的起床习惯自动优化煮咖啡时间。但机器初始没有任何用户数据,需要通过每日互动逐步进化。

4‌.2 强化学习要素拆解

强化学习术语咖啡机场景映射
智能体咖啡机的控制系统
环境家庭卧室(包含闹钟、人体传感器等)
状态 (State)时间/光照强度/闹钟响铃次数/用户移动轨迹
动作 (Action)提前0-60分钟开始煮咖啡(离散动作空间)
奖励 (Reward)用户起床后5分钟内喝到温咖啡=+1,否则=0

4‌.3 学习过程全记录

第一周:混沌探索期

  • Day1‌ 6:30煮咖啡 → 你7:15起床 → 咖啡已凉(奖励0)
  • Day3‌ 7:00煮咖啡 → 你赖床到7:20 → 咖啡温度适宜(奖励+1)
  • Day5‌ 6:00煮咖啡 → 保温过久风味变差 → 你倒掉咖啡(奖励-0.5)

策略变化‌:开始关联「光照强度增强+闹钟第二次响铃」作为关键状态特征

第二周:模式初现阶段

  • Day8‌ 检测到你翻身频率增加 → 提前10分钟启动研磨
  • Day10‌ 暴雨导致房间昏暗 → 延迟煮咖啡时间避免冷却
  • Day14‌ 学习到周末比工作日平均晚起47分钟 → 自动区分日期类型

第三月:大师级服务

  • 结合天气预报:降温天气提前2分钟/℃调整加热时长
  • 识别加班晚睡:通过前夜手机充电时间延迟服务
  • 应急策略:检测到清晨紧急会议通知 → 触发浓缩咖啡模式

4‌.4 技术机制类比

算法特性咖啡机实现方式
ε-greedy策略每周三随机尝试新煮法(探索)
经验回放存储过去30天数据夜间复盘
Q-table更新建立「光照+声音→最佳提前时间」映射表
策略蒸馏将学习成果固化为快速响应规则

4‌.5 进阶挑战与突破

  • 多目标优化‌:

    • 在「最佳口感温度(65℃)」和「节能」间平衡 → 引入帕累托前沿算法
    • 当你开始健身,咖啡因需求变化 → 动态调整浓度权重
  • 迁移学习‌:

    • 搬家到新时区后,3天内重建作息模型 → 继承原有特征提取器
    • 临时访客模式 → 快速克隆你的偏好策略
  • 元学习‌:

    • 预测节假日作息突变 → 通过历史元旦/春节数据预调整‌

这个看似简单的家电,本质上构建了一个‌微型社会系统‌:

  • 通过300次晨间互动,机器比你更懂你的生物钟波动
  • 在你不自觉调整起床时间时,它能通过咖啡香气反向引导你的行为
  • 最终形成双向适应:你开始依赖咖啡机的「推荐起床时间」

正如AlphaGo改变人类对围棋的理解,这台咖啡机正在重新定义「人机共生」的晨间仪式——‌强化学习不仅是机器的进化,更是人类生活模式的静默革命‌。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/33158.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Chatbox通过百炼调用DeepSeek

解决方案链接&#xff1a;评测&#xff5c;零门槛&#xff0c;即刻拥有DeepSeek-R1满血版 方案概览 本方案以 DeepSeek-R1 满血版为例进行演示&#xff0c;通过百炼模型服务进行 DeepSeek 开源模型调用&#xff0c;可以根据实际需求选择其他参数规模的 DeepSeek 模型。百炼平台…

网络安全设备系统集成方案 系统集成和网络安全

一、网络安全概述 计算机网络安全是指计算机、网络系统的硬件、软件以及系统中的数据受到保护&#xff0c;不因偶然的或恶意的原因而遭到破坏、更改、泄露&#xff0c;确保系统能连续和可靠地运行&#xff0c;使网络服务不中断。广义地说&#xff0c;凡是涉及网络上信息的保密…

【菜鸟飞】通过vsCode用python访问公网deepseek-r1等模型(Tocken模式)

目标 通过vsCode用python访问deepseek。 环境准备 没有环境的&#xff0c;vscode环境准备请参考之前的文章&#xff0c;另外需安装ollama&#xff1a; 【菜鸟飞】用vsCode搭建python运行环境-CSDN博客 AI入门1&#xff1a;AI模型管家婆ollama的安装和使用-CSDN博客 选读文章…

C# Unity 唐老狮 No.9 模拟面试题

本文章不作任何商业用途 仅作学习与交流 安利唐老狮与其他老师合作的网站,内有大量免费资源和优质付费资源,我入门就是看唐老师的课程 打好坚实的基础非常非常重要: Unity课程 - 游习堂 - 唐老狮创立的游戏开发在线学习平台 - Powered By EduSoho 如果你发现了文章内特殊的字体…

【2025最新】phpMyAdmin渗透利用全链路:信息收集→漏洞探测→后渗透提权技巧

目录 一、信息收集与漏洞探测 1. 获取关键信息 2. 权限验证 3. 漏洞扫描 二、历史漏洞利用方法 1. 写入 Webshell 到了这个地步密码探索 2. 远程代码执行&#xff08;RCE&#xff09; 3. 提权与后渗透 4. 文件包含漏洞 三、高危历史漏洞列表 四、防御与加固建议 五…

泰山派开发之—Ubuntu24.04下Linux开发环境搭建

简介 最近翻到了吃灰已久的泰山派&#xff0c;是刚出来的时候用优惠券买的&#xff0c;当时价格挺便宜的&#xff0c;最近给它翻出来了&#xff0c;打算试试做个项目。买的泰山派容量是2G16G&#xff0c;SOC芯片使用的是RK3566&#xff0c;搭载1TOP算力的NPU&#xff0c;并且具…

05延迟任务精准发布文章(redis实现延迟任务、分布式锁)

上架不代表发布(需要发布app端才会显示文章&#xff09; 1)文章定时发布 2)延迟任务概述 2.1)什么是延迟任务 定时任务&#xff1a;有固定周期的&#xff0c;有明确的触发时间 延迟队列&#xff1a;没有固定的开始时间&#xff0c;它常常是由一个事件触发的&#xff0c;而在…

linux 命令 ls

ls 是 Linux 系统中用于列出目录内容的核心命令&#xff0c;几乎所有日常操作都会用到。以下是其详细用法和常见场景说明 1. 基础语法 ls [选项] [目录/文件] 不指定目录时&#xff0c;默认列出当前目录的内容。 可以指定文件或目录路径&#xff0c;支持通配符&#xff08;如…

c++介绍函数指针 十

指针代表内存中地址标识符&#xff0c;变量&#xff0c;数组都是存储内存中的数据。所以可以获得它们的地址&#xff0c;用指针来表示这块内存。 如图输出内存中的地址。 对于一个函数来说&#xff0c;也是内存中存储这段数据&#xff0c;所以我们也可以获取函数的地址。 函数…

艾尔登复刻Ep1——客户端制作、场景切换、网络控制

需要添加的插件内容 Netcode for GameObjects&#xff1a;是一个为 Unity 游戏开发提供高级网络功能的 SDK。它的主要作用是允许开发者在其 GameObject 和 MonoBehaviour 工作流中集成网络功能&#xff0c;并且可以与多种底层传输层协议兼容。 具体内容请看&#xff1a;https:…

WPS的Excel文档如何利用VB脚本批量替换超链接的内容

准备知识 关于WPS的Excel点击单元格打开别的文档的两种方法的探究【为单元格添加超链接】 https://blog.csdn.net/wenhao_ir/article/details/146212767 激活WPS的Excel文档中的VB编辑器功能 没有激活前的截图如下: 原因是我们的电脑中缺乏VBA插件,我们点击“开发工具”:…

Houdini学习笔记

1. Houdini中一次只能显示一个物体 如果要都显示 需要 merge 节点 粉色的是 以参考显示 2.对任意一个节点按F1 可以弹出houdini官方文档 3. 恢复视角 Space H,居中 Space G 居中选中物体

基于SpringBoot实现旅游酒店平台功能十一

一、前言介绍&#xff1a; 1.1 项目摘要 随着社会的快速发展和人民生活水平的不断提高&#xff0c;旅游已经成为人们休闲娱乐的重要方式之一。人们越来越注重生活的品质和精神文化的追求&#xff0c;旅游需求呈现出爆发式增长。这种增长不仅体现在旅游人数的增加上&#xff0…

【一次成功】Win10本地化单机部署k8s v1.31.2版本及可视化看板

【一次成功】Win10本地化单机部署k8s v1.31.2版本及可视化看板 零、安装清单一、安装Docker Desktop软件1.1 安装前<启用或关闭Windows功能> 中的描红的三项1.2 查看软件版本1.3 配置Docker镜像 二、更新装Docker Desktop三、安装 k8s3.1 点击启动安装3.2 查看状态3.3 查…

网络安全之数据加密(DES、AES、RSA、MD5)

刚到公司时&#xff0c;我的工作就是为app端提供相应的接口。之前app使用的是PHP接口&#xff0c;对数据加密方面做得比较少。到使用java接口时&#xff0c;老大开始让我们使用DES加密&#xff0c;进行数据传输&#xff0c;但是后来觉得DES是对称加密&#xff0c;密钥存在客户端…

深度学习知识:softlabel策略

目录 一、hard label和soft label之间的关系 二、如何得到soft label 1. 回归任务&#xff1a;使用离散化方法生成软标签 PS: Soft 标签的定义规则 2. ​分类任务&#xff1a;使用 Label Smoothing 或 Knowledge Distillation 方法1&#xff1a;Label Smoothing PS: 用 …

自然语言处理:文本聚类

介绍 大家好&#xff0c;博主又来和大家分享自然语言处理领域的知识了。今天给大家分享的内容是自然语言处理中的文本聚类。 文本聚类在自然语言处理领域占据着重要地位&#xff0c;它能将大量无序的文本按照内容的相似性自动划分成不同的类别&#xff0c;极大地提高了文本处…

Python----计算机视觉处理(opencv:像素,RGB颜色,图像的存储,opencv安装,代码展示)

一、计算机眼中的图像 像素 像素是图像的基本单元&#xff0c;每个像素存储着图像的颜色、亮度和其他特征。一系列像素组合到一起就形成 了完整的图像&#xff0c;在计算机中&#xff0c;图像以像素的形式存在并采用二进制格式进行存储。根据图像的颜色不 同&#xff0c;每个像…

Spring Boot(十六):使用 Jenkins 部署 Spring Boot

Jenkins 是 Devops 神器&#xff0c;本篇文章介绍如何安装和使用 Jenkins 部署 Spring Boot 项目 Jenkins 搭建、部署分为四个步骤&#xff1b; 第一步&#xff0c;Jenkins 安装 第二步&#xff0c;插件安装和配置 第三步&#xff0c;Push SSH 第四步&#xff0c;部署项目 第…

【Linux 指北】常用 Linux 指令汇总

第一章、常用基本指令 # 注意&#xff1a; # #表示管理员 # $表示普通用户 [rootlocalhost Practice]# 说明此处表示管理员01. ls 指令 语法&#xff1a; ls [选项][目录或文件] 功能&#xff1a;对于目录&#xff0c;该命令列出该目录下的所有子目录与文件。对于文件&#xf…