60、深度强化学习的应用与进展

深度强化学习的应用与进展

1. 价值网络与蒙特卡罗树搜索

1.1 价值网络

价值网络是一种卷积神经网络,它以网络状态作为输入,输出范围在 [-1, +1] 内的预测分数,其中 +1 表示完美概率为 1。输出是下一玩家(无论黑白)的预测分数,因此输入会以“玩家”或“对手”而非“白”或“黑”来编码棋子“颜色”。

价值网络架构与策略网络相似,但输入和输出有所不同。输入包含一个额外特征,用于指示下一玩家是白还是黑。分数通过最后一个 tanh 单元计算得出,所以值在 [-1, +1] 范围内。价值网络的早期卷积层与策略网络相同,但在第 12 层增加了一个卷积层。最后一个卷积层之后是一个具有 256 个单元和 ReLU 激活函数的全连接层。

训练网络时,可使用围棋数据集的位置信息,但更好的选择是使用 SL - 策略和 RL - 策略网络进行自我对弈来生成数据集,直至得出最终结果。状态 - 结果对用于训练卷积神经网络。由于单局游戏中的位置相互关联,按顺序使用它们进行训练会导致过拟合。因此,为防止因密切相关的训练示例导致过拟合,需从不同游戏中采样位置,每个训练示例都来自一场独特的自我对弈游戏。

1.2 蒙特卡罗树搜索

蒙特卡罗树搜索使用了方程 9.27 的简化变体进行探索,相当于在每个节点 s 处设置 (K = 1 / \sqrt{\sum_{b} N(s, b)})。在 AlphaGo 中,结合了两种方法。首先,从叶节点进行快速蒙特卡罗模拟以创建评估 (e_1)。虽然可以使用策略网络进行模拟,但 AlphaGo 训练了一个简化的 softmax 分类器,结合人类游戏数据库和一些手工特征以提高模拟速度。其次,价值网络对叶节点进行单独评估 (e_2)。最终评估 (e) 是这两个评估的凸组合,即 (e = \beta e_1 + (1 - \beta) e_2),其中 (\beta = 0.5) 时性能最佳,不过仅使用价值网络也能提供相近的性能。蒙特卡罗树搜索中访问次数最多的分支被报告为预测移动。

2. Alpha Zero:零人类知识的增强

2.1 架构与损失函数

AlphaGo Zero 去除了对人类专家走法(或 SL - 网络)的需求。它使用单个网络输出策略(即动作概率)(p(s, a)) 和位置价值 (v(s))。输出策略概率的交叉熵损失和价值输出的平方损失相加,形成单一损失。

2.2 训练过程

与原始版本的 AlphaGo 仅使用蒙特卡罗树搜索从训练好的网络进行推理不同,零知识版本还使用蒙特卡罗树搜索中的访问次数进行训练。树搜索中每个分支的访问次数可视为对 (p(s, a)) 的策略改进算子。蒙特卡罗树搜索中棋盘状态 s 下动作 a 的预测概率为 (\pi(s, a) \propto N(s, a)^{1 / \tau}),其中 (\tau) 是温度参数。(N(s, a)) 的值使用与 AlphaGo 类似的蒙特卡罗搜索算法计算,神经网络输出的先验概率 (p(s, a)) 用于计算方程 9.27,方程 9.27 中 (Q(s, a)) 的值设置为从状态 s 到达的新创建叶节点 (s’) 的神经网络平均输出值 (v(s’))。

在每个状态 s,通过从状态 s 反复运行蒙特卡罗树搜索程序来更新概率 (\pi(s, a))、值 (Q(s, a)) 和访问次数 (N(s, a))。使用上一次迭代的神经网络根据方程 9.27 选择分支,直到到达树中不存在的状态或终端状态。对于每个不存在的状态,在树中添加一个新叶节点,其 Q 值和访问值初始化为零。根据神经网络对叶节点的评估(或终端状态的游戏规则)更新从 s 到叶节点路径上所有边的 Q 值和访问次数。

