由于官方教程是全英版,本文为根据个人理解做的中文版,并对出现的相关问题进行了解答
(能力有限,有问题的地方还望指出,同时欢迎志同道合的朋友参与讨论,谢谢!)
官方教程:https://learn.unity.com/course/ml-agents-hummingbirds?uv=2019.3
以往文章: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中文教程 自译(六——准备训练)
上次我们讲到训练结果存在:results\hb_01\Hummingbird.onnx
下面我们在创建一个文件夹Models,然后将训练结果拉进去
我们来看看它都有什么:
红色部分是指我们观测的数据有46个。看了教程unity learn—— ML_Agent:Hummingbirds中文教程 自译(三——代码HummingbirdAgent.cs)的朋友一定知道我们在 HummingbirdAgent.cs脚本里有10个观测数据,那么另外36个在哪呢?
答案是这里
这个三个的Ray Perception Sensor 3D脚本包含了剩下的36个观测(具体我还没研究,感兴趣的小伙伴可以打开它的源代码看一看)
剩下的内容我就不多解释啦,它不影响我们下面的使用,后面如果有机会的话,专门写一篇详细讲一讲(才不会告诉你我现在还看不懂呢hh)
好啦,现在打开hummingbird的预制体,把这个模型拖进去吧!
Note:有没有挂载这个模型都不影响 文章六 中的训练
这里要注意一下:Behavior Type一定不能是Heuristic Only(另外两个随便挑),不然是不会调用模型运作的。
以下是我根据个人理解对三种模式做的注释,如有谬误还请大家指出
模式 | 介绍 |
---|---|
default | 训练模式:可以训练也可以推理 |
Heuristic Only | 人机交互模式,该模式下训练好的模型和Training都将没有作用 |
Inference Only | 推理模式 : 该模式下只能使用模型 |
现在点击运行,你就可以看到你的小鸟自己去采花啦~
(我小鸟的表现是一个循环能采十几二十朵的样子)
本教程到此基本告一段落,下面大家可以尝试更改参数训练更好的模型啦(训练出来记得告诉我哦!)