我有一个包含训练数据的大文件。我很担心,当我使用这段代码时:
clf = RandomForestClassifier()
for chunk in reader:
clf.fit(chunk, target)
clf会为所有块生成模型还是只生成当前模型?对于增量学习,我应该只使用带有partial_fit()方法的分类器吗?我应该如何规范化列车数据(以这种方式为整个数据构建规范化器,不仅仅是当前的块)?
答案 0 :(得分:0)
是的,这只适用于partial_fit
的分类器;根据您的规范化程度,您可以逐块执行此操作(例如scaling by a fixed factor或执行label encoding)。
答案 1 :(得分:0)
是的,对于增量学习,您只能使用实现partial_fit的分类器。
StandardScaler有partial_fit方法,因此可以在线应用。我不确定这是否是正确的方法,因为转型会随着时间的推移而改变。如果您不希望数据分布发生很大变化,您还可以在数据子集上放置任何缩放器,并在以后使用它。
另请注意,RandomForestClassifier(与所有基于树的分类器一样)是规模不变的,因此不清楚标准化对它有什么影响。