1

我正在使用神经网络来控制游戏中角色的移动。目前我已经获得了大量维度,为了修改它们以提高存储和代码可管理性,我正在考虑删除所有派生变量,即可以从已发送到网络的数据中计算出的任何变量。神经网络 - 我应该删除所有派生/计算变量吗?

一个例子是a)位置,b)速度,和c)沿路径的加速度之间的关系。目前,我将所有三个数据点中的最后50个数据点发送给NN,以帮助确定其下一个移动。但是,我不知道系统控制/错误是否可以通过仅发送位置来简化。从理论上讲,神经网络应该能够根据位置历史完全根据它自己的时间推导出速度和加速度。

一般来说,这个容量的尺寸减少是建议的吗?为什么或者为什么不?

我知道在这种情况下人们经常建议是只是为了测试一下,看看会发生什么,但在这种情况下,这里有这么多的变数,这将需要数天的测试,所以我希望听到任何人的经验给这类型的情况以及他们推测的一般规则是什么。

奖金问题 - 对于神经网络(意图将函数映射到数据)而不是随机森林(似乎更多地使用最近邻居方法),这种评估/决策会不同。

谢谢!

回答

1

实施PCA以减少功能的数量。他们减少的功能将有不寻常的单位,如[位置速度加速度]。但是,如果您正确执行PCA,则可以保留原始集具有99%差异的功能集。

然后使用NN中的新功能集。

建议减小尺寸以加快算法速度,因为正如您观察到的,您的特征之间存在很多相似之处。