View source on GitHub |
Inherits From: Config, ParamsDict
tfm.vision.configs.image_classification.Losses( default_params: dataclasses.InitVar[Optional[Mapping[str, Any]]] = None, restrictions: dataclasses.InitVar[Optional[List[str]]] = None, loss_weight: float = 1.0, one_hot: bool = True, label_smoothing: float = 0.0, l2_weight_decay: float = 0.0, soft_labels: bool = False, use_binary_cross_entropy: bool = False ) Methods
as_dict
as_dict() Returns a dict representation of params_dict.ParamsDict.
For the nested params_dict.ParamsDict, a nested dict will be returned.
from_args
@classmethodfrom_args( *args, **kwargs )
Builds a config from the given list of arguments.
from_json
@classmethodfrom_json( file_path: str )
Wrapper for from_yaml.
from_yaml
@classmethodfrom_yaml( file_path: str )
get
get( key, value=None ) Accesses through built-in dictionary get method.
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 specifies 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 )
View source on GitHub