2024-04-29 11:04:57 发布
网友
在python中有一个机器学习模型,其中历史数据用于训练模型。使用此回归模型,应给出连续变量的预测
使用参数^{},可以在拟合前对数据集的部分进行称重。在我的例子中,我用因子3将数据集的最近一半加权到另一半。考虑数据集按日期排序。
sample_weight = np.ones(len(X_train)) sample_weight[int(len(sample_weight)*0.5):] = 3
然后将参数指定给fit函数
fit
decision_regressor.fit(X_train, y_train, sample_weight)
理论上,您可以在回归模型中使用权重来解释旧数据中不可靠的度量。但根据您使用的统计程序和软件包,这可能很难实现
或者,通过使用分层样本,您可以在训练语料库的组成中为最近的数据提供更高的概率。如果你从50%的最近案例、30%的最近案例和20%的旧案例组成训练语料库,你会自动赋予最近案例更高的权重。这可能是一种更可行、更直接的方法,可以使您的模型与最近的案例保持一致
无论如何,我建议比较近期和较老案例的培训数据,以确定近期数据导致变化的地方。也就是说,在最近的案例中,哪些特征与以前没有的相关,哪些特征失去了相关性。这可能会告诉您有关机器学习模型的更多内容,并允许您更好地对其进行自定义
也就是说,这个问题更适合交叉验证或数据科学,而不是StackOverflow,因为它不涉及代码
使用参数^{} ,可以在拟合前对数据集的部分进行称重。在我的例子中,我用因子3将数据集的最近一半加权到另一半。考虑数据集按日期排序。
然后将参数指定给
fit
函数理论上,您可以在回归模型中使用权重来解释旧数据中不可靠的度量。但根据您使用的统计程序和软件包,这可能很难实现
或者,通过使用分层样本,您可以在训练语料库的组成中为最近的数据提供更高的概率。如果你从50%的最近案例、30%的最近案例和20%的旧案例组成训练语料库,你会自动赋予最近案例更高的权重。这可能是一种更可行、更直接的方法,可以使您的模型与最近的案例保持一致
无论如何,我建议比较近期和较老案例的培训数据,以确定近期数据导致变化的地方。也就是说,在最近的案例中,哪些特征与以前没有的相关,哪些特征失去了相关性。这可能会告诉您有关机器学习模型的更多内容,并允许您更好地对其进行自定义
也就是说,这个问题更适合交叉验证或数据科学,而不是StackOverflow,因为它不涉及代码
相关问题 更多 >
编程相关推荐