在 Colab 中打开GitHub 上执行或查看/下载此笔记本

性能分析

SpeechBrain 提供了一种简单的方式来分析任何训练 recipe。输出将是标准的 tensorboard logdir,包含所有典型的指标、跟踪、图表等。如果您需要更多信息,请参阅 PyTorch 文档。实际上,SpeechBrain 只是使用了标准的 Torch 性能分析器。

安装

请确保您已安装 TensorBoard 性能分析器

pip install torch_tb_profiler

调用性能分析器

让我们启用性能分析器开始训练。当然,我们不需要运行完整的训练,只需要运行几个步骤。这可以通过以下方式实现:

python train.py hparams/config.yaml --profile_training --profile_warmup 10 --profile_steps 5

–profile_warmup–profile_steps 分别指示在开始记录之前需要等待(即热身)多久以及要记录的步数。等待是有用的,因为一些 PyTorch 和 CuDNN 优化通常在训练的初始步骤中进行。

使用 tensorboard 可视化日志

上一步将在 {output_folder}/profiler_logs 位置生成性能分析日志。输出文件夹是您 YAML 文件中指定的文件夹。您可以通过执行以下命令启动 tensorboard 并探索跟踪和图表:

tensorboard --log_dir {output_folder}/profiler_logs

当然,您需要安装 tensorboard。

pip install tensorboard

引用 SpeechBrain

如果您在您的研究或商业中使用 SpeechBrain,请使用以下 BibTeX 条目引用它

@misc{speechbrainV1,
  title={Open-Source Conversational AI with {SpeechBrain} 1.0},
  author={Mirco Ravanelli and Titouan Parcollet and Adel Moumen and Sylvain de Langen and Cem Subakan and Peter Plantinga and Yingzhi Wang and Pooneh Mousavi and Luca Della Libera and Artem Ploujnikov and Francesco Paissan and Davide Borra and Salah Zaiem and Zeyu Zhao and Shucong Zhang and Georgios Karakasidis and Sung-Lin Yeh and Pierre Champion and Aku Rouhe and Rudolf Braun and Florian Mai and Juan Zuluaga-Gomez and Seyed Mahed Mousavi and Andreas Nautsch and Xuechen Liu and Sangeet Sagar and Jarod Duret and Salima Mdhaffar and Gaelle Laperriere and Mickael Rouvier and Renato De Mori and Yannick Esteve},
  year={2024},
  eprint={2407.00463},
  archivePrefix={arXiv},
  primaryClass={cs.LG},
  url={https://arxiv.org/abs/2407.00463},
}
@misc{speechbrain,
  title={{SpeechBrain}: A General-Purpose Speech Toolkit},
  author={Mirco Ravanelli and Titouan Parcollet and Peter Plantinga and Aku Rouhe and Samuele Cornell and Loren Lugosch and Cem Subakan and Nauman Dawalatabad and Abdelwahab Heba and Jianyuan Zhong and Ju-Chieh Chou and Sung-Lin Yeh and Szu-Wei Fu and Chien-Feng Liao and Elena Rastorgueva and François Grondin and William Aris and Hwidong Na and Yan Gao and Renato De Mori and Yoshua Bengio},
  year={2021},
  eprint={2106.04624},
  archivePrefix={arXiv},
  primaryClass={eess.AS},
  note={arXiv:2106.04624}
}