多次从节点 s 进行搜索后,使用后验概率 (\pi(s, a)) 采样一个动作进行自我对弈,到达下一个节点 (s’)。在节点 (s’) 重复上述整个过程,递归获得下一个位置 (s’‘)。游戏递归进行直到结束,游戏路径上均匀采样的状态 s 的最终值从 {-1, +1} 中选取,作为真实值 (z(s))。神经网络的损失函数为:
[L = [v(s) - z(s)]^2 - \sum_{a} \pi(s, a) \log[p(s, a)] + \lambda ||W||^2]
其中 (\lambda > 0) 是正则化参数。

2.3 性能表现

Alpha Zero 可以玩多种游戏,如围棋、将棋和国际象棋。它轻松击败了最佳国际象棋软件 Stockfish 和最佳将棋软件 Elmo。在国际象棋中的胜利尤其出乎大多数顶级棋手的意料,因为人们一直认为国际象棋需要太多领域知识,强化学习系统难以战胜具有手工评估的系统。

AlphaGo 在与各种计算机和人类对手的对战中表现出色。在与各种计算机对手的 495 场比赛中,它赢了 494 场。即使在让对手 4 颗自由棋子的情况下,它与 Crazy Stone、Zen 和 Pachi 软件对战的胜率分别为 77%、86% 和 99%。它还击败了多位著名人类对手,如欧洲冠军、世界冠军和排名第一的棋手。在一些比赛中,AlphaGo 做出了许多非常规且出色的非正统走法,这些走法有时只有在程序获胜后才变得合理。Alpha Zero 在国际象棋中也经常做出物质牺牲,以逐步改善自己的位置并限制对手,它能够自行发现大多数著名的国际象棋开局,并对哪些开局“更好”有自己的看法。

3. 自我学习机器人

3.1 机器人学习的特点

自我学习机器人是人工智能的重要前沿领域,可通过奖励驱动的方法训练机器人执行各种任务,如移动、机械维修或物体检索。以机器人移动为例,虽然机器人在物理上具备移动能力,但要学会精确的移动选择以保持平衡并从 A 点移动到 B 点并非易事。对于双足机器人来说,错误的关节运动选择很容易导致其摔倒,当遇到不确定地形和障碍物时,问题会变得更加困难。

这种问题自然适合强化学习,因为判断机器人是否正确行走很容易,但难以指定机器人在每种可能情况下应采取的精确规则。在强化学习的奖励驱动方法中,机器人每次在从 A 点到 B 点的移动中取得进展时都会获得(虚拟)奖励。否则,机器人可以自由采取任何行动,并且不会预先训练它关于有助于保持平衡和行走的特定行动选择的知识。这是强化学习的经典示例,因为机器人现在需要学习特定的行动序列以获得目标驱动的奖励。

3.2 深度学习的应用案例

3.2.1 移动技能的深度学习

在这个案例中,使用 MuJoCo 物理引擎模拟虚拟机器人来教授移动技能。MuJoCo 是一个旨在促进机器人、生物力学、图形和动画研究与开发的物理引擎,无需构建实际机器人即可进行快速准确的模拟。使用了人形和四足机器人,人形模型有 33 个状态维度和 10 个驱动自由度,四足模型有 29 个状态维度和 8 个驱动自由度。

模型因向前移动而获得奖励,但当机器人的质心低于某一点时,回合结束。机器人的动作由关节扭矩控制,机器人可以获取许多特征,如障碍物位置、关节位置和角度等传感器信息。这些特征被输入到两个神经网络中,一个用于价值估计,另一个用于策略估计,采用策略梯度方法,其中价值网络用于估计优势,这是一种演员 - 评论家方法。

使用了一个具有三个隐藏层(分别有 100、50 和 25 个 tanh 单元)的前馈神经网络。该方法需要同时估计策略函数和价值函数,隐藏层使用相同的架构,但价值估计器只需一个输出,而策略估计器的输出数量与动作数量相同。因此,两种架构的主要区别在于输出层和损失函数的设计。结合使用了广义优势估计器(GAE)和基于信任的策略优化(TRPO)。经过 1000 次强化学习迭代训练后,机器人学会了以美观的步态行走。

3.2.2 视觉运动技能的深度学习

