我应该以什么形式获得1v1比赛预测的数据?

2024-05-16 03:56:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在开发一种人工智能,用于预测视频游戏1v1比赛的获胜者。问题是我不知道我需要什么形式的数据(输入和标签)。 目前,我有以下数据:

  • 比赛日期(第0天)
  • 玩家1的名字
  • 玩家1所在国家
  • 玩家2的名字
  • 玩家2的国家
  • 胜利者

我也可以得到比赛的分数,但有时是3比1,有时是5比1,所以我不知道这是否可靠

根据我掌握的数据,我的两个主要问题是:

  • 如果我只是反转玩家列,AI是否可能预测两个不同的结果
  • 如果是,我如何避免它
  • 我怎么对人工智能说我想要的预测只是我向它展示的两个玩家中的一个,而不是其他玩家

提前谢谢,我真的很感激


Tags: 数据游戏视频玩家标签国家名字人工智能
1条回答
网友
1楼 · 发布于 2024-05-16 03:56:56

尽管我不完全理解你所说的player1和player2是什么意思,但你的数据似乎是绝对的。你有球员的名字或一些技能吗

神经网络或任何人工智能算法都能处理数字。他们不知道任何关于真实世界的事情,比如日名(星期一、星期二等)或国名。你要做的是在这些现实问题和数字之间建立一个映射

它们是分类的(不需要连续值)。您可以将日期从0映射到N。对于可以这样做的国家,每个国家都可以有一个唯一的ID。如果在推断过程中,模型收到一个不存在于培训中的日期或国家,模型将不知道,您必须小心。因此,要么添加所有相关的国家,要么如果您在之前不知道这一点,您可以为未知的国家和日期添加标签-1。 对于每个要素,都有一列,每行表示一个匹配项。在该列中,您必须对应该特定功能的ID并进行匹配,您可以将该数据传递给AI。顺便说一下,您可以为不同的功能使用相同的ID/编号。(因此,你可以在星期二选择1,在另一列中,1可以是瑞士) 回答你的问题:

  1. 是的,理论上,这是可能发生的。如果你有足够的样本和一个好的模型,模型本身可能会学习它

  2. 如果可以,可以向模型输入相对值,而不是绝对值。因此,例如,如果您有一些与玩家相关的技能集属性/分数,您可以根据这些分数的差异创建数据,而不是将这两个分数都提供给系统。例如,球员1的投篮命中率为80,球员2的投篮命中率为78。你有一个用于射击的列,在那里你输入值80-78,然后模态知道player1比2好,或者如果反之亦然,你可以输入-2,并且模态知道player2在该类别中比2好。另一种方法是在训练数据中每次比赛2次。第二个是玩家命令颠倒的。模型也可以从数据中学到这一点

  3. 这很容易做到,您的模型不会输出玩家ID或任何与玩家相关的内容。您的问题是一个二进制分类问题。您的模型在任何情况下都应该输出0或1。0表示玩家1赢,1表示玩家2赢,然后您可以自己将此输出转换为玩家

相关问题 更多 >