parsing¶
Functions
Removes all unpicklable entries from hparams. |
|
Recursively collects the arguments passed to the child constructors in the inheritance tree. |
|
|
|
For backwards compatibility: #16369. |
|
Tests if an object can be pickled. |
|
Special getattr for Lightning. |
|
Special hasattr for Lightning. |
|
Special setattr for Lightning. |
|
Parse key words for standard |
|
See |
|
Convert a string representation of truth to bool. |
|
Convert a string representation to truth of bool if possible, or otherwise try to convert it to an int. |
|
Possibly convert a string representation of truth to bool. |
Classes
Extended dictionary accessible with dot notation. |
Utilities used for parameter parsing.
- class pytorch_lightning.utilities.parsing.AttributeDict[source]¶
Bases:
Dict
Extended dictionary accessible with dot notation.
>>> ad = AttributeDict({'key1': 1, 'key2': 'abc'}) >>> ad.key1 1 >>> ad.update({'my-key': 3.14}) >>> ad.update(new_key=42) >>> ad.key1 = 2 >>> ad "key1": 2 "key2": abc "my-key": 3.14 "new_key": 42
- pytorch_lightning.utilities.parsing.clean_namespace(hparams)[source]¶
Removes all unpicklable entries from hparams.
- Return type:
- pytorch_lightning.utilities.parsing.collect_init_args(frame, path_args, inside=False, classes=())[source]¶
Recursively collects the arguments passed to the child constructors in the inheritance tree.
- Parameters:
frame¶ (
FrameType
) – the current stack framepath_args¶ (
List
[Dict
[str
,Any
]]) – a list of dictionaries containing the constructor args in all parent classesinside¶ (
bool
) – track if we are inside inheritance path, avoid terminating too soonclasses¶ (
Tuple
[Type
,...
]) – the classes in which to inspect the frames
- Return type:
- Returns:
A list of dictionaries where each dictionary contains the arguments passed to the constructor at that level. The last entry corresponds to the constructor call of the most specific class in the hierarchy.
- pytorch_lightning.utilities.parsing.get_init_args(frame)[source]¶
For backwards compatibility: #16369.
- pytorch_lightning.utilities.parsing.is_picklable(obj)[source]¶
Tests if an object can be pickled.
- Return type:
- pytorch_lightning.utilities.parsing.lightning_getattr(model, attribute)[source]¶
Special getattr for Lightning. Checks for attribute in model namespace, the old hparams namespace/dict, and the datamodule.
- Raises:
AttributeError – If
model
doesn’t haveattribute
in any of model namespace, the hparams namespace/dict, and the datamodule.- Return type:
- pytorch_lightning.utilities.parsing.lightning_hasattr(model, attribute)[source]¶
Special hasattr for Lightning.
Checks for attribute in model namespace, the old hparams namespace/dict, and the datamodule.
- Return type:
- pytorch_lightning.utilities.parsing.lightning_setattr(model, attribute, value)[source]¶
Special setattr for Lightning. Checks for attribute in model namespace and the old hparams namespace/dict. Will also set the attribute on datamodule, if it exists.
- Raises:
AttributeError – If
model
doesn’t haveattribute
in any of model namespace, the hparams namespace/dict, and the datamodule.- Return type:
- pytorch_lightning.utilities.parsing.parse_class_init_keys(cls)[source]¶
Parse key words for standard
self
,*args
and**kwargs
.Examples
>>> class Model(): ... def __init__(self, hparams, *my_args, anykw=42, **my_kwargs): ... pass >>> parse_class_init_keys(Model) ('self', 'my_args', 'my_kwargs')
- pytorch_lightning.utilities.parsing.save_hyperparameters(obj, *args, ignore=None, frame=None)[source]¶
See
save_hyperparameters()
- Return type:
- pytorch_lightning.utilities.parsing.str_to_bool(val)[source]¶
Convert a string representation of truth to bool.
True values are ‘y’, ‘yes’, ‘t’, ‘true’, ‘on’, and ‘1’; false values are ‘n’, ‘no’, ‘f’, ‘false’, ‘off’, and ‘0’.
- Raises:
ValueError – If
val
isn’t in one of the aforementioned true or false values.
>>> str_to_bool('YES') True :rtype: :py:class:`bool`
>>> str_to_bool('FALSE') False
- pytorch_lightning.utilities.parsing.str_to_bool_or_int(val)[source]¶
Convert a string representation to truth of bool if possible, or otherwise try to convert it to an int.
>>> str_to_bool_or_int("FALSE") False >>> str_to_bool_or_int("1") True >>> str_to_bool_or_int("2") 2 :rtype: :py:data:`~typing.Union`\[:py:class:`bool`, :py:class:`int`, :py:class:`str`]
>>> str_to_bool_or_int("abc") 'abc'
- pytorch_lightning.utilities.parsing.str_to_bool_or_str(val)[source]¶
Possibly convert a string representation of truth to bool. Returns the input otherwise. Based on the python implementation distutils.utils.strtobool.
True values are ‘y’, ‘yes’, ‘t’, ‘true’, ‘on’, and ‘1’; false values are ‘n’, ‘no’, ‘f’, ‘false’, ‘off’, and ‘0’.