该强化学习框架主要有以下特点:
可复现性保证。我们提供了高质量的主流强化学习算法实现,严格地复现了论文对应的指标。
大规模并行支持。框架最高可支持上万个CPU的同时并发计算,并且支持多GPU强化学习模型的训练。
可复用性强。用户无需自己重新实现算法,通过复用框架提供的算法可以轻松地把经典强化学习算法应用到具体的场景中。
良好扩展性。当用户想调研新的算法时,可以通过继承我们提供的基类可以快速实现自己的强化学习算法。
百度这次推出的强化学习7日训练营强化学习7日打卡营-世界冠军带你从零实践 - 飞桨AI Studio由百度NeurIPS全球顶会冠军团队亲自授课,
框架结构
PARL的目标是构建一个可以完整复杂任务的智能体。以下是用户在逐步构建一个智能体的过程中需要了解到的结构:
Model
Model 用来定义前向(Forward)网络,这通常是一个策略网络(Policy Network)或者一个值函数网络(Value Function),输入是当前环境状态(State)。
Algorithm
Algorithm 定义了具体的算法来更新前向网络(Model),也就是通过定义损失函数来更新Model。一个Algorithm包含至少一个Model。
Agent
Agent 负责算法与环境的交互,在交互过程中把生成的数据提供给Algorithm来更新模型(Model),数据的预处理流程也一般定义在这里。
2. CPU版本安装2.1 2.x版本安装首先在anaconda下创建虚拟环境:可参考【1】Anaconda安装超简洁教程,瞬间学会!
飞桨安装链接【开始使用_飞桨-源于产业实践的开源深度学习平台】
代码语言:javascript
复制
pip install paddlepaddle==2.0.2 -i https://mirror.baidu.com/pypi/simple
代码语言:javascript
复制
conda install paddlepaddle==2.0.2 -c paddle
2.2 如果报错:TypeError: Descriptors cannot not be created directly. If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0. If you cannot immediately regenerate your protos, some other possible workarounds are:
Downgrade the protobuf package to 3.20.x or lower.
Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).
解决方案:降级 protobuf
在当前conda环境下
代码语言:javascript
复制
pip uninstall protobuf
然后,安装即可
代码语言:javascript
复制
pip install protobuf==3.19.0
最后执行!
代码语言:javascript
复制
import paddle paddle.utils.run_check()
安装完成后您可以使用 python 进入python解释器,输入import paddle ,再输入 paddle.utils.run_check()如果出现PaddlePaddle is installed successfully!,说明您已成功安装。
2.2 卸载请使用以下命令卸载PaddlePaddle:
CPU版本的PaddlePaddle:
代码语言:javascript
复制
pip uninstall paddlepaddle
2.3 1.8版本安装先在anaconda里安装pip
代码语言:javascript
复制
conda install pip
代码语言:javascript
复制
pip install paddlepaddle==1.8.5 -i https://mirror.baidu.com/pypi/simple
代码语言:javascript
复制
使用python 或 python3 进入python解释器,输入import paddle.fluid ,再输入paddle.fluid.install_check.run_check()。
这里提示安装成功会显示:PaddlePaddle is installed successfully!
最后补充一句:新建一个环境哦,别和之前比如tensorflow装在一起,有时候会出现莫名错误!慎重!
3.GPU版本安装在anaconda下创建虚拟环境:可参考【1】Anaconda安装超简洁教程,瞬间学会!
!!!cuda、cudnn安装可以参考:【一】tensorflow【cpu/gpu、cuda、cudnn】全网最详细安装、常用python镜像源、tensorflow 深度学习强化学习教学_汀、的博客-CSDN博客_tensorflow深度学习
确认Python和pip是64bit,并且处理器架构是x86_64(或称作x64、Intel 64、AMD64)架构,目前PaddlePaddle不支持arm64架构。下面的第一行输出的是”64bit”,第二行输出的是”x86_64(或x64、AMD64)”即可:
代码语言:javascript
复制
python -c "import platform;print(platform.architecture()[0]);print(platform.machine())"
代码语言:javascript
复制
conda install paddlepaddle-gpu==2.0.2 cudatoolkit=10.2 -c paddle
安装完成后您可以使用 python 或 python3 进入python解释器,输入import paddle ,再输入 paddle.utils.run_check() 如果出现PaddlePaddle is installed successfully!,说明您已成功安装。
这里说明一下,因为我的电脑里安装了11.2和10.2两个版本的cuda,我会进行切换的。
当前使用的是11.2版本。中间的那段警告可以忽视,只要安装成功就行!
3.1 更新paddle代码语言:javascript
复制
pip install --upgrade paddlepaddle-gpu -i https://mirror.baidu.com/pypi/simple
如果是中间步骤出现问题了可以参考:
4.课程笔记课程链接【飞桨AI Studio - 人工智能学习与实训社区】
常见数学公式【高数、线代、概率】{飞桨AI Studio - 人工智能学习与实训社区}
【Python语法】飞桨AI Studio - 人工智能学习与实训社区 方便查询。
4.1第一节python基础语法附链接【python快速入门【一】-----基础语法_汀、的博客-CSDN博客】
4.2 第二节python常见的数据结构附链接【python快速入门【二】----常见的数据结构_汀、的博客-CSDN博客】
4.3第三节python For 循环、While 循环链接【python快速入门【三】-----For 循环、While 循环_汀、的博客-CSDN博客】
4.4 第四节python 中定义函数链接【python快速入门【四】-----各类函数创建_汀、的博客-CSDN博客_python 创建多个函数】
4.5第五节python 面向对象编程链接【python快速入门【五】---- 面向对象编程、python类_汀、的博客-CSDN博客】
4.6 第六节python 面向对象编程链接【python快速入门【六】----真题测试_汀、的博客-CSDN博客】