当前位置: 首页 > news >正文

Unity AI项目笔记

一、创建虚拟环境

在开始进行Unity AI项目之前,首先需要设置一个适当的虚拟环境。以下步骤将会指导你如何创建:

  1. 下载Python 3.7。
  2. 下载Anaconda 2020.11。可以在清华大学开源软件镜像站找到镜像资源:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
  3. 使用Anaconda创建一个新的环境,命名为ml-agents。如果你使用的是命令行,可以使用以下命令来创建:
    conda create --name ml-agents python=3.8
  4. 在Anaconda Prompt中输入
    activate ml-agents
    来激活你刚创建的环境。
  5. 安装tensorflow 2.2.0,命令:
    python -m pip install tensorflow==2.2.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
  6. 安装torch 1.7.1,命令:
    pip install torch==1.7.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
  7. 安装ml-agents,命令:
    pip install mlagents -i https://pypi.tuna.tsinghua.edu.cn/simple
    (注意:安装过程中请确保没有启动VPN,否则可能会导致安装失败)
  8. 如果训练过程中报错,可能需要降级protobuf版本,命令:
    pip install protobuf==3.20.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

二、训练

在设置好环境之后,你就可以开始训练你的Unity AI项目了:

  1. 在Anaconda Prompt中输入
    activate ml-agents
    来激活你的环境。
  2. 输入
    E:
    切换到E盘。(2、3步需要根据自己项目来)
  3. 通过
    cd E:\UnityProjects\TestAI\Assets\Train
    进入你项目中的训练目录。
  4. 输入
    mlagents-learn config.yaml
    开始训练。
  5. 如果需要恢复之前的训练,可以输入
    mlagents-learn config.yaml --resume

三、确保版本对应

确保你的Unity版本和pip上安装的版本相匹配。你可以在 https://github.com/Unity-Technologies/ml-agents/releases/tag/release_20 的Releases部分查看对应关系。例如我用的ML-Agents Release 4版本配对如下:

  • com.unity.ml-agents (C#):v1.2.0
  • mlagents (Python):v0.18.0
  • mlagents-envs (Python):v0.18.0
  • gym-unity (Python):v0.18.0
  • Communicator (C#/Python):v1.0.0

检查版本的步骤如下:

  1. 检查Unity项目的ML-Agents版本:在Unity编辑器中,打开Window > Package Manager。在打开的窗口中,找到ML-Agents包并查看其版本号。
  2. 检查训练环境的ML-Agents版本:在命令行终端中,运行以下命令:
    pip show mlagents
  3. 更新命令行工具MLAgents和mlagents-envs到对应版本,命令如下:
    • pip install --upgrade mlagents==0.18.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
    • pip install --upgrade mlagents-envs==0.18.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

参考资料:https://zhuanlan.zhihu.com/p/82617680

http://www.lryc.cn/news/104965.html

相关文章:

  • 如何在地图上寻找峨眉山零公里的龙洞湖
  • cloudstack平台host加入后,显示CPU speed为0GHz
  • 创新技术应用,提升企业图文档管理水平的新思路
  • 网络安全 Day22-mariadb数据库用户管理
  • SERDES关键技术
  • 小程序如何上传商品图片
  • vue中人员导出功能实现
  • 【微信小程序】引入第三方库poke对GZIP压缩数据进行解压
  • Pandas操作Excel
  • leetcode 712. Minimum ASCII Delete Sum for Two Strings(字符串删除字母的ASCII码之和)
  • Springboot -- 按照模板生成docx、pdf文件,docx转pdf格式
  • UE5.1.1 创建C++项目失败
  • windows进行端口映射
  • Python 异常处理
  • C++ 类的静态成员
  • 360T7路由器进行WiFi无线中继教程
  • 主成分分析
  • 笙默考试管理系统-MyExamTest(26)
  • 重新理解 RocketMQ Commit Log 存储协议
  • ES6基础知识十:你是怎么理解ES6中 Decorator 的?使用场景?
  • 接口/Web自动化测试如何做?框架如何搭建封装?
  • Linux怎么从网络上下载文件
  • Flutter携带JSON参数post请求
  • 【vue】vue-image-lazy图片懒加载使用与介绍【超详细+npm包源代码】
  • MFC第二十四天 使用GDI对象画笔和画刷来开发控件(分页控件选择态的算法分析、使用CToolTipCtrl开发动静态提示)
  • 【NLP-新工具】语音转文本与OpenAI的用途
  • try-catch-finally的字节码原理
  • 基于双层优化的微电网系统规划设计方法(Matlab代码实现)
  • 【Nginx13】Nginx学习:HTTP核心模块(十)Types、AIO及其它配置
  • 2023年华数杯数学建模C题思路分析