![]() |
Configuration for lr schedule.
Inherits From: OneOfConfig
, Config
, ParamsDict
tfm.optimization.LrConfig(
default_params: dataclasses.InitVar[Optional[Mapping[str, Any]]] = None,
restrictions: dataclasses.InitVar[Optional[List[str]]] = None,
type: Optional[str] = None,
constant: tfm.optimization.ConstantLrConfig
= lr_cfg.ConstantLrConfig()
,
stepwise: tfm.optimization.StepwiseLrConfig
= lr_cfg.StepwiseLrConfig()
,
exponential: tfm.optimization.ExponentialLrConfig
= lr_cfg.ExponentialLrConfig()
,
polynomial: tfm.optimization.PolynomialLrConfig
= lr_cfg.PolynomialLrConfig()
,
cosine: tfm.optimization.CosineLrConfig
= lr_cfg.CosineLrConfig()
,
power: tfm.optimization.DirectPowerLrConfig
= lr_cfg.DirectPowerLrConfig()
,
power_linear: tfm.optimization.PowerAndLinearDecayLrConfig
= lr_cfg.PowerAndLinearDecayLrConfig()
,
power_with_offset: tfm.optimization.PowerDecayWithOffsetLrConfig
= lr_cfg.PowerDecayWithOffsetLrConfig()
,
step_cosine_with_offset: tfm.optimization.StepCosineLrConfig
= lr_cfg.StepCosineLrConfig()
)
Methods
as_dict
as_dict()
Returns a dict representation of OneOfConfig.
For the nested base_config.Config, a nested dict will be returned.
from_args
@classmethod
from_args( *args, **kwargs )
Builds a config from the given list of arguments.
from_json
@classmethod
from_json( file_path: str )
Wrapper for from_yaml
.
from_yaml
@classmethod
from_yaml( file_path: str )
get
get()
Returns selected config based on the value of type.
If type is not set (None), None is returned.
lock
lock()
Makes the ParamsDict immutable.
override
override(
override_params, is_strict=True
)
Override the ParamsDict with a set of given params.
Args | |
---|---|
override_params
|
a dict or a ParamsDict specifying the parameters to be overridden. |
is_strict
|
a boolean specifying whether override is strict or not. If
True, keys in override_params must be present in the ParamsDict. If
False, keys in override_params can be different from what is currently
defined in the ParamsDict. In this case, the ParamsDict will be extended
to include the new keys.
|
replace
replace(
**kwargs
)
Overrides/returns a unlocked copy with the current config unchanged.
validate
validate()
Validate the parameters consistency based on the restrictions.
This method validates the internal consistency using the pre-defined list of restrictions. A restriction is defined as a string which specfiies a binary operation. The supported binary operations are {'==', '!=', '<', '<=', '>', '>='}. Note that the meaning of these operators are consistent with the underlying Python immplementation. Users should make sure the define restrictions on their type make sense.
For example, for a ParamsDict like the following
a:
a1: 1
a2: 2
b:
bb:
bb1: 10
bb2: 20
ccc:
a1: 1
a3: 3
one can define two restrictions like this ['a.a1 == b.ccc.a1', 'a.a2 <= b.bb.bb2']
What it enforces are | |
---|---|
|
Raises | |
---|---|
KeyError
|
if any of the following happens (1) any of parameters in any of restrictions is not defined in ParamsDict, (2) any inconsistency violating the restriction is found. |
ValueError
|
if the restriction defined in the string is not supported. |
__contains__
__contains__(
key
)
Implements the membership test operator.
__eq__
__eq__(
other
)
Class Variables | |
---|---|
IMMUTABLE_TYPES |
(<class 'str'>,
<class 'int'>,
<class 'float'>,
<class 'bool'>,
<class 'NoneType'>)
|
RESERVED_ATTR |
['_locked', '_restrictions']
|
SEQUENCE_TYPES |
(<class 'list'>, <class 'tuple'>)
|
constant |
Instance of tfm.optimization.ConstantLrConfig
|
cosine |
Instance of tfm.optimization.CosineLrConfig
|
default_params |
None
|
exponential |
Instance of tfm.optimization.ExponentialLrConfig
|
polynomial |
Instance of tfm.optimization.PolynomialLrConfig
|
power |
Instance of tfm.optimization.DirectPowerLrConfig
|
power_linear |
Instance of tfm.optimization.PowerAndLinearDecayLrConfig
|
power_with_offset |
Instance of tfm.optimization.PowerDecayWithOffsetLrConfig
|
restrictions |
None
|
step_cosine_with_offset |
Instance of tfm.optimization.StepCosineLrConfig
|
stepwise |
Instance of tfm.optimization.StepwiseLrConfig
|
type |
None
|