news 2026/1/30 11:17:59

【2026】 LLM 大模型系统学习指南 (25)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【2026】 LLM 大模型系统学习指南 (25)

强化学习(RL)概述:和机器学习相通的 “三步学习法”

强化学习(Reinforcement Learning, RL)的核心是 “智能体在环境中试错学习”—— 通过与环境的持续互动,不断优化行为策略,最终找到能获得最大回报的行动方式。它和传统机器学习(监督 / 无监督)看似不同,但本质遵循完全一致的 “三步学习法”:定义模型(策略)→ 计算损失(回报)→ 优化更新(迭代),这一核心逻辑让 RL 的学习门槛大幅降低。

本文将从 “核心组件→三步学习法→实操落地” 层层拆解,用通俗类比和基础代码,帮你快速理解 RL 的本质,掌握入门关键。

一、RL 的核心组件:理解 “智能体与环境的互动游戏”

在 RL 中,所有学习过程都围绕 “智能体(Agent)与环境(Environment)的互动” 展开,核心组件可通过 “游戏玩家闯关” 的类比轻松理解:

组件通俗类比核心作用
智能体(Agent)游戏玩家做出决策(选动作)、接收反馈、更新策略
环境(Environment)游戏世界(如迷宫、关卡)接收智能体的动作,返回新状态和回报
状态(State, S)玩家当前位置 / 处境(如迷宫坐标)描述环境的当前情况,是智能体决策的依据
动作(Action, A)玩家的操作(如上下左右)智能体可执行的行为,会改变环境状态
回报(Reward, R)游戏得分(如吃到金币 + 10,掉坑 - 50)环境对动作的 “打分”,是学习的核心反馈信号
策略(Policy, π)玩家的闯关策略(如优先走右)状态到动作的映射,即 “在什么状态下选什么动作”
价值函数(Value Function, V)玩家对当前位置的 “价值判断”(如这里容易得分)评估状态的长期价值(未来能获得的总回报)

核心互动流程:智能体在状态 S 下,根据策略 π 选择动作 A → 环境接收 A 后,返回新状态 S' 和即时回报 R → 智能体根据 R 和 S' 更新策略 π → 重复这一循环,直到学习到最优策略。

二、RL 的 “三步学习法”:和机器学习的底层逻辑相通

无论是监督学习(如分类)、无监督学习(如聚类),还是 RL,核心都遵循 “定义模型→计算损失→优化更新” 的三步法。RL 的独特之处仅在于 “模型是策略、损失是回报偏差、优化是策略迭代”,具体对应如下:

第一步:定义模型 —— 策略(Policy):智能体 “怎么选动作”

对应传统机器学习的 “模型结构定义”(如 CNN、线性回归),RL 中 “模型” 就是策略 π—— 它规定了智能体在每个状态下如何选择动作。

两种常见策略类型:
  • 确定性策略:状态 S→固定动作 A(如 “迷宫中看到左边是墙就走右”);
  • 随机性策略:状态 S→动作概率分布(如 “迷宫中看到岔路,60% 走右、40% 走左”),更适合探索未知环境。
通俗例子:

迷宫寻宝游戏中,策略就是 “智能体在每个路口(状态)选择走哪条路(动作)的规则”。

代码表示(简单确定性策略):

python

运行

# 状态:迷宫坐标 (x, y),动作:0=上、1=下、2=左、3=右 def simple_policy(state): x, y = state # 策略:优先向宝藏方向(假设宝藏在(5,5))移动 if x < 5: return 1 # 向下 elif y < 5: return 3 # 向右 else: return 0 # 到达后停止

第二步:计算损失 —— 回报(Reward):判断 “动作好不好”

对应传统机器学习的 “计算损失函数”(如交叉熵、MSE),RL 中 “损失” 通过回报体现 —— 回报是环境对动作的反馈,核心是 “量化动作的好坏”。

核心逻辑:
  • 即时回报(Immediate Reward):动作执行后立刻获得的反馈(如吃到金币 + 10,掉坑 - 50);
  • 累积回报(Cumulative Reward):当前动作带来的 “即时回报 + 未来所有回报的总和”,是策略优化的核心依据(比如 “眼前少吃 1 个金币,但能通往更多金币区域,总回报更高”)。
累积回报计算公式(折扣回报):

Gt​=Rt​+γRt+1​+γ2Rt+2​+...

  • γ(折扣因子):0≤γ≤1,控制未来回报的权重(γ=0 只看即时回报,γ=1 重视未来回报);
  • 意义:让智能体 “有远见”,不局限于眼前利益。
通俗例子:

迷宫中,“走岔路 A” 即时回报 + 1(捡到小金币),但前方是死路;“走岔路 B” 即时回报 0,但前方有 100 金币。通过累积回报计算,智能体会选择岔路 B。

第三步:优化更新 —— 策略迭代:让智能体 “下次做得更好”

