用 TensorBoard 分析 SoVITS 4.0 模型训练是否过拟合

简介

SoVITS 4.0 已经包含了 TensorBoard 的支持。我们打开 train.py 仔细观察,可以看到以下代码导入了 SummaryWriter 类,它是用于 TensorBoard 可视化的:

from torch.utils.tensorboard import SummaryWriter

main() 函数中,可以看到为训练和评估设置了两个独立的 SummaryWriter 对象:

if rank == 0:
    logger = utils.get_logger(hps.model_dir)
    logger.info(hps)
    utils.check_git_hash(hps.model_dir)
    writer = SummaryWriter(log_dir=hps.model_dir)
    writer_eval = SummaryWriter(log_dir=os.path.join(hps.model_dir, "eval"))

这些 SummaryWriter 对象用于在训练和评估过程中记录各种指标。例如,以下是在训练过程中记录损失、梯度范数等标量指标的代码:

utils.summarize(
    writer=writer,
    global_step=global_step,
    images=image_dict,
    scalars=scalar_dict
)

TensorBoard 可视化

要使用 TensorBoard 可视化这些指标,你需要确保已经安装了 TensorBoard(如果没有,可以通过 pip install tensorboard 安装),然后运行以下命令:

tensorboard --logdir /path/to/model/directory

这里的 /path/to/model/directory 是模型日志的存储路径。默认情况下,这个路径由 hps.model_dir 定义,你可以在脚本中找到相应的设置。在启动 TensorBoard 之后,打开浏览器并访问 http://localhost:6006,即可查看训练和评估过程中的指标。

比如在我的电脑上运行:

tensorboard --logdir H:\so-vits-svc\logs\44k

用 TensorBoard 分析 SoVITS 4.0 模型训练是否过拟合
然后你就可以看到D模型和G模型的训练曲线了。

注意事项

请注意,在训练过程中,如果你发现模型的训练效果不佳,可能需要使用 TensorBoard 分析模型是否过拟合。TensorBoard 可以帮助你可视化模型在训练集和验证集上的表现,进而判断模型是否过拟合。如果模型在训练集上表现很好,但在验证集上表现很差,那么很有可能模型出现了过拟合。

给TA打赏
共{{data.count}}人
人已打赏
站长笔记

指点chatgpt生成AI绘画prompt的{大神咒}

2023-4-25 21:21:18

站长笔记

AdGuard Home+搬瓦工打造私人dns

2023-4-26 21:44:43

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索