我正在尝试根据如下所示的历史数据集来预测比赛的胜利者,

数据集由国际足球联赛赛季和Team_Name_id与对手球队组成,是国际足球联赛中的球队名称。我已经将match id设置为Row id并创建了模型。运行实时测试时,结果不符合预期(如下所示)

目标设置为Match_winner_id。我是否遗漏了任何配置?请帮帮忙
发布于 2017-06-16 12:27:58
该模型完全正确地工作。只有两个问题:
Data Quality
预测模型需要高质量的输入数据,以便对解释给定结果的模型进行逆向工程。此输入数据应包含可用于预测给定一组不同输入数据的结果的信息。
例如,在预测房价时,它需要知道郊区(类别)、卧室/卫生间/停车位的数量、楼龄和销售价格。然后,它可以使用略有不同的变量组合来预测其他房屋的销售价格。
但是,根据您的屏幕截图,您提供了以下信息(可能更多)来进行预测:
您提供的可用于预测未来游戏的信息非常少。实际上,只有团队和场地。其他一切要么是游戏本身的一部分,要么是无关紧要的。
只选择两个团队中的一个
当ML模型查看您的数据并尝试做出预测时,它将查看您提供给的所有数据。例如,它可能会注意到,对于给定的场地和赛季,第8队有更高的获胜倾向。因此,考虑到场地和赛季,它将有利于第8队获胜。该模型没有概念,即唯一可能的结果是列C和D中给出的两支球队中的一支。
您正在预测两个给定的团队,并且在列C或列D中列出了团队,这是没有意义的-- 如果您在列之间交换团队,结果是相同的,但是模型没有这个概念。此外,关于团队1和团队2的信息与团队3和团队4完全无关。
您应该做的是为每个团队创建一个数据集,列出他们的所有比赛,外加一个显示结果的列--一个布尔值(获胜/失败)或一个表示他们获胜的跑动次数的值(其中负数表示失败)。然后,您可以要求他们建立模型来预测该团队的结果,给定输入数据,这将是输赢或高于/低于另一个团队的分数。
但从本质上讲,我认为您的输入数据没有足够丰富的内容,无法做出合理的预测。只需问问自己:“如果我想知道哪支球队会赢,我想知道什么数据?”它可能是过去的结果,天气状况,每支球队的哪些球员,他们在过去一周打了多少场比赛,等等。这些信息都不会作为输入提供给您的输入数据的每一行。
https://stackoverflow.com/questions/44571273
复制相似问题