speechbrain.utils.train_logger 模块
用于实验监控的日志记录器。
- 作者
Peter Plantinga 2020
Jarod Duret 2023
摘要
类
训练信息的文本日志记录器。 |
|
一种在训练过程中输出样本的日志记录器,主要用于语音合成,但可定制、可重用并适用于任何其他生成任务。 |
|
以 Tensorboard 所需的格式记录训练信息。 |
|
定义训练日志记录器接口的抽象类。 |
|
WandB (Weights & Biases) 的日志记录器。 |
函数
将指定对象从计算图中分离,该对象可以是单个张量或张量字典。 |
|
返回 matplotlib 频谱图(如果可用),否则返回 None - 可选依赖项 |
参考
- class speechbrain.utils.train_logger.TrainLogger[source]
基类:
object
定义训练日志记录器接口的抽象类。
- log_stats(stats_meta, train_stats=None, valid_stats=None, test_stats=None, verbose=False)[source]
记录一个 epoch 的统计数据。
- 参数:
stats_meta (dict of str:scalar pairs) – 统计数据的元信息(例如,epoch、学习率等)。
train_stats (dict of str:list pairs) – 每种损失类型都由一个 str : list 对表示,包含训练阶段的所有值。
valid_stats (dict of str:list pairs) – 每种损失类型都由一个 str : list 对表示,包含验证阶段的所有值。
test_stats (dict of str:list pairs) – 每种损失类型都由一个 str : list 对表示,包含测试阶段的所有值。
verbose (bool) – 是否同时将日志信息输出到标准日志记录器。
- class speechbrain.utils.train_logger.FileTrainLogger(save_file, precision=2)[source]
基类:
TrainLogger
训练信息的文本日志记录器。
- class speechbrain.utils.train_logger.TensorboardLogger(save_dir)[source]
基类:
TrainLogger
以 Tensorboard 所需的格式记录训练信息。
- 参数:
save_dir (str) – 用于存储所有相关日志的目录。
- 引发:
如果未安装 Tensorboard,则引发 ImportError。 –
- class speechbrain.utils.train_logger.WandBLogger(initializer, *args, **kwargs)[source]
基类:
TrainLogger
WandB (Weights & Biases) 的日志记录器。此日志记录器的设计使其可以像 TrainLogger 一样使用,并且支持处理嵌套字典。
- 参数:
initializer (callable) – 初始化 WandB 运行的可调用函数。有关可以传递给初始化器的参数的更多信息,请参阅文档:https://docs.wandb.ai/ref/python/init
*args (tuple) – 要传递给初始化函数的位置参数。
**kwargs (dict) – 要传递给初始化函数的关键字参数。
示例
要初始化日志记录器,请在 hparams.yaml 中使用以下模式
``` train_logger: !new:speechbrain.utils.train_logger.WandBLogger
- initializer: !name:wandb.init
entity: speechbrain project: sb_project name: sb_run reinit: True resume: False dir: !ref <output_folder>/wandb id: sb_run resume: allow
注意
如果 WandB Logger 初始化出现问题,它会引发异常。
- class speechbrain.utils.train_logger.ProgressSampleLogger(output_path, formats=None, format_defs=None, batch_sample_size=1)[source]
基类:
object
一种在训练过程中输出样本的日志记录器,主要用于语音合成,但可定制、可重用并适用于任何其他生成任务。
原生支持图像和原始 PyTorch 输出。可以根据需要添加其他自定义格式。
示例
在 hparams.yaml 中 progress_sample_logger: !new:speechbrain.utils.progress_samples.ProgressSampleLogger
output_path: output/samples progress_batch_sample_size: 3 format_defs
- foo
extension: bar saver: !speechbrain.dataio.mystuff.save_my_format kwargs
baz: qux
- formats
foobar: foo
在 Brain 中
运行以下代码“记住”一个样本(例如,来自 compute_objectives)
- self.hparams.progress_sample_logger.remember(
target=spectrogram_target, output=spectrogram_output, alignments=alignments_output, my_output= raw_batch={
“inputs”: inputs, “spectrogram_target”: spectrogram_target, “spectrogram_output”: spectrogram_output, “alignments”: alignments_output
}
)
在 epoch 结束时运行以下代码(例如,来自 on_stage_end)self.progress_sample_logger.save(epoch)
- 参数:
- DEFAULT_FORMAT = 'image'