有非常特定的分类器或回归类,它们直接报告算法的剩余时间或进度(迭代次数等)。可以通过verbose=2
向各个模型的构造函数传递(任何大于1的高数字)选项来打开大多数功能。 此行为符合sklearn-0.14。早期版本的详细输出有些不同(尽管仍然有用)。
最好的例子是ensemble.RandomForestClassifier
or ensemble.GradientBoostingClassifier`,它打印到目前为止构建的树数和剩余时间。
clf = ensemble.GradientBoostingClassifier(verbose=3)
clf.fit(X, y)
Out:
Iter Train Loss Remaining Time
1 0.0769 0.10s
...
要么
clf = ensemble.RandomForestClassifier(verbose=3)
clf.fit(X, y)
Out:
building tree 1 of 100
...
此进度信息对于估计总时间非常有用。
然后还有其他模型,例如SVM,可打印完成的优化迭代次数,但不直接报告剩余时间。
clf = svm.SVC(verbose=2)
clf.fit(X, y)
Out:
*
optimization finished, #iter = 1
obj = -1.802585, rho = 0.000000
nSV = 2, nBSV = 2
...
据我所知,线性模型之类的模型不提供此类诊断信息。