Ngay bây giờ tôi đang chạy một tìm kiếm lưới khá tích cực. Tôi có n=135 samples
và tôi đang chạy 23 folds
bằng danh sách kiểm tra/kiểm tra chéo xác thực tùy chỉnh. Tôi có số verbose=2
.Làm thế nào để ước tính tiến độ của GridSearchCV từ đầu ra tiết trong Scikit-Learn?
Sau đây là những gì tôi chạy:
param_test = {"loss":["deviance"],
'learning_rate':[0.01, 0.025, 0.05, 0.075, 0.1, 0.15, 0.2],
"min_samples_split": np.linspace(0.1, 0.5, 12),
"min_samples_leaf": np.linspace(0.1, 0.5, 12),
"max_depth":[3,5,8],
"max_features":["log2","sqrt"],
"min_impurity_split":[5e-6, 1e-7, 5e-7],
"criterion": ["friedman_mse", "mae"],
"subsample":[0.5, 0.618, 0.8, 0.85, 0.9, 0.95, 1.0],
"n_estimators":[10]}
Mod_gsearch = GridSearchCV(estimator = GradientBoostingClassifier(),
param_grid = param_test, scoring="accuracy",n_jobs=32, iid=False, cv=cv_indices, verbose=2)
tôi đã xem xét kết quả tiết trong stdout
:
$head gridsearch.o8475533
Fitting 23 folds for each of 254016 candidates, totalling 5842368 fits
Dựa trên điều này, có vẻ như có 5842368
hoán vị của chéo các cặp xác thực sử dụng tham số lưới của tôi.
$ grep -c "[CV]" gridsearch.o8475533
7047332
Dường như có khoảng 7 triệu chéo kiểm chứng thực đã được thực hiện cho đến nay nhưng đó là nhiều hơn 5842368
tổng phù hợp ...
7047332/5842368 = 1.2062458236
Sau đó, khi tôi nhìn vào các tập tin stderr
:
$ cat ./gridsearch.e8475533
[Parallel(n_jobs=32)]: Done 132 tasks | elapsed: 1.2s
[Parallel(n_jobs=32)]: Done 538 tasks | elapsed: 2.8s
[Parallel(n_jobs=32)]: Done 1104 tasks | elapsed: 4.8s
[Parallel(n_jobs=32)]: Done 1834 tasks | elapsed: 7.9s
[Parallel(n_jobs=32)]: Done 2724 tasks | elapsed: 11.6s
...
[Parallel(n_jobs=32)]: Done 3396203 tasks | elapsed: 250.2min
[Parallel(n_jobs=32)]: Done 3420769 tasks | elapsed: 276.5min
[Parallel(n_jobs=32)]: Done 3447309 tasks | elapsed: 279.3min
[Parallel(n_jobs=32)]: Done 3484240 tasks | elapsed: 282.3min
[Parallel(n_jobs=32)]: Done 3523550 tasks | elapsed: 285.3min
mục tiêu của tôi:
Làm cách nào để biết tiến trình tìm kiếm của tôi liên quan đến tổng thời gian có thể mất?
Những gì tôi đang bối rối về:
mối quan hệ giữa [CV]
dòng trong stdout
, tổng số viên phù hợp trong stdout
, và nhiệm vụ trong stderr
là gì?