ml-agent:Win10下环境安装

简介

        AI人工智能,更准确地说机器学习(machine learning)最近一年非常火热。在最近一段时间,Unity也发布了一个机器学习的工具,叫做ml-agent。

        英文介绍如下:

  https://blogs.unity3d.com/cn/2017/09/19/introducing-unity-machine-learning-agents/

        中文介绍如下:

  http://forum.china.unity3d.com/thread-27837-1-1.html

        工程在Github上的地址如下

  https://github.com/Unity-Technologies/ml-agents

        从代码结构上看,ml-agent实现了前端用unity做表现,后端用Phython进行人工智能演算的系统。

搭建环境

主要环境

官方推荐环境如下

  • Phython2/3 64位
  • jupyter notebook
  • TensorFlow (1.0+) (Training)
  • Visual Studio 2017
  • Unity3d 2017

隆ml-agent代码库

        从Github网站上克隆(下载)ml-agent,代码,放在任意位置下。

安装Unity2017.2

        从Unity官网下载Unity2017.2,安装。

        下载地址https://store.unity.com/cn/download?ref=personal

安装VS2017

        从微软官网https://www.visualstudio.com/zh-hans/downloads/下载,运行后选择需要的模块。这边虽然有提供python的相关插件,但是我们选择后面单独安装。

安装Anaconda

        从Anaconda官网安装Anaconda5.0.0

2017101501

        下载地址https://www.anaconda.com/download/#windows

        安装后从开始菜单打开Anaconda Navigator,在左侧选择Environments。在下方菜单中点击Create创建一个环境,取名为tensorflow,python版本选择为3.6。等待环境创建完成。

2017101502

安装Tensorflow及其依赖库

        从开始菜单中,打开Anacoda Prompt。

        首先激活刚刚创建的环境,输入命令

  activate tensorflow

2017101503

        输入命令安装Tensorflow

  pip install –U tensorflow

        等待一段时间直到安装完成。至此完成了Tensorflow最新版本的安装。(目前是1.3.0版本)

  后面还要输入命令,所以暂时不要关闭窗口

  本人知识补充:(安装时如有提示pip版本低请按照以下步骤解决,没有报错可忽略)

  在 “输入命令安装Tensorflow 输入  pip install –U tensorflow”  步骤时,如果你的pip版本不是最新,就会报错,没办法必须是最新版本。

  去pip官网下载最新版解压到自定义目录即可,从开始菜单中,打开Anacoda Prompt,进入到解压后的  pip-10.0.1(我使用的版本)目录下,

  (同磁盘目录直接 cd 所在目录 即可;非同磁盘,C:或D:(所在磁盘)进入磁盘之后cd)

  进入目录之后, 输入 python setup.py install 命令进行安装。安装之后继续安装Tensorflow即可。(补充完)

安装ml-agent依赖库

  补充:如下图所示,此时要退出(tensorflow),回到(base),不然会报错。

  也就是刚打开Anacoda Prompt命令窗口时(你也可以关掉重新打开Anacoda Prompt),继续以下步骤。

    

        完成Tensorflow安装后,继续在Anacoda Prompt中输入命令切换到ml-agent所在的目录中python目录的位置。比如ml-agent安装目录为D:\Git\ml-agent,则输入

  cd D:\Git\ml-agent\python

        如果你的Anaconda不是安装在ml-agent目录相同的磁盘,那么需要切换到ml-agen所在的磁盘。比如这里Anaconda的安装目录为C盘,

  ml-agent安装目录为D:\ml-agent,则需要切换到D盘,输入 D:

        然后开始安装Demo所需的环境,输入命令 pip install .

        注意,注意不要遗漏最后的点号。等待安装完成即可。此时依然不用关闭这个窗口。

运行

由于案例的训练方法和ml-agent v0.2不同。v0.2使用Jupyter notebook运行ppo.ipynb文件。但是v0.3改为使用命令行的方法。

所以对以下内容做更新,可以查看 http://www.cnblogs.com/yanghui0702/p/yanghui20180503.html 。

编译Unity程序

        Unity的ml-agent提供了多干的demo。这里尝试运行3dball这个demo。

        使用Unity2017打开ml-agent下unity-environment文件夹。

        打开Assets\ML-Agents\Examples\3DBall目录下的scene文件。在场景中选择Ball3DAcademy下的Ball3DBrain物体,将TypeOfBrain修改为External,表示从Tensorflow中获取数据。

2017101504

        菜单中选择File->Build Setting,添加当前所在场景。(可以勾选Development Build以便查看输出)

        点击PlayerSeting,检查设置

        Resolution and Presentation -> 勾选Run in Background

        Resolution and Presentation -> Display Resolution Dialog设置为disable

        回到Build Setting面板,点击Build,编译到ml-agent的python目录中。名为3dball.exe

2017101505

运行Jupyter Notebook

        回到Anacoda Prompt命令窗口。注意一定要切换到ml-agent中python所在的目录。输入

jupyter notebook

        运行之后,一方面会出现一个命令行窗口,另一方面会同时打开一个网页

2017101506

2017101507

        点击网页中的PPO.ipynb。修改其中env_name的值为刚刚编译出来的exe名字。注意不要加exe。然后在菜单上选择Cell->RunAll

2017101508

        运行后,可以看到刚刚编译出来的exe被运行起来

2017101509

总结

        注意几个点

  • 虽然很多文章表明tensorflow用python3.5比较好,但是没有深入研究到底有什么影响。
  • 由于Anaconda使用的5.0.0版本,所以默认使用的是python3.6的版本。在这样的情况下,如果创建python3.5的环境,安装tensorflow1.2,会出现运行的时候找不到tensorflow的问题。而如果使用python3.6的环境,但是安装tensorflow1.2,会出现tensorflow. TensorLayer找不到的问题。这些问题花了好多时间排查,需要注意所以最终这里使用的是Anaconda5.0.0,python3.6以及tensorflow1.3
  • 安装依赖库的时候需要注意,一定要切换好环境。否则很可能安装到不同的环境下。这里安装前一定会输入activate tensorflow命令(tensorflow是我创建的环境名)

这是我看到的最全面最详细的ml-agent讲解。(只用于学习与知识分享,如有侵权,联系删除。谢谢!)

来自CodeGize的个人博客。源链接:https://www.cnblogs.com/CodeGize/p/7674281.html#undefined

posted @ 2018-04-23 18:56  IT_yanghui  阅读(1666)  评论(0编辑  收藏  举报