base¶
Functions
Merge a sequence with dictionaries into one dictionary by aggregating the same keys with some given function. |
|
Returns the real experiment on rank 0 and otherwise the DummyExperiment. |
Classes
Dummy experiment. |
|
Dummy logger for internal use. |
|
Base class for experiment loggers. |
|
The |
Abstract base class used to build new loggers.
- class pytorch_lightning.loggers.base.DummyLogger[source]¶
Bases:
pytorch_lightning.loggers.base.LightningLoggerBase
Dummy logger for internal use.
It is useful if we want to disable user’s logger for a feature, but still ensure that user code can run
- log_metrics(*args, **kwargs)[source]¶
Records metrics. This method logs metrics as as soon as it received them. If you want to aggregate metrics for one specific step, use the
agg_and_log_metrics()
method.
- property experiment: pytorch_lightning.loggers.base.DummyExperiment¶
Return the experiment object associated with this logger.
- property name: str¶
Return the experiment name.
- property version: str¶
Return the experiment version.
- class pytorch_lightning.loggers.base.LightningLoggerBase(agg_key_funcs=None, agg_default_func=<function mean>)[source]¶
Bases:
abc.ABC
Base class for experiment loggers.
- Parameters
agg_key_funcs¶ (
Optional
[Mapping
[str
,Callable
[[Sequence
[float
]],float
]]]) – Dictionary which maps a metric name to a function, which will aggregate the metric values for the same steps.agg_default_func¶ (
Callable
[[Sequence
[float
]],float
]) – Default function to aggregate metric values. If some metric name is not presented in the agg_key_funcs dictionary, then the agg_default_func will be used for aggregation.
Note
The agg_key_funcs and agg_default_func arguments are used only when one logs metrics with the
agg_and_log_metrics()
method.- after_save_checkpoint(checkpoint_callback)[source]¶
Called after model checkpoint callback saves a new checkpoint.
- Parameters
checkpoint_callback¶ – the model checkpoint callback instance
- agg_and_log_metrics(metrics, step=None)[source]¶
Aggregates and records metrics. This method doesn’t log the passed metrics instantaneously, but instead it aggregates them and logs only if metrics are ready to be logged.
- close()[source]¶
Do any cleanup that is necessary to close an experiment.
See deprecation warning below. :rtype:
None
Deprecated since version v1.5: This method is deprecated in v1.5 and will be removed in v1.7. Please use LightningLoggerBase.finalize instead.
- log_graph(model, input_array=None)[source]¶
Record model graph.
- Parameters
model¶ (
LightningModule
) – lightning modelinput_array¶ – input passes to model.forward
- Return type
- log_image(*args, **kwargs)[source]¶
Log image.
Arguments are directly passed to the logger.
- Return type
- abstract log_metrics(metrics, step=None)[source]¶
Records metrics. This method logs metrics as as soon as it received them. If you want to aggregate metrics for one specific step, use the
agg_and_log_metrics()
method.
- log_text(*args, **kwargs)[source]¶
Log text.
Arguments are directly passed to the logger.
- Return type
- update_agg_funcs(agg_key_funcs=None, agg_default_func=<function mean>)[source]¶
Update aggregation methods.
- Parameters
agg_key_funcs¶ (
Optional
[Mapping
[str
,Callable
[[Sequence
[float
]],float
]]]) – Dictionary which maps a metric name to a function, which will aggregate the metric values for the same steps.agg_default_func¶ (
Callable
[[Sequence
[float
]],float
]) – Default function to aggregate metric values. If some metric name is not presented in the agg_key_funcs dictionary, then the agg_default_func will be used for aggregation.
- abstract property experiment: Any¶
Return the experiment object associated with this logger.
- property group_separator¶
Return the default separator used by the logger to group the data into subfolders.
- abstract property name: str¶
Return the experiment name.
- property save_dir: Optional[str]¶
Return the root directory where experiment logs get saved, or None if the logger does not save data locally.
- abstract property version: Union[int, str]¶
Return the experiment version.
- class pytorch_lightning.loggers.base.LoggerCollection(logger_iterable)[source]¶
Bases:
pytorch_lightning.loggers.base.LightningLoggerBase
The
LoggerCollection
class is used to iterate all logging actions over the given logger_iterable.- Parameters
logger_iterable¶ (
Iterable
[LightningLoggerBase
]) – An iterable collection of loggers
- after_save_checkpoint(checkpoint_callback)[source]¶
Called after model checkpoint callback saves a new checkpoint.
- Parameters
checkpoint_callback¶ – the model checkpoint callback instance
- agg_and_log_metrics(metrics, step=None)[source]¶
Aggregates and records metrics. This method doesn’t log the passed metrics instantaneously, but instead it aggregates them and logs only if metrics are ready to be logged.
- close()[source]¶
Deprecated since version v1.5: This method is deprecated in v1.5 and will be removed in v1.7. Please use LoggerCollection.finalize instead.
- Return type
- log_graph(model, input_array=None)[source]¶
Record model graph.
- Parameters
model¶ (
LightningModule
) – lightning modelinput_array¶ – input passes to model.forward
- Return type
- log_image(*args, **kwargs)[source]¶
Log image.
Arguments are directly passed to the logger.
- Return type
- log_metrics(metrics, step=None)[source]¶
Records metrics. This method logs metrics as as soon as it received them. If you want to aggregate metrics for one specific step, use the
agg_and_log_metrics()
method.
- log_text(*args, **kwargs)[source]¶
Log text.
Arguments are directly passed to the logger.
- Return type
- update_agg_funcs(agg_key_funcs=None, agg_default_func=<function mean>)[source]¶
Update aggregation methods.
- Parameters
agg_key_funcs¶ (
Optional
[Mapping
[str
,Callable
[[Sequence
[float
]],float
]]]) – Dictionary which maps a metric name to a function, which will aggregate the metric values for the same steps.agg_default_func¶ (
Callable
[[Sequence
[float
]],float
]) – Default function to aggregate metric values. If some metric name is not presented in the agg_key_funcs dictionary, then the agg_default_func will be used for aggregation.
- property experiment: List[Any]¶
Returns a list of experiment objects for all the loggers in the logger collection.
- property name: str¶
Returns the experiment names for all the loggers in the logger collection joined by an underscore.
- property save_dir: Optional[str]¶
Returns
None
as checkpoints should be saved to default / chosen location when using multiple loggers.
- property version: str¶
Returns the experiment versions for all the loggers in the logger collection joined by an underscore.
- pytorch_lightning.loggers.base.merge_dicts(dicts, agg_key_funcs=None, default_func=<function mean>)[source]¶
Merge a sequence with dictionaries into one dictionary by aggregating the same keys with some given function.
- Parameters
dicts¶ (
Sequence
[Mapping
]) – Sequence of dictionaries to be merged.agg_key_funcs¶ (
Optional
[Mapping
[str
,Callable
[[Sequence
[float
]],float
]]]) – Mapping from key name to function. This function will aggregate a list of values, obtained from the same key of all dictionaries. If some key has no specified aggregation function, the default one will be used. Default is:None
(all keys will be aggregated by the default function).default_func¶ (
Callable
[[Sequence
[float
]],float
]) – Default function to aggregate keys, which are not presented in the agg_key_funcs map.
- Return type
- Returns
Dictionary with merged values.
Examples
>>> import pprint >>> d1 = {'a': 1.7, 'b': 2.0, 'c': 1, 'd': {'d1': 1, 'd3': 3}} >>> d2 = {'a': 1.1, 'b': 2.2, 'v': 1, 'd': {'d1': 2, 'd2': 3}} >>> d3 = {'a': 1.1, 'v': 2.3, 'd': {'d3': 3, 'd4': {'d5': 1}}} >>> dflt_func = min >>> agg_funcs = {'a': np.mean, 'v': max, 'd': {'d1': sum}} >>> pprint.pprint(merge_dicts([d1, d2, d3], agg_funcs, dflt_func)) {'a': 1.3, 'b': 2.0, 'c': 1, 'd': {'d1': 3, 'd2': 3, 'd3': 3, 'd4': {'d5': 1}}, 'v': 2.3}