我试图预测一个视频游戏的玩家是否会根据他们迄今为止的比赛中的游戏数据在下个月内停止玩游戏(0/1不停止/停止)。
玩家玩的每个匹配产生(X)个数据点,然而,每个玩家可能已经玩了不同数量的匹配到日期(M),因此当玩家的数据被放入一个长向量时,他们的向量的长度将是X * M.
我对神经网络的工作方式一无所知,但我的理解是数据集的每一行必须具有相同的列数。这是真的吗?
根据我的问题,我已经集思广益了三个可能的解决方案,每个解决方案都有各种妥协......
[可能的解决方案1:汇总数据]
我已经考虑将匹配数据聚合为一个解决方案,例如,而不是“匹配1中的点,匹配2中的点,...,匹配n中的点”,只有“每个匹配的平均点数”。但是我担心这不是最好的妥协,因为平均某些数据会影响分辨率(即在游戏中将很多分数作为一个角色而不是获得很多分数,因为另一个角色可能是有用的差异)。 / p>
[可能的解决方案2:为缺失数据添加零]
也许如果我有一个玩6场比赛的玩家A和到目前为止只玩5场比赛的玩家B,我可以添加零来制作玩家B的矢量,只要玩家A的。但是我担心像这样添加零会对我的数据添加大量噪音。
[可能的解决方案3:将数据修剪为相同大小]
我可以为每个玩家矢量设置一个特定数量的匹配项,例如10个匹配项。因此,如果玩家少于10场比赛,他们将从数据集中删除,或者如果玩家有超过10场比赛,则只有前10名将出现在数据集中。这里唯一的缺点是,唯一一个真正预测标签为1(停止比赛)的球员是那些完全打了10场比赛的球员......但我不仅仅对预测它有兴趣,我显然想要更一般的预测。
如何在不等长的载体上训练神经网络?
答案 0 :(得分:1)
所以我的问题对于人们想要阅读来说可能太长了,但无论如何,我的问题讨论了一些可能的方法来处理神经网络的不均匀输入向量长度(或者可能需要相同长度的任何机器学习算法)
我没有想过的一个解决方案,但是在Quora answer中向我建议的是,仅包含至少玩过3个(一些小数量)游戏的玩家,因此您可以将其包括在内原始数据然后为4-n游戏汇总结果。
在上面的问题详情中,这实际上是我的“可能的解决方案1”和“可能的解决方案3”之间的妥协。