的基本模式(摘自Miriam的答案):
clf = RandomForestClassifier(warm_start=True)clf.fit(get_data())clf.fit(get_more_data())
将是正确使用API的方式。
但是这里有一个问题。
正如文档所说的那样:
这意味着,唯一
warm_start可以为您做的就是添加新的DecisionTree。以前所有的树木似乎都没有被破坏过!
让我们通过一些来源进行检查:
n_more_estimators = self.n_estimators - len(self.estimators_) if n_more_estimators < 0: raise ValueError('n_estimators=%d must be larger or equal to ' 'len(estimators_)=%d when warm_start==True' % (self.n_estimators, len(self.estimators_))) elif n_more_estimators == 0: warn("Warm-start fitting without increasing n_estimators does not " "fit new trees.")
这基本上告诉我们,在进行新的拟合之前,您需要增加估计量!
我不知道sklearn在这里有什么样的用途。我不确定,如果合适,增加内部变量并再次合适是否正确使用,但我以某种方式对此表示怀疑(尤其
n_estimators是不是公共类变量)。
对于这里的核心学习而言,您的基本方法(关于该库和该分类器)可能不是一个好主意!我不会进一步追求这一点。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)