本文已参与「新人创作礼」活动,一起开启掘金创作之路。
之前做了一个ML-Agent项目教程系列 以往文章:unity learn—— ML_Agent:Hummingbirds中文教程 自译(一 ——配置Unity) unity learn—— ML_Agent:Hummingbirds中文教程 自译(二——代码Flowers.cs、FlowerArea.cs) unity learn—— ML_Agent:Hummingbirds中文教程 自译(三——代码HummingbirdAgent.cs) unity learn—— ML_Agent:Hummingbirds中文教程 自译(四——Ray Perception Sensor)
unity learn—— ML_Agent:Hummingbirds中文教程 自译(五 ——安装Anaconda) unity learn—— ML_Agent:Hummingbirds中文教程 自译(六——准备训练) unity learn—— ML_Agent:Hummingbirds中文教程 自译(七——测试模型) 这一次我们来讲一讲怎么把项目build出来训练
关于用可执行文件训练的好处,我把官方的说法贴过来给大家大致看一下(翻译的并不好建议看原文):
1、You can exchange executable with other people without having to shareyour entire repository.
2、You can put your executable on a remoteachine for faster training.
3、You can use Headless mode for faster training.
4、 You can keep using the Unity Editor for other tasks while the agents are training.
在做好需要训练的场景之后,在unity窗口找到Edit ->project settings,保证与下图中红色部分一致 然后是File > Build Settings,确保scence in build框中只有一个被选中,同时选中Development Build,然后Build.
选中安装目录 之后把写有超参数的yaml文件也放进去
如果你还未安装ML-Agent的python环境,可以参考一下我之前的文章 unity learn—— ML_Agent:Hummingbirds中文教程 自译(六——准备训练)
打开Anaconda Prompt切换到有mlagent的环境,将路径切到刚才bulid的目录下
之后键入命令
mlagents-learn (trainer-config-file) --env=(env_name>)--run-id=(run-identifier) 其中 trainer-config-file:放置超参数的yaml文件的路径 env_name:.exe文件所在的文件夹的路径 run-identifier:给本次训练命名
比如我就是(yaml和exe所在文件夹在一起,所以路径可以直接写名字)
mlagents-learn trainer_config.yaml --env=Hummingbird --run-id=exeTest