在这个案例中,训练机器人完成一些家庭任务,如将衣架挂在架子上、将积木插入形状分类立方体、用各种抓握方式将玩具锤子的爪子放在钉子下以及拧紧瓶子的盖子。动作是 7 维关节电机扭矩命令,每个动作需要一系列命令才能最佳地完成任务。使用实际的物理机器人模型进行训练,机器人使用相机图像来定位和操作物体。相机图像可视为机器人的眼睛,机器人使用的卷积神经网络基于与视觉皮层相同的概念原理工作。

使用卷积神经网络将图像帧映射到动作。卷积神经网络有 7 层和 92,000 个参数。前三层是卷积层,第四层是空间 softmax,第五层是从空间特征图到简洁的二维坐标集的固定变换。通过对空间特征图的响应应用 softmax 函数,得到特征图中每个位置的概率,使用该概率分布的期望位置得到二维坐标,即特征点。空间特征点与机器人配置信息拼接后,输入到两个具有 40 个整流单元的全连接层,然后线性连接到扭矩。该方法将强化学习问题转化为监督学习,使用了一种引导策略搜索方法,将部分强化学习问题转化为监督学习。

4. 构建对话系统:聊天机器人的深度学习

4.1 聊天机器人概述

聊天机器人也称为对话系统,其最终目标是构建一个能够自然地与人类就各种话题自由对话的智能体。目前距离实现这一目标还很遥远,但在为特定领域和特定应用(如谈判或购物助手)构建聊天机器人方面已取得显著进展。例如,苹果的 Siri 是一个相对通用的数字个人助理,可视为开放域系统,但它有时无法对难题提供满意的回答,一些常见问题的搞笑回答是硬编码的。相比之下,封闭域系统有特定的任务,因此更容易进行可靠的训练。

4.2 Facebook 的谈判技能学习系统

Facebook 构建了一个用于端到端学习谈判技能的系统,这是一个封闭域系统,用于特定的谈判任务。测试床中,两个智能体面对不同类型的物品集合(如两本书、一顶帽子、三个球),需要通过谈判分割这些物品。关键在于每种物品对两个智能体的价值不同,且它们不知道对方对物品的价值评估。

物品价值非负且在一定约束下随机生成:每个用户的所有物品总价值为 10;每个物品至少对一个用户有非零价值;有些物品对两个用户都有非零价值。这确保了谈判过程具有竞争性,因为两个用户不可能都获得 10 分的最大分数。经过 10 轮谈判后,智能体可以选择不达成协议,此时双方得分为 0 分。

强化学习的奖励函数是用户获得的物品最终价值。为了最大化话语的可能性,可以对以前的对话进行监督学习,但直接使用循环网络最大化话语可能性会导致智能体过于急于妥协。因此,该方法将监督学习与强化学习相结合,引入了一种名为对话滚动的对话规划形式。采用编码器 - 解码器循环架构,其中解码器最大化奖励函数而非话语的可能性。

为了便于监督学习,从 Amazon Mechanical Turk 收集了对话数据。共收集了 5808 个对话,涵盖 2236 个独特场景,其中 252 个场景(对应 526 个对话)作为验证集。每个场景会产生两个训练示例,分别从每个智能体的角度得出。

监督学习过程使用了四个不同的门控循环单元(GRU):第一个 GRU (GRU_g) 对输入目标进行编码,第二个 GRU (GRU_q) 生成对话中的术语,一个前向输出 GRU (GRU_{\vec{o}}) 和一个后向输出 GRU (GRU_{\overleftarrow{o}}),输出本质上由双向 GRU 产生。在监督学习方法中,使用训练数据中的输入、对话和输出来训练参数,监督模型的损失是对话的标记预测损失和物品输出选择预测损失的加权和。

在强化学习中,使用对话滚动。监督模型中的 GRU 组合本质上提供概率输出,因此只需更改损失函数,就可以将相同的模型用于强化学习。可以使用这个策略网络生成各种对话的蒙特卡罗滚动及其最终奖励。每个采样动作都成为训练数据的一部分,并与滚动的最终奖励相关联。该方法使用自我对弈,智能体与自己谈判以学习更好的策略,滚动获得的最终奖励用于更新策略网络参数。

