unity ML 代理和外部数据
unity ML Agents and external data
我是 Unity 的新手,我更多的是机器学习背景。计划使用 ML 代理,并为其编写一些自定义 python / tensorflow 脚本。
除了 unity 环境数据之外,是否可以根据我的硬盘驱动器中的数据进行训练?因此,例如,除了 Unity 相机之外,还有其他图像数据作为网络输入?
到目前为止还没有在示例和文档中真正看到这一点。
谢谢!
只要能表达成Vector3
,Vector2
,float
,int
,bool
,Quaternion
,还是固定one-hot,肯定没问题。只需将它们与 AddVectorObs
一起包含在 CollectObservations
:
中
public override void CollectObservations()
{
//internal info
AddVectorObs(gameObject.transform.rotation.z);
AddVectorObs(gameObject.transform.position);
Vector3 externalInfo1 = ExternalInfoGetter.StaticGetInfo1();
AddVectorObs(externalInfo1);
float externalInfo2 = ExternalInfoGetter.StaticGetInfo2();
AddVectorObs(externalInfo2);
}
有关详细信息,请参阅 the documentation on designing agents,包括有关如何实施单热功能的信息以及有关规范化输入的建议。
我是 Unity 的新手,我更多的是机器学习背景。计划使用 ML 代理,并为其编写一些自定义 python / tensorflow 脚本。
除了 unity 环境数据之外,是否可以根据我的硬盘驱动器中的数据进行训练?因此,例如,除了 Unity 相机之外,还有其他图像数据作为网络输入?
到目前为止还没有在示例和文档中真正看到这一点。
谢谢!
只要能表达成Vector3
,Vector2
,float
,int
,bool
,Quaternion
,还是固定one-hot,肯定没问题。只需将它们与 AddVectorObs
一起包含在 CollectObservations
:
public override void CollectObservations()
{
//internal info
AddVectorObs(gameObject.transform.rotation.z);
AddVectorObs(gameObject.transform.position);
Vector3 externalInfo1 = ExternalInfoGetter.StaticGetInfo1();
AddVectorObs(externalInfo1);
float externalInfo2 = ExternalInfoGetter.StaticGetInfo2();
AddVectorObs(externalInfo2);
}
有关详细信息,请参阅 the documentation on designing agents,包括有关如何实施单热功能的信息以及有关规范化输入的建议。