Python RandomForest sk-learn: 卡了几小时,到底怎么回事?

我有一个很大的输入向量。目前,程序在运行 calibrated_clf.fit(x_train, y_train) 时已经卡了几小时。我不知道程序是死机了还是怎么回事。我怎样才能在 calibrated_clf.fit(x_train, y_train) 函数调用中打印出某种进度信息呢?

clf = ensemble.RandomForestClassifier(criterion = 'entropy', n_estimators = 350, max_features = 200,n_jobs=-1)calibrated_clf = CalibratedClassifierCV(clf, method='isotonic')print "Here 1"calibrated_clf.fit(x_train, y_train)print "Here 2"

x_train 是一个大小为 (51733, 250) 的向量。我在打印输出中卡在 “Here 1” 已经几个小时了。


回答:

你可以简单地将 verbose 设置为大于 0 的值。

来自

from sklearn.externals import joblibhelp(joblib.parallel)

verbose: int, 可选 详细程度级别:如果非零,将打印进度消息。当大于 50 时,输出将发送到 stdout。消息的频率随详细程度级别的增加而增加。如果大于 10,将报告所有迭代。

RandomForestClassifier 使用了 joblib 库中的 parallel 函数。

import numpyfrom sklearn.datasets import make_blobsfrom sklearn.ensemble import RandomForestClassifiern = 1000X, y = make_blobs(n_samples=n)X_train, y_train = X[0:n // 2], y[0:n // 2]X_valid, y_valid = X[n // 2:], y[n // 2:]clf = RandomForestClassifier(n_estimators=350, verbose=100)clf.fit(X_train, y_train)

输出

building tree 1 of 350[Parallel(n_jobs=1)]: Done   1 out of   1 | elapsed:    0.0s remaining:    0.0sbuilding tree 2 of 350[Parallel(n_jobs=1)]: Done   2 out of   2 | elapsed:    0.0s remaining:    0.0sbuilding tree 3 of 350[Parallel(n_jobs=1)]: Done   3 out of   3 | elapsed:    0.0s remaining:    0.0sbuilding tree 4 of 350[Parallel(n_jobs=1)]: Done   4 out of   4 | elapsed:    0.0s remaining:    0.0sbuilding tree 5 of 350[...]building tree 100 of 350building tree 101 of 350building tree 102 of 350building tree 103 of 350building tree 104 of 350[...]building tree 350 of 350[Parallel(n_jobs=1)]: Done 350 out of 350 | elapsed:    1.6s finished

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注