parsing¶
Functions
Removes all unpicklable entries from hparams. |
|
Recursively collects the arguments passed to the child constructors in the inheritance tree. |
|
|
|
|
|
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)[source]¶
Recursively collects the arguments passed to the child constructors in the inheritance tree.
- Parameters
- 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.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 >>> str_to_bool('FALSE') False
- Return type
- 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 >>> 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’.