Просмотр исходного кода

added total_tuning_time property

tanja лет назад: 3
Родитель
Сommit
5ac3a5b6e6

+ 5 - 2
cdplib/gridsearch/GridSearchPipelineSelector.py

@@ -15,6 +15,7 @@ Created on Wed Sep 30 14:15:17 2020
 
 import os
 import sys
+import time
 from itertools import product
 from collections import ChainMap
 from sklearn.pipeline import Pipeline
@@ -138,10 +139,12 @@ class GridSearchPipelineSelector(PipelineSelector):
 
             self._trials.append(trial)
 
-        self._backup_trials()
-
         self.finished_tuning = True
 
+        self.total_tuning_time = time.time() - self.start_tuning_time
+
+        self._backup_trials()
+
     @property
     def number_of_trials(self) -> int:
         """

+ 4 - 0
cdplib/hyperopt/HyperoptPipelineSelector.py

@@ -19,6 +19,8 @@ import pickle
 
 from copy import deepcopy
 
+import time
+
 from typing import Callable
 
 import pandas as pd
@@ -163,6 +165,8 @@ class HyperoptPipelineSelector(PipelineSelector):
 
             self.finished_tuning = True
 
+            self.total_tuning_time = time.time() - self.start_tuning_time
+
             self._backup_trials()
 
         except Exception as e:

+ 2 - 1
cdplib/pipeline_selector/PipelineSelector.py

@@ -193,7 +193,7 @@ class PipelineSelector(ABC):
         self._score_improved = False
 
         self.start_tuning_time = datetime.datetime.today()
-        self.end_tuning_time = None
+        self.total_tuning_time = None
         self.finished_tuning = False
 
     def _backup_trials(self):
@@ -372,6 +372,7 @@ class PipelineSelector(ABC):
                 self._X = np.concatenate([X_train, X_val])
                 self._y = None if y_train is None\
                     else np.concatenate([y_train, y_val])
+
             except Exception as e:
                 err = "Failed to attach data. Exit with error: {}".format(e)
                 self._logger.log_and_raise_error(err)