Python 如何建立一个预测模型,在未来会有看不见的分类变量

Python 如何建立一个预测模型,在未来会有看不见的分类变量,python,machine-learning,scikit-learn,Python,Machine Learning,Scikit Learn,假设我建立了一个模型,利用过去10年的赛马和马匹数据预测赛马的最终位置,该模型具有以下特征: 马的年龄,马的体重,比赛距离,骑师 现在,我想预测下个赛季的赛马排名。然而,在这10年中,许多骑师已经退休,新的骑师也加入了,因此,与马的年龄、马的体重和比赛距离不同,将有一些骑师是训练有素的模特看不见的 我想知道解决这个问题的好办法是什么。我意识到我能做的一件事是不断地重新训练我的模型,以纳入新的数据,但我希望听到更多有趣的想法 我认为那是不可能的 但是,您可以执行以下操作: 假设每场比赛有10匹马。

假设我建立了一个模型,利用过去10年的赛马和马匹数据预测赛马的最终位置,该模型具有以下特征:

马的年龄马的体重比赛距离骑师

现在,我想预测下个赛季的赛马排名。然而,在这10年中,许多骑师已经退休,新的骑师也加入了,因此,与马的年龄、马的体重和比赛距离不同,将有一些骑师是训练有素的模特看不见的


我想知道解决这个问题的好办法是什么。我意识到我能做的一件事是不断地重新训练我的模型,以纳入新的数据,但我希望听到更多有趣的想法

我认为那是不可能的

但是,您可以执行以下操作: 假设每场比赛有10匹马。从0到9进行编号。
包括您想要的所有马的所有功能,并预测哪匹马赢。

例如:
马0:马龄0,马重0,比赛距离0,骑师0
马1:马龄1、马重1、比赛距离1、骑师1

马9:马的年龄9,马的重量9,比赛距离9,骑师9

总共4*10=40个特征

模型应该预测0到9级中的一个,表示马的数量
不过,使用这种方法时要小心,马匹的顺序并不重要,在训练/选择模型时应该考虑到这一点


您可以通过考虑一对一的方法来简化问题,在这种方法中,您可以评估每对马,看看哪一匹会赢。

用骑师体重、赢/输比率替换骑师…@yeg感谢您的输入。我给出了一个具体的例子,但问题实际上可以是一个更一般的问题,在这个问题上,分类变量可能会也可能不会被其他功能所取代。@SzePlusPlus您仍然需要提供一些关于骑师的信息。否则就不可能知道骑手对比赛的影响。(彼得是骑师,虽然我从未听说过他,但我甚至不知道他长什么样,我只是觉得他会赢?)