对应传统机器学习的 “反向传播优化参数”,RL 的 “优化” 就是更新策略—— 根据累积回报的反馈,调整智能体在不同状态下的动作选择,让 “好动作被更多选择,坏动作被避免”。

核心逻辑:
  • 若某个动作 A 在状态 S 下带来的累积回报 G 很高 → 提升策略中 “S→A” 的选择概率;
  • 若累积回报 G 很低 → 降低 “S→A” 的选择概率;
  • 重复迭代,直到策略稳定(智能体在大多数状态下都能选到最优动作)。
通俗例子:

迷宫中,智能体第一次走岔路 A 掉坑(回报 - 50)→ 下次再到该路口时,大幅降低走 A 的概率;走岔路 B 拿到 100 金币(回报 + 100)→ 下次优先选 B。

三、RL 与传统机器学习的核心区别:学习信号的来源不同

尽管都遵循 “三步法”,但 RL 与监督 / 无监督学习的核心差异在于 “学习信号的来源”,这也决定了它们的适用场景:

学习类型学习信号(反馈)核心特点适用场景
监督学习人工标注的 “正确答案”知道 “什么是对的”,直接学习映射关系图像分类、文本翻译
无监督学习数据本身的结构(如聚类)不知道 “正确答案”,挖掘数据内在规律异常检测、用户分群
强化学习环境反馈的 “回报信号”不知道 “正确答案”,通过试错知道 “好不好”游戏闯关、机器人控制、自动驾驶

关键结论:RL 的核心优势是 “无需人工标注”,仅通过环境回报就能自主学习,特别适合 “无法提前给出正确答案,但能判断动作好坏” 的场景。

四、实操落地:用 Q-Learning 实现 “CartPole 平衡”

我们用 OpenAI Gym 的 CartPole 环境(小车平衡杆),实现基础的 Q-Learning 算法,直观感受 RL 的 “三步学习法” 落地过程。

1. 环境说明:CartPole 任务

  • 目标:控制小车左右移动,让杆保持平衡不倒下;
  • 状态 S:4 维向量(小车位置、小车速度、杆的角度、杆的角速度);
  • 动作 A:2 种(0 = 向左移,1 = 向右移);
  • 回报 R:每保持平衡 1 步 + 1 分,杆倒下则游戏结束。

2. 完整代码(Python+OpenAI Gym)

python

运行

# 安装依赖 # pip install gym numpy import gym import numpy as np # ---------------------- 第一步:定义策略(Q表:状态→动作价值映射) ---------------------- # Q表:rows=状态离散化后的数量,cols=动作数量(2),存储每个(S,A)的价值 env = gym.make("CartPole-v1") state_space = 10 # 状态离散化(将4维连续状态转为10×10×10×10=10^4个离散状态) action_space = env.action_space.n # 动作数量:2 # 初始化Q表(随机值) def init_q_table(): return np.random.uniform(low=-1, high=1, size=(state_space, state_space, state_space, state_space, action_space)) q_table = init_q_table() # 状态离散化:将连续状态转为离散索引(方便Q表存储) def discretize_state(state): state_min = env.observation_space.low state_max = env.observation_space.high # 每个维度分10档,计算当前状态的档位索引 discrete_state = (state - state_min) / (state_max - state_min) * (state_space - 1) return tuple(discrete_state.astype(int)) # ---------------------- 第二步:计算回报(基于Q表的价值评估) ---------------------- # 探索与利用:初期多探索(随机选动作),后期多利用(选Q值最大的动作) epsilon = 1.0 # 探索率(1.0=全探索) epsilon_decay = 0.995 # 探索率衰减 gamma = 0.95 # 折扣因子(重视未来回报) def choose_action(state): discrete_s = discretize_state(state) # 探索:随机选动作 if np.random.uniform(0, 1) < epsilon: return env.action_space.sample() # 利用:选Q值最大的动作 else: return np.argmax(q_table[discrete_s]) # ---------------------- 第三步:更新策略(Q表迭代更新) ---------------------- learning_rate = 0.1 # 学习率(更新幅度) def update_q_table(state, action, reward, next_state, done): discrete_s = discretize_state(state) discrete_next_s = discretize_state(next_state) # Q表更新公式:基于当前回报和未来最大价值 current_q = q_table[discrete_s][action] # 若游戏结束,未来价值为0;否则取next_state的最大Q值 next_q = 0 if done else np.max(q_table[discrete_next_s]) new_q = current_q + learning_rate * (reward + gamma * next_q - current_q) # 更新Q表(策略优化) q_table[discrete_s][action] = new_q # ---------------------- 启动训练(迭代1000轮游戏) ---------------------- episodes = 1000 scores = [] # 记录每轮得分(保持平衡的步数) for episode in range(episodes): state = env.reset() # 重置环境,获取初始状态 done = False score = 0 while not done: # 1. 选动作(策略) action = choose_action(state) # 2. 执行动作,获取环境反馈(新状态、回报、是否结束) next_state, reward, done, _ = env.step(action) score += reward # 3. 更新Q表(策略优化) update_q_table(state, action, reward, next_state, done) # 更新状态 state = next_state # 探索率衰减(后期多利用) epsilon = max(0.01, epsilon * epsilon_decay) scores.append(score) # 每100轮打印进度 if (episode + 1) % 100 == 0: avg_score = np.mean(scores[-100:]) print(f"第{episode+1}轮 | 平均得分:{avg_score:.1f} | 探索率:{epsilon:.3f}") # 测试训练效果(可视化) env = gym.make("CartPole-v1", render_mode="human") state = env.reset() done = False while not done: action = np.argmax(q_table[discretize_state(state)]) # 全利用策略 state, _, done, _ = env.step(action) env.render() env.close()

