28793deaf98b37ef5d9425c1ec975a11b397e465,dask_ml/model_selection/_incremental.py,BaseIncrementalSearchCV,_get_best,#BaseIncrementalSearchCV#Any#Any#,505
Before Change
// type: (Dict, Dict) -> Estimator
Select the best estimator from the set of estimators.
best_model_id = first(results.info)
key = operator.itemgetter("model_id")
best_index = -1
// history_results is sorted by (model_id, partial_fit_calls)
// best is the model_id with the highest partial fit calls
for k, v in itertools.groupby(history_results, key=key):
v = list(v)
best_index += len(v)
if k == best_model_id:
break
return results.models[best_model_id], best_index
def _process_results(self, results):
Called with the output of `fit` immediately after it finishes.
After Change
// Could use max(scores, key=score.get), but what if score is repeated?
// Happens in the test case a lot
model_ids = list(scores.keys())
scores = [scores[k] for k in model_ids]
model_idx = np.argmax(scores)
best_model_id = model_ids[model_idx]
best_est = results.models[best_model_id]
idx = cv_results["model_id"] == best_model_id
assert idx.sum() == 1
best_idx = np.argmax(idx)
return best_idx, best_est
In pattern: SUPERPATTERN
Frequency: 3
Non-data size: 10
Instances
Project Name: dask/dask-ml
Commit Name: 28793deaf98b37ef5d9425c1ec975a11b397e465
Time: 2018-10-13
Author: github@stsievert.com
File Name: dask_ml/model_selection/_incremental.py
Class Name: BaseIncrementalSearchCV
Method Name: _get_best
Project Name: keras-team/autokeras
Commit Name: 49ca8c83ca65a1060713d0295d1d206b43933e3b
Time: 2017-12-18
Author: jhfjhfj1@gmail.com
File Name: autokeras/generator.py
Class Name: HillClimbingClassifierGenerator
Method Name: generate