colab训练VITS语音模型

文章指导如何在GoogleColab上利用免费GPU资源,通过VITS对音频数据进行训练,创建特定音色风格的语音。步骤包括检查GPU配置、安装环境、上传音频文件、处理数据、训练模型以及下载配置文件进行后期处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

打开colab

https://colab.research.google.com/drive/1pn1xnFfdLK63gVXDwV4zCXfVeo8c-I-0?usp=sharing#scrollTo=-XEdEXyTHVfD
谷歌的colab平台,借用免费的云平台和gpu算力。借助VITS对已有语音数据进行训练,生成对应音色风格的语音。

准备文件 默认建议

1…zip文件打包的,按角色名排列的短音频,该压缩文件结构应如下所示:

Your-zip-file.zip
├───Character_name_1
├ ├───xxx.wav
├ ├───…
├ ├───yyy.mp3
├ └───zzz.wav
├───Character_name_2
├ ├───xxx.wav
├ ├───…
├ ├───yyy.mp3
├ └───zzz.wav
├───…

└───Character_name_n
├───xxx.wav
├───…
├───yyy.mp3
└───zzz.wav
注意音频的格式和名称都不重要,只要它们是音频文件。
质量要求:2秒以上,10秒以内,尽量不要有背景噪音。
数量要求:一个角色至少10条,最好每个角色20条以上。

注:压缩为zip,压缩时,选中所有文件压缩,而不是对文件夹压缩

Step 0

运行查看GPU配置。本笔记本必须在GPU模式下运行,可以运行上方的nvidia-smi查看GPU是否装载。若没有,点击左上角>修改>笔记本设置,把硬件加速改成GPU。

step 1

运行安装环境

step 1.5

选择预选训练模型,默认CJ

加载谷歌云盘,登录授权。

打开谷歌云盘网页,上传压缩包
此时回到colab,在窗口左侧打开文件夹,此处就可以看见自己的云盘文件夹,找到上传的压缩包,选中复制其路径。

step 2.1 上传音频

展开,选择第二个单元格,在其右侧粘贴路径信息。压缩包路径信息:在左侧的文件夹中找到压缩包,右击,复制路径。
如果你是训练单个角色,在custom_character_voice后面加一个speak_names比如:custom_character_voice/hutao
而后,点击运行,此时可以看到解压抽取音频文件

step3

自动处理所有上传的数据-运行
会将每一条语音识别为文字

STEP 3.5

单个角色的话,运行

step 4

左侧创建输出文件夹,而后复制这个文件夹的路径
复制路径替换代码中的两处 ./OUTPUT_MODEL。
设置epochs,40基本就成型了
运行,等待

下载配置文件

在云盘对应的输出文件夹,下载G_latest.pth和.json文件。
再打开 https://github.com/Plachtaa/VITS-fast-fine-tuning/releases/tag/webui-v1.1,下载inference.rar,解压,粘贴替换G_latest.pth和.json文件,将.json文件重命名为finetune_speaker.json
运行文件夹里面的inference.exe
即可完成

### Google Colab 训练模型时避免中断的方法 为了避免在 Google Colab训练模型的过程中发生意外中断,可以采取以下措施: #### 1. 使用长时间运行的会话 Google Colab 的免费版本通常会在闲置约90分钟后自动断开连接。为了延长会话时间,可以在代码中定期执行一些操作以防止空闲超时。例如,通过设置定时器来保持活动状态[^3]。 ```python import time def keep_alive(): while True: time.sleep(60) # 每隔一分钟唤醒一次 print("Keeping session alive...") keep_alive() ``` #### 2. 利用 Checkpoint 进行模型保存 即使发生了中断,也可以通过保存模型的中间状态来进行恢复。TensorFlow Keras 提供了 `ModelCheckpoint` 功能,在每次 epoch 结束后自动保存模型权重或完整模型文件至指定路径[^4]。 ```python from tensorflow.keras.callbacks import ModelCheckpoint checkpoint_filepath = '/content/drive/MyDrive/model_checkpoint.h5' model_checkpoint_callback = ModelCheckpoint( filepath=checkpoint_filepath, save_weights_only=True, # 如果只保存权重而不是整个模型,则设为True monitor='val_accuracy', mode='max', save_best_only=True) # 将回调函数传递给fit方法 history = model.fit(train_data, validation_data=val_data, epochs=epochs, callbacks=[model_checkpoint_callback]) ``` 当重新加载模型继续训练时,可以从上次保存的位置读取数据并恢复训练过程[^5]: ```python from tensorflow.keras.models import load_model loaded_model = load_model(checkpoint_filepath) # 或者如果仅保存的是权重则需先构建相同的架构再载入参数 new_model.load_weights(checkpoint_filepath) ``` #### 3. 配置 GPU 资源管理 合理分配硬件资源有助于减少因过热或其他原因引起的强制退出风险。确保选择了合适的加速选项(CPU/GPU/TPU),并通过监控工具观察内存占用情况调整批量大小等参数配置[^6]。 --- ### 中断后的恢复策略 一旦训练被终止,除了依赖之前提到过的 checkpoint 外部存储机制外,还可以考虑如下方案: - **重连实例**:有时只是网络波动造成短暂分离,刷新页面可能允许快速返回原计算环境而无需完全重启。 - **切换到本地副本**:对于特别重要的项目,建议同步一份完整的资料库到个人电脑硬盘里备份起来以防万一云端服务不可达的情况出现[^7]。 --- ### 总结 综上所述,预防 Colab 断线主要依靠持续交互维持在线以及妥善运用存档技术;面对突发状况,则要充分利用先前建立好的检查点迅速拾起进度条向前迈进。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

frozendure

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值