上下文:
我正在尝试使用前馈人工神经网络为视频游戏创建 AI,但我遇到了一个问题,即我的一些输入特征依赖于其他输入特征的存在或价值。
我能想到的最基本、最简单的例子是这样的:
特征 1 是玩家数量(范围 2...5) 特征 2 到 ? 是每个玩家的得分(范围 >=0)
通知 ANN 分数所需的特征数量取决于玩家的数量。
问题:如何将这种动态知识输入表示给 ANN?
我已经考虑过的事情:
只是不使用这些功能,或者将它们合并到静态输入中。IE 使用玩家得分的总和来代替。我严重怀疑这是否适用于我的问题,它会导致丢失太多信息并且 ANN 将无法正常运行。
为不存在的输入传递错误值(例如 -1)或默认值(例如 0)我不确定这将如何工作,理论上 ANN 可以轻松地从该输入中学习并适当地对函数建模。在实践中,我担心大量不存在的输入会导致 ANN 出现问题。例如,如果玩家的范围是 2-10,如果只有 2 个玩家,则 80% 的输入数据将不存在,并且会在 ANN 中引入奇怪的偏差,从而导致性能不佳。
在不存在的输入上传递训练集的平均值同样,不存在的输入量将是一个问题,我担心这会给离散值输入带来奇怪的问题。
所以,我在问这个,有没有人有我能想到的其他解决方案?有没有标准或常用的方法来处理这个问题?
我知道这对 SO 来说是一个相当小众且复杂的问题,但我对“如何修复此代码?”感到厌烦。和“我如何在 PHP/Javascript 中做到这一点?” 问题:P,谢谢大家。