【机器学习】机器学习的基本分类-强化学习-Q-Learning

Q-Learning 的详细讲解

Q-Learning 是一种经典的强化学习算法,用于解决离散状态和动作空间的强化学习问题。其目标是找到一个最优策略,使智能体能够在与环境的交互中最大化累积奖励。


核心思想

通过迭代更新动作值函数 ,使其收敛到最优值 。最优值函数 满足 Bellman 最优方程:

这里:

  • :当前状态
  • :当前动作
  • :下一状态
  • :即时奖励
  • :折扣因子

智能体根据 构造策略 ,选择使 最大的动作。


算法步骤

  1. 初始化

    • 初始化 或随机值,表示每个状态-动作对的初始估计值。
    • 设置学习率 和折扣因子
  2. 循环更新(直到收敛或达到最大迭代次数)

    1. 从环境中获取当前状态

    2. 使用 探索与利用策略 选择动作

      • 探索:随机选择动作(以一定概率 )。
      • 利用:选择使 最大的动作。
    3. 执行动作 aaa,获得即时奖励 和下一状态

    4. 更新

    5. 将状态更新为 ,重复步骤 2。

  3. 输出最终策略


公式解释

  • 学习率 :决定新信息对更新的影响程度,取值范围为

    • :仅考虑最新经验,忽略历史信息。
    • :忽略最新经验,几乎不更新。
  • 折扣因子 :衡量未来奖励的重要性,取值范围为

    • :更加关注长期回报。
    • :只关心即时奖励。
  • 更新规则 :利用新的经验 修正当前 ,使其逐渐逼近真实值。


优缺点

优点
  1. 模型无关 :不需要知道环境的状态转移概率
  2. 简单直观:易于理解和实现。
  3. 保证收敛 :在有限状态和动作空间下,适当设置 时, 会收敛到
缺点
  1. 状态空间限制:难以扩展到连续或高维状态空间。
  2. 动作选择问题 :需要设计探索与利用的平衡机制(如 -贪婪策略)。
  3. 数据效率低:每次更新只基于一个样本。

举例说明

假设一个 3x3 的网格世界,智能体可以选择四个动作:向上、向下、向左、向右。目标是从左上角移动到右下角,获得最大的累积奖励。

  1. 初始化 :设置所有
  2. 运行算法 :智能体不断探索不同路径,基于即时奖励和折扣因子更新
  3. 收敛 :最终 收敛,智能体学会最佳策略,如"向右、向下"到达目标。

改进版本

1. SARSA(State-Action-Reward-State-Action)
  • 更新规则:

  • 与 Q-Learning 的区别:SARSA 在更新时使用智能体实际选择的动作 ,而不是使用最大化的

2. Deep Q-Learning (DQN)
  • 使用神经网络逼近 ,解决高维状态空间问题。
  • 引入 经验回放目标网络 提高稳定性。

应用场景

  1. 机器人路径规划:如迷宫求解、机器人避障。
  2. 游戏 AI:学习游戏中的最优策略。
  3. 推荐系统:优化用户推荐序列。
  4. 动态资源分配:如网络带宽、云计算资源分配。
相关推荐
MartinYeung51 分钟前
[论文学习]透过增强式 Few-Shot Learning 实现高效 PII 从大型语言模型中提取
人工智能·学习·语言模型
zyplayer-doc2 分钟前
新增AI智能助手菜单,支持PostgreSQL数据库,开放文档增加搜索选项,zyplayer-doc 2.6.4 发布啦!
人工智能·编辑器·创业创新
数据科学小丫3 分钟前
算法:随机森林算法
算法·随机森林·机器学习
传说故事4 分钟前
【论文阅读】WorldArena 2.0:扩展具身世界模型在模态性、功能性与平台上的基准测试
论文阅读·人工智能·具身智能·世界模型
薛定猫AI5 分钟前
【深度解析】ChatGPT vs Claude vs Gemini:2026年AI大模型选型全景对比
大数据·网络·人工智能
HIT_Weston6 分钟前
112、【Agent】【OpenCode】Skill 工具提示词
人工智能·agent·opencode
A小码哥7 分钟前
DeepSeek 大模型落地应用与场景探讨
人工智能
HIT_Weston8 分钟前
111、【Agent】【OpenCode】todowrite 工具提示词(完结)
人工智能·agent·opencode
亦暖筑序8 分钟前
Java 8老系统AI工具接入:API包装成受控工具,只读优先+权限拦截
java·人工智能·aigc·企业架构·mcp协议
2401_885665199 分钟前
从神经元到BP反向传播,零基础吃透神经网络底层原理
人工智能·python·深度学习·神经网络·opencv