Exploring search results¶
After finishing a pipeline search, we can inspect the results. First, let’s build a search of 10 different pipelines to explore.
[1]:
import evalml
from evalml import AutoClassificationSearch
X, y = evalml.demos.load_breast_cancer()
automl = AutoClassificationSearch(objective="f1",
max_pipelines=5)
automl.search(X, y)
*****************************
* Beginning pipeline search *
*****************************
Optimizing for F1. Greater score is better.
Searching up to 5 pipelines.
✔ Cat Boost Classification Pipeline: 20%|██ | Elapsed:00:07
✔ Logistic Regression Pipeline: 40%|████ | Elapsed:00:08
✔ Logistic Regression Pipeline: 60%|██████ | Elapsed:00:08
▹ XGBoost Classification Pipeline: 80%|████████ | Elapsed:00:08
/home/docs/checkouts/readthedocs.org/user_builds/feature-labs-inc-evalml/envs/v0.8.0/lib/python3.7/site-packages/xgboost/sklearn.py:888: UserWarning:
The use of label encoder in XGBClassifier is deprecated and will be removed in a future release. To remove this warning, do the following: 1) Pass option use_label_encoder=False when constructing XGBClassifier object; and 2) Encode your labels (y) as integers starting with 0, i.e. 0, 1, 2, ..., [num_class - 1].
[19:57:05] WARNING: ../src/learner.cc:1061: Starting in XGBoost 1.3.0, the default evaluation metric used with the objective 'binary:logistic' was changed from 'error' to 'logloss'. Explicitly set eval_metric if you'd like to restore the old behavior.
/home/docs/checkouts/readthedocs.org/user_builds/feature-labs-inc-evalml/envs/v0.8.0/lib/python3.7/site-packages/xgboost/sklearn.py:888: UserWarning:
The use of label encoder in XGBClassifier is deprecated and will be removed in a future release. To remove this warning, do the following: 1) Pass option use_label_encoder=False when constructing XGBClassifier object; and 2) Encode your labels (y) as integers starting with 0, i.e. 0, 1, 2, ..., [num_class - 1].
[19:57:08] WARNING: ../src/learner.cc:1061: Starting in XGBoost 1.3.0, the default evaluation metric used with the objective 'binary:logistic' was changed from 'error' to 'logloss'. Explicitly set eval_metric if you'd like to restore the old behavior.
/home/docs/checkouts/readthedocs.org/user_builds/feature-labs-inc-evalml/envs/v0.8.0/lib/python3.7/site-packages/xgboost/sklearn.py:888: UserWarning:
The use of label encoder in XGBClassifier is deprecated and will be removed in a future release. To remove this warning, do the following: 1) Pass option use_label_encoder=False when constructing XGBClassifier object; and 2) Encode your labels (y) as integers starting with 0, i.e. 0, 1, 2, ..., [num_class - 1].
[19:57:10] WARNING: ../src/learner.cc:1061: Starting in XGBoost 1.3.0, the default evaluation metric used with the objective 'binary:logistic' was changed from 'error' to 'logloss'. Explicitly set eval_metric if you'd like to restore the old behavior.
✔ XGBoost Classification Pipeline: 80%|████████ | Elapsed:00:15
✔ Cat Boost Classification Pipeline: 100%|██████████| Elapsed:00:16
✔ Optimization finished 100%|██████████| Elapsed:00:16
View Rankings¶
A summary of all the pipelines built can be returned as a pandas DataFrame. It is sorted by score. EvalML knows based on our objective function whether higher or lower is better.
[2]:
automl.rankings
[2]:
id | pipeline_name | score | high_variance_cv | parameters | |
---|---|---|---|---|---|
0 | 2 | Logistic Regression Pipeline | 0.976371 | False | {'impute_strategy': 'median', 'penalty': 'l2',... |
1 | 1 | Logistic Regression Pipeline | 0.974941 | False | {'impute_strategy': 'median', 'penalty': 'l2',... |
2 | 0 | Cat Boost Classification Pipeline | 0.973464 | False | {'impute_strategy': 'most_frequent', 'n_estima... |
3 | 4 | Cat Boost Classification Pipeline | 0.966453 | False | {'impute_strategy': 'most_frequent', 'n_estima... |
4 | 3 | XGBoost Classification Pipeline | 0.935899 | False | {'impute_strategy': 'most_frequent', 'percent_... |
Describe Pipeline¶
Each pipeline is given an id
. We can get more information about any particular pipeline using that id
. Here, we will get more information about the pipeline with id = 0
.
[3]:
automl.describe_pipeline(0)
*************************************
* Cat Boost Classification Pipeline *
*************************************
Supported Problem Types: Binary Classification, Multiclass Classification
Model Family: CatBoost Classifier
Objective to Optimize: F1 (greater is better)
Number of features: 30
Pipeline Steps
==============
1. Simple Imputer
* impute_strategy : most_frequent
* fill_value : None
2. CatBoost Classifier
* n_estimators : 369
* eta : 0.4236547993389048
* max_depth : 6
Training
========
Training for Binary Classification problems.
Total training time (including CV): 7.0 seconds
Cross Validation
----------------
F1 Precision Recall AUC Log Loss MCC # Training # Testing
0 0.954 0.958 0.950 0.985 0.163 0.877 379.000 190.000
1 0.983 0.967 1.000 0.996 0.092 0.955 379.000 190.000
2 0.983 0.975 0.992 0.996 0.076 0.955 380.000 189.000
mean 0.973 0.967 0.980 0.993 0.110 0.929 - -
std 0.017 0.009 0.027 0.006 0.046 0.045 - -
coef of var 0.018 0.009 0.028 0.007 0.418 0.049 - -
Get Pipeline¶
We can get the object of any pipeline via their id
as well:
[4]:
automl.get_pipeline(0)
[4]:
<evalml.pipelines.classification.catboost.CatBoostClassificationPipeline at 0x7f434936a050>
Get best pipeline¶
If we specifically want to get the best pipeline, there is a convenient access
[5]:
automl.best_pipeline
[5]:
<evalml.pipelines.classification.logistic_regression.LogisticRegressionPipeline at 0x7f43480cb190>
Feature Importances¶
We can get the feature importances of the resulting pipeline
[6]:
pipeline = automl.get_pipeline(0)
pipeline.feature_importances
[6]:
feature | importance | |
---|---|---|
0 | worst radius | 26.873775 |
1 | worst texture | 7.612433 |
2 | mean concave points | 7.145519 |
3 | mean texture | 7.024352 |
4 | worst symmetry | 6.361393 |
5 | worst concave points | 4.964684 |
6 | worst perimeter | 3.983425 |
7 | mean fractal dimension | 3.922057 |
8 | radius error | 3.447547 |
9 | worst smoothness | 2.880494 |
10 | worst area | 2.583201 |
11 | worst concavity | 2.413365 |
12 | mean concavity | 2.407919 |
13 | mean radius | 2.284723 |
14 | mean compactness | 2.012972 |
15 | perimeter error | 1.918985 |
16 | mean symmetry | 1.740673 |
17 | worst compactness | 1.655886 |
18 | area error | 1.606211 |
19 | mean smoothness | 1.443077 |
20 | compactness error | 1.435200 |
21 | concave points error | 1.040189 |
22 | mean area | 0.965964 |
23 | smoothness error | 0.834013 |
24 | worst fractal dimension | 0.436113 |
25 | fractal dimension error | 0.401008 |
26 | mean perimeter | 0.284681 |
27 | texture error | 0.182944 |
28 | symmetry error | 0.118948 |
29 | concavity error | 0.018248 |
We can also create a bar plot of the feature importances
[7]:
pipeline.feature_importance_graph(pipeline)
Plot ROC¶
For binary classification tasks, we can also plot the ROC plot of a specific pipeline:
[8]:
automl.plot.generate_roc_plot(0)
Access raw results¶
You can also get access to all the underlying data like this
[9]:
automl.results
[9]:
{'pipeline_results': {0: {'id': 0,
'pipeline_name': 'Cat Boost Classification Pipeline',
'pipeline_summary': 'CatBoost Classifier w/ Simple Imputer',
'parameters': {'impute_strategy': 'most_frequent',
'n_estimators': 369,
'eta': 0.4236547993389048,
'max_depth': 6},
'score': 0.9734636352012647,
'high_variance_cv': False,
'training_time': 6.997751235961914,
'cv_data': [{'all_objective_scores': OrderedDict([('F1',
0.9535864978902954),
('Precision', 0.9576271186440678),
('Recall', 0.9495798319327731),
('AUC', 0.9850869925434962),
('Log Loss', 0.16289034062986435),
('MCC', 0.8767221685540966),
('ROC',
(array([0. , 0. , 0. , 0.01408451, 0.01408451,
0.02816901, 0.02816901, 0.05633803, 0.05633803, 0.07042254,
0.07042254, 0.08450704, 0.08450704, 0.14084507, 0.14084507,
1. ]),
array([0. , 0.00840336, 0.34453782, 0.34453782, 0.84033613,
0.84033613, 0.93277311, 0.93277311, 0.94117647, 0.94117647,
0.98319328, 0.98319328, 0.99159664, 0.99159664, 1. ,
1. ]),
array([1.99997424e+00, 9.99974244e-01, 9.99756520e-01, 9.99745844e-01,
9.88277062e-01, 9.81932629e-01, 7.35284284e-01, 6.10443075e-01,
5.94587484e-01, 5.82814719e-01, 9.45094859e-02, 4.30750748e-02,
3.99827348e-02, 1.48833097e-02, 1.48214210e-02, 3.31091266e-05]))),
('Confusion Matrix',
0 1
0 66 5
1 6 113),
('# Training', 379),
('# Testing', 190)]),
'score': 0.9535864978902954},
{'all_objective_scores': OrderedDict([('F1', 0.9834710743801653),
('Precision', 0.967479674796748),
('Recall', 1.0),
('AUC', 0.996330926736892),
('Log Loss', 0.09239450377828266),
('MCC', 0.9554966130892879),
('ROC',
(array([0. , 0. , 0. , 0.01408451, 0.01408451,
0.02816901, 0.02816901, 0.04225352, 0.04225352, 1. ]),
array([0. , 0.00840336, 0.80672269, 0.80672269, 0.94957983,
0.94957983, 0.98319328, 0.98319328, 1. , 1. ]),
array([1.99998792e+00, 9.99987915e-01, 9.98961984e-01, 9.98941711e-01,
9.90392310e-01, 9.85250779e-01, 9.51254710e-01, 9.38505542e-01,
8.48666034e-01, 1.18603531e-05]))),
('Confusion Matrix',
0 1
0 67 4
1 0 119),
('# Training', 379),
('# Testing', 190)]),
'score': 0.9834710743801653},
{'all_objective_scores': OrderedDict([('F1', 0.9833333333333334),
('Precision', 0.9752066115702479),
('Recall', 0.9915966386554622),
('AUC', 0.9962785114045618),
('Log Loss', 0.07598028585889369),
('MCC', 0.9546019995535027),
('ROC',
(array([0. , 0. , 0. , 0.01428571, 0.01428571,
0.02857143, 0.02857143, 0.04285714, 0.04285714, 0.07142857,
0.07142857, 1. ]),
array([0. , 0.00840336, 0.84033613, 0.84033613, 0.94957983,
0.94957983, 0.96638655, 0.96638655, 0.99159664, 0.99159664,
1. , 1. ]),
array([1.99998096e+00, 9.99980963e-01, 9.93261789e-01, 9.93003955e-01,
9.37059262e-01, 9.21284961e-01, 8.00155771e-01, 7.72884615e-01,
5.89460929e-01, 4.27271558e-01, 2.71432274e-01, 1.61384342e-05]))),
('Confusion Matrix',
0 1
0 67 3
1 1 118),
('# Training', 380),
('# Testing', 189)]),
'score': 0.9833333333333334}]},
1: {'id': 1,
'pipeline_name': 'Logistic Regression Pipeline',
'pipeline_summary': 'Logistic Regression Classifier w/ One Hot Encoder + Simple Imputer + Standard Scaler',
'parameters': {'impute_strategy': 'median',
'penalty': 'l2',
'C': 9.636990977405285},
'score': 0.9749409107621198,
'high_variance_cv': False,
'training_time': 1.418722152709961,
'cv_data': [{'all_objective_scores': OrderedDict([('F1',
0.9666666666666667),
('Precision', 0.9586776859504132),
('Recall', 0.9747899159663865),
('AUC', 0.9888744230086401),
('Log Loss', 0.16122177593368092),
('MCC', 0.9097672817424011),
('ROC',
(array([0. , 0. , 0. , 0.01408451, 0.01408451,
0.02816901, 0.02816901, 0.04225352, 0.04225352, 0.05633803,
0.05633803, 0.07042254, 0.07042254, 0.21126761, 0.21126761,
1. ]),
array([0. , 0.00840336, 0.59663866, 0.59663866, 0.86554622,
0.86554622, 0.91596639, 0.91596639, 0.94117647, 0.94117647,
0.97478992, 0.97478992, 0.99159664, 0.99159664, 1. ,
1. ]),
array([2.00000000e+00, 1.00000000e+00, 9.99832384e-01, 9.99827305e-01,
9.78642320e-01, 9.78473934e-01, 8.85901577e-01, 8.46173258e-01,
8.11073923e-01, 7.85780332e-01, 5.55932686e-01, 5.12973949e-01,
3.58737371e-01, 3.80356180e-04, 2.16404977e-04, 3.27364828e-24]))),
('Confusion Matrix',
0 1
0 66 5
1 3 116),
('# Training', 379),
('# Testing', 190)]),
'score': 0.9666666666666667},
{'all_objective_scores': OrderedDict([('F1', 0.979253112033195),
('Precision', 0.9672131147540983),
('Recall', 0.9915966386554622),
('AUC', 0.9983429991714996),
('Log Loss', 0.054377948871000094),
('MCC', 0.943843520216036),
('ROC',
(array([0. , 0. , 0. , 0.01408451, 0.01408451,
0.02816901, 0.02816901, 0.05633803, 0.05633803, 0.09859155,
0.09859155, 1. ]),
array([0. , 0.00840336, 0.96638655, 0.96638655, 0.97478992,
0.97478992, 0.98319328, 0.98319328, 0.99159664, 0.99159664,
1. , 1. ]),
array([2.00000000e+00, 1.00000000e+00, 9.02530651e-01, 8.56837110e-01,
8.32273897e-01, 7.83350982e-01, 7.29357685e-01, 5.16534638e-01,
5.11585048e-01, 2.30456831e-01, 2.07185770e-01, 4.44775362e-44]))),
('Confusion Matrix',
0 1
0 67 4
1 1 118),
('# Training', 379),
('# Testing', 190)]),
'score': 0.979253112033195},
{'all_objective_scores': OrderedDict([('F1', 0.9789029535864979),
('Precision', 0.9830508474576272),
('Recall', 0.9747899159663865),
('AUC', 0.9960384153661465),
('Log Loss', 0.07207639820328837),
('MCC', 0.9435040132749904),
('ROC',
(array([0. , 0. , 0. , 0.01428571, 0.01428571,
0.02857143, 0.02857143, 0.04285714, 0.04285714, 1. ]),
array([0. , 0.00840336, 0.77310924, 0.77310924, 0.96638655,
0.96638655, 0.98319328, 0.98319328, 1. , 1. ]),
array([2.00000000e+00, 9.99999998e-01, 9.91123955e-01, 9.89983111e-01,
5.77651350e-01, 5.45079286e-01, 4.73073055e-01, 4.09422136e-01,
3.23433980e-01, 1.26109142e-17]))),
('Confusion Matrix',
0 1
0 68 2
1 3 116),
('# Training', 380),
('# Testing', 189)]),
'score': 0.9789029535864979}]},
2: {'id': 2,
'pipeline_name': 'Logistic Regression Pipeline',
'pipeline_summary': 'Logistic Regression Classifier w/ One Hot Encoder + Simple Imputer + Standard Scaler',
'parameters': {'impute_strategy': 'median',
'penalty': 'l2',
'C': 4.804971952026824},
'score': 0.976371018670262,
'high_variance_cv': False,
'training_time': 0.3552417755126953,
'cv_data': [{'all_objective_scores': OrderedDict([('F1',
0.9666666666666667),
('Precision', 0.9586776859504132),
('Recall', 0.9747899159663865),
('AUC', 0.9899396378269617),
('Log Loss', 0.13000491300733263),
('MCC', 0.9097672817424011),
('ROC',
(array([0. , 0. , 0. , 0.01408451, 0.01408451,
0.02816901, 0.02816901, 0.04225352, 0.04225352, 0.07042254,
0.07042254, 0.12676056, 0.12676056, 1. ]),
array([0. , 0.00840336, 0.59663866, 0.59663866, 0.85714286,
0.85714286, 0.93277311, 0.93277311, 0.96638655, 0.96638655,
0.99159664, 0.99159664, 1. , 1. ]),
array([2.00000000e+00, 1.00000000e+00, 9.99513300e-01, 9.99411733e-01,
9.72040206e-01, 9.64245540e-01, 8.24677844e-01, 8.13137106e-01,
6.23606303e-01, 5.74962709e-01, 3.88150049e-01, 1.05841228e-01,
8.88048039e-03, 1.95380932e-20]))),
('Confusion Matrix',
0 1
0 66 5
1 3 116),
('# Training', 379),
('# Testing', 190)]),
'score': 0.9666666666666667},
{'all_objective_scores': OrderedDict([('F1', 0.979253112033195),
('Precision', 0.9672131147540983),
('Recall', 0.9915966386554622),
('AUC', 0.9986980707776069),
('Log Loss', 0.051792807657331755),
('MCC', 0.943843520216036),
('ROC',
(array([0. , 0. , 0. , 0.01408451, 0.01408451,
0.04225352, 0.04225352, 0.08450704, 0.08450704, 1. ]),
array([0. , 0.00840336, 0.96638655, 0.96638655, 0.98319328,
0.98319328, 0.99159664, 0.99159664, 1. , 1. ]),
array([2.00000000e+00, 9.99999999e-01, 9.15699240e-01, 8.64894910e-01,
7.51407817e-01, 6.63047926e-01, 6.26895191e-01, 4.06750268e-01,
3.09309176e-01, 1.59809498e-36]))),
('Confusion Matrix',
0 1
0 67 4
1 1 118),
('# Training', 379),
('# Testing', 190)]),
'score': 0.979253112033195},
{'all_objective_scores': OrderedDict([('F1', 0.9831932773109243),
('Precision', 0.9831932773109243),
('Recall', 0.9831932773109243),
('AUC', 0.9965186074429773),
('Log Loss', 0.06435139219399516),
('MCC', 0.9546218487394958),
('ROC',
(array([0. , 0. , 0. , 0.01428571, 0.01428571,
0.02857143, 0.02857143, 0.04285714, 0.04285714, 1. ]),
array([0. , 0.00840336, 0.78151261, 0.78151261, 0.98319328,
0.98319328, 0.99159664, 0.99159664, 1. , 1. ]),
array([1.99999996e+00, 9.99999962e-01, 9.84583454e-01, 9.76666534e-01,
5.25351686e-01, 5.03605398e-01, 4.55872870e-01, 4.36470183e-01,
4.28464345e-01, 2.38837351e-14]))),
('Confusion Matrix',
0 1
0 68 2
1 2 117),
('# Training', 380),
('# Testing', 189)]),
'score': 0.9831932773109243}]},
3: {'id': 3,
'pipeline_name': 'XGBoost Classification Pipeline',
'pipeline_summary': 'XGBoost Classifier w/ One Hot Encoder + Simple Imputer + RF Classifier Select From Model',
'parameters': {'impute_strategy': 'most_frequent',
'percent_features': 0.08032569761590808,
'threshold': 'mean',
'eta': 0.020218397440325723,
'max_depth': 20,
'min_child_weight': 9.614396430577418,
'n_estimators': 848},
'score': 0.9358991763960539,
'high_variance_cv': False,
'training_time': 6.885083913803101,
'cv_data': [{'all_objective_scores': OrderedDict([('F1',
0.9224137931034483),
('Precision', 0.9469026548672567),
('Recall', 0.8991596638655462),
('AUC', 0.9666232690259202),
('Log Loss', 0.2562118422632155),
('MCC', 0.8027688833516422),
('ROC',
(array([0. , 0.01408451, 0.01408451, 0.01408451, 0.01408451,
0.01408451, 0.01408451, 0.01408451, 0.04225352, 0.04225352,
0.07042254, 0.07042254, 0.12676056, 0.12676056, 0.12676056,
0.15492958, 0.16901408, 0.18309859, 0.21126761, 0.25352113,
0.28169014, 0.36619718, 0.3943662 , 0.3943662 , 0.42253521,
0.45070423, 1. ]),
array([0. , 0.54621849, 0.62184874, 0.63865546, 0.65546218,
0.66386555, 0.71428571, 0.7394958 , 0.7394958 , 0.8487395 ,
0.86554622, 0.89915966, 0.89915966, 0.90756303, 0.94117647,
0.94117647, 0.96638655, 0.96638655, 0.96638655, 0.98319328,
0.99159664, 0.99159664, 0.99159664, 1. , 1. ,
1. , 1. ]),
array([1.9729209 , 0.97292095, 0.9717207 , 0.9710014 , 0.970229 ,
0.9697926 , 0.9423327 , 0.9413457 , 0.93782085, 0.92524594,
0.6996592 , 0.5642555 , 0.40121877, 0.28772253, 0.27541634,
0.16674423, 0.15323758, 0.06644133, 0.06502564, 0.04827413,
0.04722596, 0.04633046, 0.04199466, 0.03978153, 0.03914706,
0.03638416, 0.03603544], dtype=float32))),
('Confusion Matrix',
0 1
0 65 6
1 12 107),
('# Training', 379),
('# Testing', 190)]),
'score': 0.9224137931034483},
{'all_objective_scores': OrderedDict([('F1', 0.937007874015748),
('Precision', 0.8814814814814815),
('Recall', 1.0),
('AUC', 0.9770978814060836),
('Log Loss', 0.23696691198764663),
('MCC', 0.826339982903411),
('ROC',
(array([0. , 0. , 0. , 0.05633803, 0.05633803,
0.05633803, 0.08450704, 0.08450704, 0.14084507, 0.15492958,
0.15492958, 0.16901408, 0.16901408, 0.23943662, 0.26760563,
0.29577465, 0.32394366, 0.38028169, 0.43661972, 0.46478873,
0.49295775, 1. ]),
array([0. , 0.49579832, 0.55462185, 0.85714286, 0.89915966,
0.90756303, 0.90756303, 0.92436975, 0.96638655, 0.96638655,
0.98319328, 0.99159664, 1. , 1. , 1. ,
1. , 1. , 1. , 1. , 1. ,
1. , 1. ]),
array([1.9701126 , 0.97011256, 0.96989095, 0.9684937 , 0.9554615 ,
0.92179286, 0.9034773 , 0.83730716, 0.8372069 , 0.75368625,
0.63067174, 0.62702805, 0.61390054, 0.49871758, 0.48841092,
0.42385587, 0.41924828, 0.08368076, 0.04792023, 0.0469924 ,
0.04657101, 0.04570549], dtype=float32))),
('Confusion Matrix',
0 1
0 55 16
1 0 119),
('# Training', 379),
('# Testing', 190)]),
'score': 0.937007874015748},
{'all_objective_scores': OrderedDict([('F1', 0.9482758620689655),
('Precision', 0.9734513274336283),
('Recall', 0.9243697478991597),
('AUC', 0.9885954381752702),
('Log Loss', 0.1391644817456682),
('MCC', 0.8681704699715063),
('ROC',
(array([0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. ,
0.01428571, 0.01428571, 0.04285714, 0.04285714, 0.07142857,
0.07142857, 0.08571429, 0.1 , 0.1 , 0.12857143,
0.12857143, 0.17142857, 0.2 , 0.22857143, 0.22857143,
0.28571429, 0.34285714, 0.38571429, 0.41428571, 0.42857143,
0.47142857, 0.55714286, 0.61428571, 1. ]),
array([0. , 0.28571429, 0.42016807, 0.44537815, 0.48739496,
0.50420168, 0.55462185, 0.59663866, 0.60504202, 0.67226891,
0.71428571, 0.74789916, 0.83193277, 0.85714286, 0.87394958,
0.87394958, 0.90756303, 0.90756303, 0.93277311, 0.93277311,
0.94117647, 0.94117647, 0.95798319, 0.96638655, 0.96638655,
0.97478992, 0.97478992, 0.97478992, 0.97478992, 1. ,
1. , 1. , 1. , 1. , 1. ,
1. , 1. , 1. , 1. ]),
array([1.9841778 , 0.9841778 , 0.9838165 , 0.98342854, 0.9833071 ,
0.98211664, 0.9810844 , 0.9787828 , 0.97762203, 0.9773312 ,
0.975222 , 0.97440153, 0.89735514, 0.8955815 , 0.86498946,
0.84353524, 0.810082 , 0.67681974, 0.49621513, 0.4496832 ,
0.44711152, 0.4437709 , 0.43844405, 0.4295119 , 0.39135826,
0.33074102, 0.33018234, 0.31763443, 0.29066208, 0.18481019,
0.03418758, 0.03268759, 0.0274495 , 0.0270752 , 0.0269705 ,
0.02627881, 0.02563108, 0.02260989, 0.0213987 ], dtype=float32))),
('Confusion Matrix',
0 1
0 67 3
1 9 110),
('# Training', 380),
('# Testing', 189)]),
'score': 0.9482758620689655}]},
4: {'id': 4,
'pipeline_name': 'Cat Boost Classification Pipeline',
'pipeline_summary': 'CatBoost Classifier w/ Simple Imputer',
'parameters': {'impute_strategy': 'most_frequent',
'n_estimators': 109,
'eta': 0.7991585642167238,
'max_depth': 4},
'score': 0.9664525764397752,
'high_variance_cv': False,
'training_time': 0.9475922584533691,
'cv_data': [{'all_objective_scores': OrderedDict([('F1',
0.9617021276595743),
('Precision', 0.9741379310344828),
('Recall', 0.9495798319327731),
('AUC', 0.9865072789679252),
('Log Loss', 0.16313398857144826),
('MCC', 0.9001633057441626),
('ROC',
(array([0. , 0. , 0. , 0.01408451, 0.01408451,
0.02816901, 0.02816901, 0.04225352, 0.04225352, 0.05633803,
0.05633803, 0.07042254, 0.07042254, 0.08450704, 0.08450704,
1. ]),
array([0. , 0.00840336, 0.34453782, 0.34453782, 0.84033613,
0.84033613, 0.93277311, 0.93277311, 0.96638655, 0.96638655,
0.97478992, 0.97478992, 0.98319328, 0.98319328, 1. ,
1. ]),
array([1.99999633e+00, 9.99996325e-01, 9.99942123e-01, 9.99941223e-01,
9.83889653e-01, 9.82884213e-01, 7.60889858e-01, 7.00312819e-01,
4.44799151e-01, 4.02629215e-01, 3.25498190e-01, 2.40859456e-01,
7.31464857e-02, 4.01578493e-02, 1.91156164e-02, 3.89213440e-06]))),
('Confusion Matrix',
0 1
0 68 3
1 6 113),
('# Training', 379),
('# Testing', 190)]),
'score': 0.9617021276595743},
{'all_objective_scores': OrderedDict([('F1', 0.9626556016597511),
('Precision', 0.9508196721311475),
('Recall', 0.9747899159663865),
('AUC', 0.9874541365842111),
('Log Loss', 0.14974588678331058),
('MCC', 0.8984549429340701),
('ROC',
(array([0. , 0. , 0. , 0.01408451, 0.01408451,
0.02816901, 0.02816901, 0.04225352, 0.04225352, 0.07042254,
0.07042254, 0.08450704, 0.08450704, 1. ]),
array([0. , 0.00840336, 0.41176471, 0.41176471, 0.83193277,
0.83193277, 0.95798319, 0.95798319, 0.96638655, 0.96638655,
0.97478992, 0.97478992, 1. , 1. ]),
array([1.99999714e+00, 9.99997136e-01, 9.99900758e-01, 9.99895250e-01,
9.97706259e-01, 9.97275707e-01, 9.75388340e-01, 9.39646167e-01,
9.37469604e-01, 8.54371454e-01, 8.53389442e-01, 8.42251927e-01,
3.54062858e-01, 2.61300949e-06]))),
('Confusion Matrix',
0 1
0 65 6
1 3 116),
('# Training', 379),
('# Testing', 190)]),
'score': 0.9626556016597511},
{'all_objective_scores': OrderedDict([('F1', 0.975),
('Precision', 0.9669421487603306),
('Recall', 0.9831932773109243),
('AUC', 0.9980792316926771),
('Log Loss', 0.06313235445917639),
('MCC', 0.9317727223276882),
('ROC',
(array([0. , 0. , 0. , 0.01428571, 0.01428571,
0.02857143, 0.02857143, 0.05714286, 0.05714286, 0.07142857,
0.07142857, 1. ]),
array([0. , 0.00840336, 0.95798319, 0.95798319, 0.96638655,
0.96638655, 0.97478992, 0.97478992, 0.99159664, 0.99159664,
1. , 1. ]),
array([1.99999867e+00, 9.99998668e-01, 9.22815771e-01, 8.86401336e-01,
8.72320864e-01, 8.49344800e-01, 7.87185615e-01, 7.06786188e-01,
4.73751084e-01, 3.98242251e-01, 3.72969449e-01, 1.06636001e-06]))),
('Confusion Matrix',
0 1
0 66 4
1 2 117),
('# Training', 380),
('# Testing', 189)]),
'score': 0.975}]}},
'search_order': [0, 1, 2, 3, 4]}