Unity 社区
33
9

Unity ML-Agents 环境搭建指南

Unity技术博客
阅读 2134
2019年12月9日
本文会根据ML-Agents实际版本情况,进行更新,现在最新版本为0.14.1
资源准备
ML-Agents主要可以在
github.com/Unity-Technologies/ml-agents/releases http://github.com/Unity-Technologies/ml-agents/releases
获得,并且该页面还会有具体的版本新功能、改进、Bug修复等信息。
Anaconda是免费开源 Python 和 R 语言的发行版本,用于计算科学(数据科学、机器学习、大数据处理和预测分析),简化包管理和部署。其中会使用一个重要的系统叫做Conda,它是一个开源、跨平台和语言无关的软件包管理和系统管理系统。通过Conda可安装、升级和升级软件包依赖。Anaconda所有的版本可以在
repo.continuum.io/archive/ http://repo.continuum.io/archive/
下载到。ML-Agents所需要的机器学习相关库都建议安装到Anaconda中,包括TensorFlow。
Anaconda Navigator 是 Anaconda 的图形用户界面,可通过 Anaconda Navigator 启动应用。它的好处在于:在不使用命令行的情况下管理软件包、创建虚拟环境和管理路径,适用于 Windows、macOS 和 Linux。
Anaconda Navigator
macOS 系统所需资源
Unity 2018.4(推荐)
通过Unity Hub下载安装,此处不做赘述
Unity ML-Agents Beta 0.14.1
github.com/Unity-Technologies/ml-agents/archive/0.14.1.zip
Anaconda3 (python 3.6)
repo.continuum.io/archive/Anaconda3-5.2.0-MacOSX-x86_64.pkg
Windows 10 系统(基于CPU训练)所需资源
Unity 2018.4(推荐)
通过Unity Hub下载安装,此处不做赘述
Unity ML-Agents Beta 0.14.1
github.com/Unity-Technologies/ml-agents/archive/0.14.1.zip
Anaconda3 (python 3.6)
repo.continuum.io/archive/Anaconda3-5.2.0-Windows-x86_64.exe
如果你想使用Windows 10系统基于GPU(Nvidia)进行训练还需准备以下资源:
Nvidia CUDA toolkit v9.0
developer.nvidia.com/compute/cuda/9.0/Prod/network_installers/cuda_9.0.176_win10_network-exe
如果上面的链接无法正常访问,可以通过这个链接获取:developer.nvidia.com/cuda-toolkit-archive
Nvidia cuDNN library v7.0.5
developer.nvidia.com/compute/machine-learning/cudnn/secure/v7.0.5/prod/9.0_20171129/cudnn-9.0-windows10-x64-v7
如果上面的链接无法正常访问,可以通过这个链接获取:developer.nvidia.com/cudnn
安装步骤
macOS
Anaconda3 安装成功后,启动 Terminal
命令行创建 ml-agents 环境
conda create -n XXX python=3.6 (XXX 是自定义的环境名称,如 mlagents)
激活 ml-agents 环境
conda activate XXX
检测 pip
pip --version (输出 “pip 19.0.1 from …(Python 3.6)”,确认安装)
安装 TensorFlow 2.0
pip install tensorflow==2.0
解压 ml-agents-0.14.1.zip,释放到某个目标文件夹
在 Terminal 通过 cd 命令到达文件夹位置
安装 ml-agents 开发环境
cd ml-agents-envs pip install -e . cd .. cd ml-agents pip install -e . ⚠️ -e 后面的空格和句号不能少
输入 mlagents-learn --help 确认安装成功与否
可以输入 conda deactivate 退出现在 ml-agents 环境
Windows 10 CPU
安装 Anaconda3
使用默认 Advanced Option
添加 Conda 到环境变量
Environment Variables -> System variables -> 选择 PATH,点击 Edit... %xxx%\Anaconda3\Scripts %xxx%\Anaconda3\Scripts\conda.exe %xxx%\Anaconda3 %xxx%\Anaconda3\python.exe
启动命令行工具 Anaconda Prompt,命令行创建 ml-agents 环境
conda create -n XXX python=3.6 (XXX 是自定义的环境名称,如 mlagents)
激活 ml-agents 环境
activate XXX
安装 TensorFlow 2.0
pip install tensorflow==2.0
解压 ml-agents-0.14.1.zip,释放到某个目标文件夹
在 Anaconda Prompt 通过 cd /d 命令到达文件夹
安装 ml-agents 开发环境
cd ml-agents-envs pip install -e . cd .. cd ml-agents pip install -e . ⚠️ -e 后面的空格和句号不能少
输入 mlagents-learn --help 确认安装成功与否
Windows 10 GPU 可选
先完成Windows 10 CPU部分的安装
安装 Nivida CUDA toolkit
假设安装路径为 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0
安装 Nivida cuDNN library
解压并复制 …\cudnn…\cuda 下 bin、include 和 lib 文件夹
复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0
添加 CUDA 环境变量
Environment Variables -> System variables -> 点击 New… 输入 Variable name 为 CUDA_HOME 输入 Variable value 为 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0
添加 CUDA GPU 到环境变量
Environment Variables -> System variables -> 选择 PATH,点击 Edit... C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\lib\x64 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\CUPTI\libx64
打开命令行工具 Anaconda Prompt,激活 ml-agents 环境
activate XXX
安装 TensorFlow GPU
pip uninstall tensorflow pip install tensorflow-gpu==2.0
⚠️注意
一般情况下,使用 CPU 和 GPU 区别不大。那么何时适合使用 GPU 训练,或者是 Unity 上运用 GPU(即 Agent 上设置 Inference Device 为 GPU)
Brain 使用不少视觉观测值(Visual Observation)
Brain 使用大量向量观测值(Vector Observation),Agent 数量 x 观测值数量 > 1024
Brain 使用大量隐藏层(Hidden Layer),Agent 数量 x 隐藏层数量 > 1024
其它
可以在Terminal(macOS)或Anaconda Prompt(Windows 10)中,使用 conda-env list 显示所有已创建的环境
了解更多:
https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Installation.md
https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Using-Virtual-Environment.md
https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Installation-Windows.md
发布于技术交流
9条评论

AI

全新AI功能上线

1. 基于Unity微调:专为Unity优化,提供精准高效的支持。

2. 深度集成:内置于团结引擎,随时查阅与学习。

3. 多功能支持:全面解决技术问题与学习需求。

AI