通过增量学习保留过去的学习

数据挖掘 机器学习 Python scikit-学习 在线学习
2022-02-16 18:12:56

我建立了一个机器学习模型,目标是预测下一周的目标。通常,新数据将在每周结束时进入并进行处理,并且与以前的数据结构相同。

我没有针对每周的预测从头开始重新训练模型,而是考虑应用增量学习方法,这样过去的学习不会被完全丢弃,并且模型会(可能)随着时间的推移而提高性能。我正在使用sklearn, kerasPython 3。

几个问题:

  1. 假设我们对数据集 1 和随后的数据集 2 进行了增量学习。如果两个数据集实际上都可用,那么性能是否会与在没有任何增量学习的情况下在两个数据集上训练模型时完全相同?(假设没有数据洗牌)

  2. 专用的增量学习包是否有任何优势,例如creme而不是简单地保存/加载模型和使用sklearn

  3. 随着时间的增加,数据中可能会出现漂移或模式变化(即某些特征可能无法预测,而另一些则变得更具预测性)。是否可以强制增量学习模型更重地衡量当前数据集,同时忽略过去的一些学习?
  4. 这里的文档对于实际实现来说有点混乱。何时warm_start=True,调用.fit()会更改模型参数,但数据应该“或多或少保持不变”,而调用.partial_fit()会保持模型参数固定,数据不同。我的目标是改变模型参数(同时保留一些过去的学习)并适应新的数据集——我应该调用哪一个?
0个回答
没有发现任何回复~