最终预测时,不直接从 GRU 输出的概率中采样,而是采用两阶段方法。首先,通过采样创建 c 个候选话语,计算每个候选话语的期望奖励,选择期望价值最大的那个。为了计算期望奖励,将输出乘以对话的概率,因为低概率对话不太可能被任何一方选择。

4.3 相关流程总结

以下是 Facebook 谈判技能学习系统的主要流程:
1. 数据收集 :从 Amazon Mechanical Turk 收集对话数据,涵盖多个独特场景。
2. 监督学习
- 使用四个 GRU 对输入目标、对话术语进行处理,输出由双向 GRU 产生。
- 训练参数,损失为对话标记预测损失和物品输出选择预测损失的加权和。
3. 强化学习
- 更改损失函数,将监督模型的 GRU 组合用于强化学习。
- 进行对话滚动,生成蒙特卡罗滚动及其最终奖励。
- 使用自我对弈更新策略网络参数。
4. 最终预测
- 创建 c 个候选话语。
- 计算期望奖励,选择期望价值最大的话语。

graph LR
    classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
    classDef decision fill:#FFF6CC,stroke:#FFBC52,stroke-width:2px

    A([开始]):::startend --> B(数据收集):::process
    B --> C(监督学习):::process
    C --> D(强化学习):::process
    D --> E(最终预测):::process
    E --> F([结束]):::startend

综上所述,深度强化学习在多个领域都有广泛的应用和显著的成果。在游戏领域,AlphaGo 和 Alpha Zero 展示了强大的学习和决策能力;在机器人领域,自我学习机器人能够通过强化学习掌握移动和视觉运动技能;在对话系统领域,结合监督学习和强化学习的方法有助于构建更智能的聊天机器人。随着技术的不断发展,深度强化学习有望在更多领域取得突破。

5. 各应用领域的对比分析

5.1 不同应用场景的特点总结

应用领域 特点 输入信息 输出结果 训练方式
游戏(AlphaGo、Alpha Zero) 需要考虑对手策略,规则明确,有明确的胜负判定 棋盘状态、棋子颜色等 预测移动、策略概率和位置价值 自我对弈生成数据集,结合蒙特卡罗树搜索进行训练
自我学习机器人 面临复杂环境,需要实时决策,动作空间连续 传感器信息(如障碍物位置、关节位置等) 关节扭矩命令 奖励驱动,使用策略梯度方法,结合广义优势估计器和信任 - 策略优化
聊天机器人 处理自然语言,语义理解复杂,需要考虑对话上下文 物品信息、物品价值、对话历史 候选话语、最终谈判结果 结合监督学习和强化学习,使用门控循环单元处理输入和输出

5.2 训练方式的差异与联系

不同应用领域在训练方式上既有差异又有联系,具体如下:
- 差异
- 游戏领域主要通过自我对弈生成大量数据,利用蒙特卡罗树搜索进行推理和训练,重点在于优化策略和价值估计。
- 自我学习机器人以奖励驱动,通过不断尝试不同动作获得奖励来学习,注重动作序列的优化和环境适应性。
- 聊天机器人结合监督学习和强化学习,利用收集的对话数据进行监督学习,再通过自我对弈和蒙特卡罗滚动进行强化学习,强调语义理解和对话策略的学习。
- 联系
- 都采用了神经网络进行模型构建,如卷积神经网络、循环神经网络等。
- 都利用了强化学习的基本思想,通过奖励机制引导模型学习最优策略。

6. 深度强化学习的发展趋势

6.1 技术融合趋势

深度强化学习将与其他技术进一步融合,例如:
- 与计算机视觉融合 :在自我学习机器人领域,结合计算机视觉技术可以让机器人更准确地感知环境,提高视觉运动技能的学习效果。例如,在机器人抓取物体任务中,通过计算机视觉识别物体的形状、位置和姿态,为强化学习提供更丰富的输入信息。
- 与自然语言处理融合 :在聊天机器人领域,融合自然语言处理技术可以提升语义理解和对话生成能力。例如,利用预训练的语言模型为强化学习提供更准确的语义表示,使聊天机器人能够更好地理解用户意图。

