Skip to content

Commit a8e92fc

Browse files
committed
extension refactored code
1 parent d3c165a commit a8e92fc

1 file changed

Lines changed: 18 additions & 30 deletions

File tree

openml/extensions/sklearn/extension.py

Lines changed: 18 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1013,10 +1013,9 @@ def _can_measure_wallclocktime(self, model: Any) -> bool:
10131013
# of n_jobs (the negate will make this fn return false). For that
10141014
# reason, we need to add clause 2 that returns True if n_jobs does not
10151015
# exist in the flow
1016-
return not SklearnExtension._check_parameter_value_recursive(
1017-
model.get_params(), 'n_jobs', [-1]) or \
1018-
SklearnExtension._check_parameter_value_recursive(
1019-
model.get_params(), 'n_jobs', None)
1016+
clause1 = not SklearnExtension._check_parameter_value_recursive(model.get_params(), 'n_jobs', [-1])
1017+
clause2 = SklearnExtension._check_parameter_value_recursive(model.get_params(), 'n_jobs', None)
1018+
return clause1 or clause2
10201019

10211020
################################################################################################
10221021
# Methods for performing runs with extension modules
@@ -1219,30 +1218,21 @@ def _prediction_to_probabilities(
12191218

12201219
try:
12211220
# for measuring runtime. Only available since Python 3.3
1222-
modelfit_start_cputime = None
1223-
modelfit_duration_cputime = None
1224-
modelpredict_start_cputime = None
1225-
1226-
modelfit_start_walltime = None
1227-
modelfit_duration_walltime = None
1228-
modelpredict_start_walltime = None
1229-
if can_measure_cputime:
1230-
modelfit_start_cputime = time.process_time()
1231-
if can_measure_wallclocktime:
1232-
modelfit_start_walltime = time.time()
1221+
modelfit_start_cputime = time.process_time()
1222+
modelfit_start_walltime = time.time()
12331223

12341224
if isinstance(task, OpenMLSupervisedTask):
12351225
model_copy.fit(train_x, train_y)
12361226
elif isinstance(task, OpenMLClusteringTask):
12371227
model_copy.fit(train_x)
12381228

1229+
modelfit_dur_cputime = (time.process_time() - modelfit_start_cputime) * 1000
12391230
if can_measure_cputime:
1240-
modelfit_duration_cputime = (time.process_time() - modelfit_start_cputime) * 1000
1241-
user_defined_measures['usercpu_time_millis_training'] = modelfit_duration_cputime
1231+
user_defined_measures['usercpu_time_millis_training'] = modelfit_dur_cputime
1232+
1233+
modelfit_dur_walltime = (time.time() - modelfit_start_walltime) * 1000
12421234
if can_measure_wallclocktime:
1243-
modelfit_duration_walltime = (time.time() - modelfit_start_walltime) * 1000
1244-
user_defined_measures['wall_clock_time_millis_training'] = \
1245-
modelfit_duration_walltime
1235+
user_defined_measures['wall_clock_time_millis_training'] = modelfit_dur_walltime
12461236

12471237
except AttributeError as e:
12481238
# typically happens when training a regressor on classification task
@@ -1268,26 +1258,24 @@ def _prediction_to_probabilities(
12681258
else:
12691259
model_classes = used_estimator.classes_
12701260

1271-
if can_measure_cputime:
1272-
modelpredict_start_cputime = time.process_time()
1273-
if can_measure_wallclocktime:
1274-
modelpredict_start_walltime = time.time()
1261+
modelpredict_start_cputime = time.process_time()
1262+
modelpredict_start_walltime = time.time()
12751263

12761264
# In supervised learning this returns the predictions for Y, in clustering
12771265
# it returns the clusters
12781266
pred_y = model_copy.predict(test_x)
12791267

12801268
if can_measure_cputime:
1281-
modelpredict_duration_cputime = (time.process_time() -
1282-
modelpredict_start_cputime) * 1000
1269+
modelpredict_duration_cputime = (time.process_time()
1270+
- modelpredict_start_cputime) * 1000
12831271
user_defined_measures['usercpu_time_millis_testing'] = modelpredict_duration_cputime
1284-
user_defined_measures['usercpu_time_millis'] = (
1285-
modelfit_duration_cputime + modelpredict_duration_cputime)
1272+
user_defined_measures['usercpu_time_millis'] = (modelfit_dur_cputime
1273+
+ modelpredict_duration_cputime)
12861274
if can_measure_wallclocktime:
12871275
modelpredict_duration_walltime = (time.time() - modelpredict_start_walltime) * 1000
12881276
user_defined_measures['wall_clock_time_millis_testing'] = modelpredict_duration_walltime
1289-
user_defined_measures['wall_clock_time_millis'] = (
1290-
modelfit_duration_walltime + modelpredict_duration_walltime)
1277+
user_defined_measures['wall_clock_time_millis'] = (modelfit_dur_walltime
1278+
+ modelpredict_duration_walltime)
12911279

12921280
# add client-side calculated metrics. These is used on the server as
12931281
# consistency check, only useful for supervised tasks

0 commit comments

Comments
 (0)