将估算器重置为先前值scikit learn

时间:2017-10-02 15:35:15

标签: python machine-learning scikit-learn

tmp_classifier = classifier_nn.fit(x,y)
for elem in step:
    classifier_nn.partial_fit(new_x, new_y)
    classifier_nn = tmp_classifier

我想知道我的估算方法是否是"重置"到之前的状态,即预训练的分类器(classifier_nn.fit(x,y)。

1 个答案:

答案 0 :(得分:1)

不,没有重置,因为self.fit返回 self ,而不是副本。换句话说,tmp_classifier和classifier_nn是对同一对象的引用。因此,当你调用部分拟合时,你会修改两者,而最终的赋值什么都不做。

您需要做的是在拟合后克隆分类器。

classifier_nn.fit(x,y)
tmp_classifier = deepcopy(classifier_nn)
for elem in step:
    classifier_nn.partial_fit(new_x, new_y)
    classifier_nn = tmp_classifier

应该有用。