Skip to content

Commit 840e933

Browse files
committed
Move RangeSettings as an inner class within NumericalHyperparameterSettings
1 parent b7dda42 commit 840e933

File tree

1 file changed

+58
-59
lines changed

1 file changed

+58
-59
lines changed

dataikuapi/dss/ml.py

Lines changed: 58 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -811,6 +811,63 @@ def _set_range(self, min=None, max=None, nb_values=None):
811811
if nb_values is not None:
812812
self._algo_settings[self.name]["range"]["nbValues"] = nb_values
813813

814+
class Range(object):
815+
816+
def __init__(self, numerical_hyperparameter_settings):
817+
self._numerical_hyperparameter_settings = numerical_hyperparameter_settings
818+
self._range_dict = self._numerical_hyperparameter_settings._algo_settings[numerical_hyperparameter_settings.name]["range"]
819+
820+
def __repr__(self):
821+
return "Range(min={}, max={}, nb_values={})".format(self.min, self.max, self.nb_values)
822+
823+
@property
824+
def min(self):
825+
"""
826+
:return: the lower bound of the Range for this hyperparameter
827+
:rtype: float | int
828+
"""
829+
return self._range_dict["min"]
830+
831+
@min.setter
832+
def min(self, value):
833+
"""
834+
:param value: the lower bound of the Range this hyperparameter
835+
:type value: float | int
836+
"""
837+
self._numerical_hyperparameter_settings._set_range(min=value)
838+
839+
@property
840+
def max(self):
841+
"""
842+
:return: the upper bound of the Range this hyperparameter
843+
:rtype: float | int
844+
"""
845+
return self._range_dict["max"]
846+
847+
@max.setter
848+
def max(self, value):
849+
"""
850+
:param value: the upper bound of the Range for this hyperparameter
851+
:type value: float | int
852+
"""
853+
self._numerical_hyperparameter_settings._set_range(max=value)
854+
855+
@property
856+
def nb_values(self):
857+
"""
858+
:return: for grid-search ("GRID" strategy) only, the number of values between min and max to consider
859+
:rtype: int
860+
"""
861+
return self._range_dict["nbValues"]
862+
863+
@nb_values.setter
864+
def nb_values(self, value):
865+
"""
866+
:param value: for grid-search ("GRID" strategy) only, the number of values between min and max to consider
867+
:type value: int
868+
"""
869+
self._numerical_hyperparameter_settings._set_range(nb_values=value)
870+
814871
def set_range(self, min=None, max=None, nb_values=None):
815872
"""
816873
Sets both:
@@ -829,7 +886,7 @@ def set_range(self, min=None, max=None, nb_values=None):
829886

830887
@property
831888
def range(self):
832-
return RangeSettings(self)
889+
return NumericalHyperparameterSettings.Range(self)
833890

834891

835892
class Range(object):
@@ -843,64 +900,6 @@ def __repr__(self):
843900
return "Range(min={}, max={}, nb_values={})".format(self.min, self.max, self.nb_values)
844901

845902

846-
class RangeSettings(object):
847-
848-
def __init__(self, numerical_hyperparameter_settings):
849-
self._numerical_hyperparameter_settings = numerical_hyperparameter_settings
850-
self._range_dict = self._numerical_hyperparameter_settings._algo_settings[numerical_hyperparameter_settings.name]["range"]
851-
852-
def __repr__(self):
853-
return "RangeSettings(min={}, max={}, nb_values={})".format(self.min, self.max, self.nb_values)
854-
855-
@property
856-
def min(self):
857-
"""
858-
:return: the lower bound of the Range for this hyperparameter
859-
:rtype: float | int
860-
"""
861-
return self._range_dict["min"]
862-
863-
@min.setter
864-
def min(self, value):
865-
"""
866-
:param value: the lower bound of the Range this hyperparameter
867-
:type value: float | int
868-
"""
869-
self._numerical_hyperparameter_settings._set_range(min=value)
870-
871-
@property
872-
def max(self):
873-
"""
874-
:return: the upper bound of the Range this hyperparameter
875-
:rtype: float | int
876-
"""
877-
return self._range_dict["max"]
878-
879-
@max.setter
880-
def max(self, value):
881-
"""
882-
:param value: the upper bound of the Range for this hyperparameter
883-
:type value: float | int
884-
"""
885-
self._numerical_hyperparameter_settings._set_range(max=value)
886-
887-
@property
888-
def nb_values(self):
889-
"""
890-
:return: for grid-search ("GRID" strategy) only, the number of values between min and max to consider
891-
:rtype: int
892-
"""
893-
return self._range_dict["nbValues"]
894-
895-
@nb_values.setter
896-
def nb_values(self, value):
897-
"""
898-
:param value: for grid-search ("GRID" strategy) only, the number of values between min and max to consider
899-
:type value: int
900-
"""
901-
self._numerical_hyperparameter_settings._set_range(nb_values=value)
902-
903-
904903
class CategoricalHyperparameterSettings(HyperparameterSettings):
905904

906905
def __repr__(self):

0 commit comments

Comments
 (0)