3. 代码核心逻辑(对应三步学习法)

  • 第一步(策略):用 Q 表定义策略,通过 “探索 - 利用” 机制选择动作;
  • 第二步(回报):环境返回的即时回报(每步 + 1)+ 未来最大 Q 值(长期回报);
  • 第三步(更新):用 Q 表更新公式迭代优化,让 “好动作(保持平衡)的 Q 值越来越高”。

4. 预期效果

  • 训练初期:平均得分≤50(杆很快倒下);
  • 训练后期:平均得分≥150(杆能长时间保持平衡);
  • 测试阶段:智能体能稳定控制小车,杆不倒下。

五、RL 的核心特点与适用场景

1. 核心特点

  • 自主学习:无需人工标注,仅靠环境回报就能迭代优化;
  • 序贯决策:关注 “长期回报最大化”,而非单步最优(如迷宫中放弃眼前小金币,追求终点大宝藏);
  • 探索与利用权衡:初期探索未知动作,后期利用已知最优动作,平衡学习效率和效果。

2. 典型适用场景

  • 游戏 AI:如 AlphaGo 下围棋、游戏机器人闯关;
  • 机器人控制:如机械臂抓取、自动驾驶车辆避障;
  • 决策优化:如推荐系统动态调整推荐策略、金融交易策略优化;
  • 复杂任务规划:如无人机路径规划、物流调度优化。

六、总结:RL 学习的核心要点与入门建议

  1. 核心逻辑:RL 与传统机器学习共享 “三步学习法”——策略(模型)→ 回报(损失)→ 更新(优化),抓住这一点就能快速入门;
  2. 关键认知:RL 的核心是 “回报信号的设计” 和 “探索 - 利用的平衡”,这两点直接决定学习效果;
  3. 学习顺序:
    • 入门:先掌握核心组件和 Q-Learning(基础算法),用 CartPole 环境跑通代码;
    • 进阶:学习价值函数、策略梯度(PG)、DQN 等算法,逐步过渡到复杂环境;
    • 实操:优先使用 OpenAI Gym 环境,避免重复开发,聚焦算法逻辑。

RL 的本质是 “让智能体在互动中自主成长”,而 “三步学习法” 是贯穿始终的核心线索。掌握这一逻辑后,后续复杂算法的学习都会变得有章可循。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/30 11:59:23

HoRain云--Go语言结构体:从入门到精通

&#x1f3ac; HoRain云小助手&#xff1a;个人主页 &#x1f525; 个人专栏: 《Linux 系列教程》《c语言教程》 ⛺️生活的理想&#xff0c;就是为了理想的生活! ⛳️ 推荐 前些天发现了一个超棒的服务器购买网站&#xff0c;性价比超高&#xff0c;大内存超划算&#xff01;…

作者头像 李华
网站建设 2026/1/30 21:53:41

【含文档+PPT+源码】基于微信小程序的旅游论坛系统的设计与实现

项目介绍 本课程演示的是一款基于微信小程序的旅游论坛系统的设计与实现&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的 Java 学习者。 1.包含&#xff1a;项目源码、项目文档、数据库脚本、软件工具等所有资料 2.带你从零开始部署运行本套系统…

作者头像 李华
网站建设 2026/1/30 6:19:18

【科研绘图系列】R语言绘制图ggtree基因组数据可视化教程介绍

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍 数据预处理与基因组特征计算 复合图形构建:系统发育树与基因组特征整合 图形导出与出版准备 加载R包 数据下载 导入数据 数据预处理 画图 总结 系统信息 介绍 本教程展示了一套完…

作者头像 李华
网站建设 2026/1/30 7:45:44

花店管理系统(源码+数据库+文档)

花店管理 目录 基于springboot vue花店管理系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 基于springboot vue花店管理系统 一、前言 博主介绍&#xff1a;✌️大…

作者头像 李华
网站建设 2026/1/30 3:43:28

小心!你正在悄悄浪费企业“隐形资产”

翻开公司文件柜&#xff0c;那本红彤彤的软件著作权证书&#xff0c;是不是已经默默积灰许久&#xff1f;很多人以为它只是个“法律凭证”&#xff0c;申请完就完成了使命——如果你也这么想&#xff0c;可能正在错过让企业“增值”的最佳机会。在数字化竞争的时代&#xff0c;…

作者头像 李华