6.2 应用拓展趋势

深度强化学习的应用将不断拓展到更多领域,例如:
- 医疗领域 :可以用于优化医疗决策,如制定个性化的治疗方案。通过强化学习算法,根据患者的病情、病史和基因信息等,选择最优的治疗方法,提高治疗效果。
- 金融领域 :可用于投资决策和风险管理。通过学习市场动态和历史数据,强化学习模型可以预测股票价格走势,制定投资策略,降低投资风险。

6.3 发展趋势流程图

graph LR
    classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
    classDef decision fill:#FFF6CC,stroke:#FFBC52,stroke-width:2px

    A([深度强化学习]):::startend --> B(技术融合):::process
    A --> C(应用拓展):::process
    B --> B1(与计算机视觉融合):::process
    B --> B2(与自然语言处理融合):::process
    C --> C1(医疗领域):::process
    C --> C2(金融领域):::process

7. 总结与展望

7.1 主要成果总结

深度强化学习在多个领域取得了显著成果:
- 在游戏领域,AlphaGo 和 Alpha Zero 展示了强大的学习和决策能力,能够击败顶级人类选手和传统软件。
- 在自我学习机器人领域,机器人通过强化学习掌握了移动和视觉运动技能,能够在复杂环境中完成任务。
- 在聊天机器人领域,结合监督学习和强化学习的方法有助于构建更智能的对话系统,提高谈判和对话能力。

7.2 面临的挑战

尽管深度强化学习取得了很多进展,但仍面临一些挑战:
- 数据效率问题 :在一些应用中,需要大量的训练数据才能达到较好的效果,数据收集和处理成本较高。
- 可解释性问题 :深度强化学习模型通常是黑盒模型,难以解释其决策过程和结果,在一些对安全性和可靠性要求较高的领域应用受限。
- 环境适应性问题 :在复杂多变的环境中,模型的泛化能力和适应性有待提高。

7.3 未来展望

未来,随着技术的不断发展和创新,深度强化学习有望克服这些挑战,取得更大的突破:
- 提高数据效率,通过开发更高效的算法和技术,减少对大量数据的依赖。
- 增强模型的可解释性,开发可解释的强化学习模型,使模型的决策过程更加透明。
- 提升环境适应性,使模型能够在更复杂、不确定的环境中稳定运行。

总之,深度强化学习具有广阔的发展前景,将为人工智能领域带来更多的创新和变革。

【电能质量扰动】基于ML和DWT的电能质量扰动分类方法研究(Matlab实现)内容概要:本文研究了一种基于机器学习(ML)和离散小波变换(DWT)的电能质量扰动分类方法,并提供了Matlab实现方案。首先利用DWT对电能质量信号进行多尺度分解,提取信号的时频域特征,有效捕捉电压暂降、暂升、中断、谐波、闪变等常见扰动的关键信息;随后结合机器学习分类器(如SVM、BP神经网络等)对提取的特征进行训练分类,实现对不同类型扰动的自动识别准确区分。该方法充分发挥DWT在信号去噪特征提取方面的优势,结合ML强大的模式识别能力,提升了分类精度鲁棒性,具有较强的实用价值。; 适合人群:电气工程、自动化、电力系统及其自动化等相关专业的研究生、科研人员及从事电能质量监测分析的工程技术人员;具备一定的信号处理基础和Matlab编程能力者更佳。; 使用场景及目标:①应用于智能电网中的电能质量在线监测系统,实现扰动类型的自动识别;②作为高校或科研机构在信号处理、模式识别、电力系统分析等课程的教学案例或科研实验平台;③目标是提高电能质量扰动分类的准确性效率,为后续的电能治理设备保护提供决策依据。; 阅读建议:建议读者结合Matlab代码深入理解DWT的实现过程特征提取步骤,重点关注小波基选择、分解层数设定及特征向量构造对分类性能的影响,并尝试对比不同机器学习模型的分类效果,以全面掌握该方法的核心技术要点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值