gmail邮箱登录,

  gmail邮箱登录,

  本文介绍了openAI的一篇论文对应的代码的运行。纸张名称:《Generative adversarial imitation learning》

  附github链接:https://github.com/openai/imitation

  一般步骤如下

  代码下载安装各种依赖安装仿真软件生成训练数据PBS介绍训练及评估1.代码下载Git克隆https://github.com/openai/imitation.git

  2.安装依赖git提出了以下依赖需求

  OpenAI健身房=0.1.0,mujoco_py=0.4.0

  numpy=1.10.4,scipy=0.17.0,theano=0.8.2

  h5py,pytables,pandas,matplotlib

  其实直接运行scripts/im_pipeline.py文件就可以了。如果没有通过,就会报错,比如没有名为h5py的模块。相应的解决方案是

  sudo apt-get安装libhdf5-dev

  sudo apt-get安装python-h5py

  同样,可以用sudo apt-get install python-yaml安装yaml依赖项。

  露天健身房,桌子,茶座等等。通过使用pip安装说明进行安装,例如

  pip安装健身房

  pip安装表

  关于theano的安装过程有详细的教程,参考链接http://deeplearning.net/software/theano/install_ubuntu.html

  3.安装仿真软件mujoco是一个非开源的仿真软件,但是下载使用也非常方便。当你安装了相关的依赖项,运行程序,你会发现仍然有错误提示。对于mujoco,访问他提供的网址,下载对应版本的mujoco并解压。下一步很关键,因为它不是免费开源的,需要申请key。访问网站https://www.roboti.us/license.html,填写姓名和邮箱,将其提供的文件下载到本地。我是linux系统,用chmod x getid_linux plus执行权限执行获取本机id。注意每台电脑对应的id不一样,直接关系到你后面申请的密钥是否有效。

  提交id后,您会收到一封邮件,将mjkey.txt移动到mujoco的sdhs文件中,并在中填写以下命令。没有则创建

  导出MUJOCO _ PY _ mj key _ PATH=/home/username/imitation/MUJOCO/mj pro 131/sdhs/mj key . txt

  导出MUJOCO _ PY _ mj pro _ PATH=/username/imitation/MUJOCO/mj pro 131

  此时,模拟软件已经安装完毕。

  4.生成培训数据。完成上述步骤后,您应该能够运行im_pipeline.py文件了。小心地在主目录下运行它。

  python。/scripts/im_pipeline.py/pipelines/im _ pipeline . YAML 0 _ sample trajs

  Im_pipeline.yaml是一个参数文件,对应使用规范。当然,作者还提供了其他几个规格,可选。下面的0_sampletrajs表示从专家数据中采样,用于我们后面的训练。

  如果这一步有问题,那么之前的安装还是有问题的。

  如果没有名为policyopt的模块出现问题,那么您需要将当前的模仿文件夹添加到python路径中。

  方法1:

  在报告错误的py文件中

  导入系统

  sys . path . append(" path/to/your/code ")

  方法二:

  加入。bashrc文件

  将python path=/path/导出到/your/code:$PYTHONPATH

  相对来说,第二种方法更方便,别忘了来源。

  5.PBS Part PBS全称为便携式批处理系统(Portable Batch System),最初由美国宇航局艾姆斯研究中心(Ames Research Center of NASA)开发,旨在提供一个能够满足异构计算网络需求的软件包,特别是针对高性能计算。

  这里使用PBS的原因非常简单。环境那么多,不同的算法还要比较。训练时也限制了_of_trajs的数量。他们的组合就是乘法,我们会得到一系列的训练任务。一个一个敲命令无疑很麻烦,用批处理系统(-)很容易。-事实上,我也很难理解pbs。也许我还不如一个一个训练。)5.1安装

  sudo apt-get安装扭矩-mom扭矩-服务器扭矩-客户端扭矩-调度程序

  5.2节点配置

  主机$主机名

  要查看您的主机名,您需要修改文件/etc/hosts,可以将其更改为以下形式。服务器名为Node1。

  节点1本地主机

  127.0.1.1节点1

  sudo echo $ HOSTNAME/etc/torque/server _ name

  sudo echo $ HOSTNAME/var/spool/torque/server _ name

  sudo pbs_server -t create

  sudo echo $ HOSTNAME NP=grep proc/proc/CPU info WC-l/var/spool/torque/server _ priv/nodes

  然后,在root权限下启动相应的进程。

  sudo qterm

  sudo pbs_server

  sudo pbs_mom

  如果操作有问题,ps一下,杀死所有pbs主导的进程,重新开始操作。

  ps aux grep pbs

  参考:https://www.douban.com/note/239136237/

  http://blog.sina.com.cn/s/blog_4a0a8b5d0102v2p1.html5.3队列配置

  这部分很关键。我们只是启动了队列,但是使用什么样的队列需要我们自己根据程序的需要来配置。

  #命名队列是批处理队列

  qmgr -c "创建队列批处理queue_type=execution "

  qmgr -c "设置队列批处理资源_default.walltime=72:00:00 "

  qmgr-c " set server query _ other _ jobs=True "

  #资源分配

  qmgr-c " set queue batch resources _ max . ncpus=6 "

  qmgr-c " set queue batch enabled=True "

  qmgr -c "设置队列批处理开始=真"

  qmgr -c 设置服务器默认值_队列=批处理

  #默认队列设置

  qmgr-c " set queue batch resources _ default . need nodes=node 1 "

  #自动调度。如果没有这句话,作业在提交后将不会运行,它将一直在队列中。

  qmgr-c " set server scheduling=True "

  按照这一步,我们的pbs配置就完成了。如有疑问,请参考5.2中的两个网址,该链接提供了很多pbs命令的使用http://blog.sina.com.cn/s/blog_48d42f430100s7u3.html。

  5.4补充

  python。/scripts/im_pipeline.py/pipelines/im _ pipeline . YAML 1 _ train

  如果我们此时执行这个命令,仍然会有一些问题,我们需要修改源代码。

  在im_pipeline.py中的#PBS -e /dev/null后面加上#PBS -V,否则还是会出现无法导入环境或policyopt等问题,也就是会增加一些环境变量。

  没有可行的节点

  如果没有可行的节点,那么您配置的资源有问题。检查初始服务器的设置,确保可以提供相应的处理器和内存。

  此外,im_pipeline.yaml中100行的队列名也需要更改。默认是atlas,而我用的是默认的队列名batch,两者应该是一致的。

  6.培训和评估Python。/scripts/im _ pipeline . py ./pipeline/im _ pipeline . YAML 1 _ train

  python。/scripts/im_pipeline.py/pipelines/im _ pipeline . YAML 2 _ eval

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: