trw.hparams.params
¶
Module Contents¶
Classes¶
Represent an hyper-parameter |
|
Discrete value. This can be useful to select one choice among many |
|
Map discrete value to another discrete value |
|
Represent an integer hyper-parameter |
|
Represent a boolean hyper-parameter |
|
Represent a continuous hyper-parameter |
|
Represent a continuous power hyper-parameter |
|
Holds a repository a set of hyper-parameters |
|
Holds the current hyper-parameters |
Functions¶
|
|
|
|
|
|
|
|
|
|
|
|
|
Create a hyper-parameter and record it in the |
Attributes¶
- trw.hparams.params.logger¶
- class trw.hparams.params.HyperParam(name: str, default_value: Any, current_value: Any = None)¶
Bases:
abc.ABC
Represent an hyper-parameter
- set_value(self, value: Any) None ¶
Set the current value of an hyper-parameter
- Parameters
value – the new current value
- get_value(self) Any ¶
return the current value of an hyper-parameter
- abstract randomize(self) None ¶
Randomize the current value of an hyper-parameter
- class trw.hparams.params.DiscreteValue(name: str, default_value: Any, values: List[Any])¶
Bases:
HyperParam
Discrete value. This can be useful to select one choice among many
- set_value(self, value: Any) None ¶
Set the current value of an hyper-parameter
- Parameters
value – the new current value
- randomize(self)¶
Randomize the current value of an hyper-parameter
- __repr__(self)¶
Return repr(self).
- trw.hparams.params.create_discrete_value(name: str, default_value: Any, values: List[Any]) Any ¶
- class trw.hparams.params.DiscreteMapping(name: str, default_value: Any, mapping: Dict[Any, Any])¶
Bases:
HyperParam
Map discrete value to another discrete value
e.g., this can be useful to test activation function as hyper-parameter
- set_value(self, value: Any)¶
Set the current value of an hyper-parameter
- Parameters
value – the new current value
- get_value(self)¶
return the current value of an hyper-parameter
- randomize(self)¶
Randomize the current value of an hyper-parameter
- __repr__(self)¶
Return repr(self).
- trw.hparams.params.create_discrete_mapping(name: str, default_value: Any, mapping: Dict[Any, Any]) Any ¶
- class trw.hparams.params.DiscreteInteger(name: str, default_value: int, min_range: int, max_range: int)¶
Bases:
HyperParam
Represent an integer hyper-parameter
- randomize(self) None ¶
Randomize the current value of an hyper-parameter
- __repr__(self)¶
Return repr(self).
- trw.hparams.params.create_discrete_integer(name: str, default_value: Any, min_range: int, max_range: int) Any ¶
- class trw.hparams.params.DiscreteBoolean(name, default_value)¶
Bases:
HyperParam
Represent a boolean hyper-parameter
- randomize(self) None ¶
Randomize the current value of an hyper-parameter
- __repr__(self)¶
Return repr(self).
- trw.hparams.params.create_boolean(name: str, default_value: Any) bool ¶
- class trw.hparams.params.ContinuousUniform(name: str, default_value: float, min_range: float, max_range: float)¶
Bases:
HyperParam
Represent a continuous hyper-parameter
- randomize(self) None ¶
Randomize the current value of an hyper-parameter
- __repr__(self)¶
Return repr(self).
- trw.hparams.params.create_continuous_uniform(name: str, default_value: float, min_range: float, max_range: float) float ¶
- class trw.hparams.params.ContinuousPower(name: str, default_value: float, exponent_min: float, exponent_max: float)¶
Bases:
HyperParam
Represent a continuous power hyper-parameter
This type of distribution can be useful to test e.g., learning rate hyper-parameter. Given a random number x generated from uniform interval (min_range, max_range), return 10 ** x
Examples
>>> hp1 = ContinuousPower('hp1', default_value=0.1, exponent_min=-5, exponent_max=-1) ``hp1.get_value()`` would return a value in the range(1e-1, 1e-5)
- randomize(self) None ¶
Randomize the current value of an hyper-parameter
- __repr__(self)¶
Return repr(self).
- trw.hparams.params.create_continuous_power(name: str, default_value: float, exponent_min: float, exponent_max: float) float ¶
- class trw.hparams.params.HyperParameters(hparams: Optional[Dict[str, HyperParam]] = None, randomize_at_creation: bool = False, hparams_to_randomize: Optional[List[str]] = None)¶
Holds a repository a set of hyper-parameters
- hparam_to_be_randomized(self, haparam_name: str) bool ¶
- create(self, hparam: HyperParam) Any ¶
Create an hyper parameter if it is not already present. If it is present, the given hparam is ignored
- Parameters
hparam – the hyper-parameter
- Returns
the hyper parameter value
- randomize(self) None ¶
Set hyper-parameter to a random value
- __getitem__(self, name: str)¶
- get_value(self, name: str) Any ¶
Return the current value of an hyper-parameter
- __str__(self)¶
Return str(self).
- __repr__(self)¶
Return repr(self).
- __len__(self)¶
- class trw.hparams.params.HyperParameterRepository¶
Holds the current hyper-parameters
- current_hparams :HyperParameters¶
- static reset(new_hparams: Optional[HyperParameters] = None) None ¶
Replace the existing hyper parameters by a new one
- Parameters
new_hparams – the new hyper-parameters
- trw.hparams.params.register_hparam(hparam: HyperParam) Any ¶
Create a hyper-parameter and record it in the
HyperParameterRepository
repository- Parameters
hparam – the hyper-parameter to be created
- Returns
the value of the hyper-parameter