我有客户人口统计数据,其中包括:年龄,邮政编码的前半部分,职业(有定义的可能职业列表),等等。每个月我都会得到一批1000行的这类数据(没有标签),我需要将这些数据放入经过训练的模型中,以预测新批数据集中的每个人最有可能购买的项目(多类分类问题)。
每次收到这些数据时,我都会比较新旧数据之间的汇总统计数据,并使用假设检验来考察分类变量分布的任何变化。如果我的测试显示,我的新一批数据的汇总统计数据或分布到我的培训集有很大的不同。
新一批只针对25岁以下的人,而我的培训集则包含所有年龄组。新一批培训对象是来自英国某一特定地区的人,而我的培训集则包含了英国所有可能的地点。我是否需要:
对我的培训集,或我的整体工作流程做任何修改,以适应这一点?
据我所知,这是数据漂移。我说的对吗?
如果输入的批次数据被贴上标签,所以我们知道这些人买了什么东西,而且每种产品的销售比例有很大的差异,我能做些什么来量化这些数据,而不是天真地将这些新数据添加到培训集和再培训我的模型呢?
谢谢
发布于 2022-09-14 12:00:54
正如您所建议的那样,这种情况可能会导致您的监控系统出现数据漂移。为了评估这个场景,让我们对某些类型的数据漂移进行分类:
监测这些漂移的方法可以像你所说的那样通过假设检验来实现(例如,Kolmogor-Smirnov试验,人口稳定指数等),在这里你定义了警告阈值的程度。
重点是:这种漂移监测的目标是什么?通常,建议是在发生这种漂移时重新培训模型:它可能会或可能不会改善模型性能,但您必须确保使用新的数据更新模型。当然,其他目标也是了解更新的数据统计信息。
尽管如此,在这种客户子集老化的场景中,虽然模型使用了更“完整”的数据集,但是您正在对用于培训模型的整个群体的子集进行推断,因此您的模型仍然可以足够有效(除非这个新场景变成了常规场景,因此可以使用这种新的更具体的数据来训练更多的自定义模型)。
https://datascience.stackexchange.com/questions/114415
复制相似问题