likes
comments
collection
share

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

作者站长头像
站长
· 阅读数 3

之前一篇文章谈过“声音克隆工具clone-voice”,一个简单的声音克隆工具,一直没有时间整理个配套的模型微调自训练工具,这些天抽空搞了下,已更新进新版本0.902,可以使用自己的声音素材自行训练微调,效果要比通用模型更好。本文就简单介绍下如何使用这个训练工具训练自己的模型。

确保已经按照上篇文字的方法下载软件包和模型包并已正确解压了。正确处理后的目录如下图,如果不存在train.exe请更新到 0.902版

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

一:首先下载训练需要的文件

确保你已正确安装部署了clone-voice,然后去下载训练文件,训练文件包含用到的大多数模型,大约3.8G。

训练文件下载地址 https://github.com/jianchang512/clone-voice/releases/tag/v0.0.1

可从百度网盘和huggingface下载,后者必须挂上稳定的代理

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

下载后,直接将压缩包里文件解压到软件根目录下, 覆盖已有的文件。

覆盖后,将会看到根目录下多了 train.pyruntrain.bat文件,这2个就是训练启动入口。如果你没有看到,说明解压错误,注意必须是直接解压出来里面的文件,而不是解压到一个和压缩包同名的文件夹内。

二:启动 runtrain.bat 打开训练页面

双击软件目录下的 runtrain.bat

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

双击后会弹出黑窗口,请耐心等待浏览器自动打开 http://127.0.0.1:5003 页面,可能耗时较久,请耐心等待。

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

打开后的 http://127.0.0.1:5003 页面如下

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

注意,如果你在第一步和第二步就出错了,而且始终无法打开训练界面,建议使用源码部署,部署方法见GitHub仓库说明介绍 ,启动方法类似,也是双击 runtrain.bat

训练过程共分为四步,依次点击按钮,就完成了训练。实际上三步即可完成,最后一步是复制到 clone-voice 下使用。

开始四步训练过程

准备训练声音素材

在训练开始前,首先需要准备训练所需的声音,你希望克隆谁的声音,就去搜集该声音素材,比如要克隆自己的,就使用录音设备录制2分钟-10分钟的音频,确保无背景噪声、发音清晰,可以多个音频文件,总时长大于2分钟即可,当然时长多长,训练效果越好。

如果想克隆某个影视人物的声音,可以从相关音视频中截取该人说话的声音片段,但要注意,需要去掉背景噪声,否则训练效果较差。

简单概括下作为训练素材的声音样本要求:

  • 总时长大于2分钟,最好大于5分钟或更长,时长越长,训练效果越好。
  • 无背景噪声,如果有背景音,请提前分离,推荐本人开发的 简单本地的人声背景音分离工具,使用简单
  • 确保音频文件内只有一个人在说话
  • 可以多个音频文件,每个音频文件时长可以小于2分钟,但总时长应大于2分钟

1. 训练第一步:自动整理数据+切分音频并识别文字

在准备好训练声音素材后,点击上传区域,选中准备好的声音。

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

然写模型名称:模型名称就是在使用界面所显示的角色名,由英文、数字、下划线组成

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

选择音频发声语言:如果是中文,选择“zh”

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

一切准备并填写好之后,点击按钮“第一步:上传音频文件后点击开始整理数据”,将开始切分音频、识别文字,识别出的结果将在按钮下方文本区域显示。

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

2. 训练第二步:修改识别出的文字

第一步完成后,识别出的文字会自动显示在下方的左右文本区域内

第一行是元信息 audio_file|text|speaker_name ,不要删除也不要修改。

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

从第一行之后的是训练数据,每行由符号 | 分成3个部分

第一部分是切分后的音频片段名称,无需改动。

第三部分暂未用到,无需修改,但也不要删除。

唯一需要修改的是第二部分,在这部分,可以修改识别不正确的文字或添加标点符号,比如“星系”被识别成了“星期”,那么就可以手动修改正确。如果缺少标点,可以添加上标点符号。

左侧是训练用的数据,比较多,右侧是训练后用于验证结果的数据,相对较少,不用担心,这不是错误。你只需修改错别字即可。

如果你认为某行内容不好,不想要了,直接删除这一整行内容即可,但切记第一行的元信息不可删除。也不可删到只剩下第一行。这样数据不完整,将无法训练。

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

当然也可以不修改,直接点击下方“第二步”按钮启动训练。

训练第三步:测试训练好的模型效果

第二步完成后会自动填充下方的“参考音频”文本框

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

当然你可以手动修改“参考音频”,在自动填充后,根据参考音频的路径,去找到参考音频所在文件夹,该文件夹里是所有已切分好的wav音频片段,你可以在此找到一个效果更好的音频文件,复制它的名称,替换自动填充的音频名称。

比如我第二步训练完成后,自动填充的参数音频是F:/clone/tts/run/dataset1223/001.wav, 然后我可以去 F:/clone/tts/run/dataset1223/ 这个文件夹下,在一堆wav文件中找到一个声音效果更好的音频文件,这个文件是 007.wav, 那么我将参考音频里的 001.wav 改为007.wav,最终修改后的参考音频文本框里就是F:/clone/tts/run/dataset1223/007.wav,要特别注意文本框内最后是 .wav,千万别填成无后缀的007或者007.wav.wav

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

输入要合成的文字,比如默认输入的是“你好啊,我亲爱的朋友”,你也可以改成其他的,但要注意一行不要太长,最长不要超过80个字符,并要正确使用标点符号。

准备好后,点击按钮“第三步:自动填充参考音频后,点击测试模型效果”,等待右侧生成并显示音频文件。

显示后,点击播放按钮,就可以听到合成声音了。感觉效果怎么样,如果不满意,可以再重新训练。

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

如果感到满意想在“clone-voice”中使用,点击底部按钮。

训练第四步:复制到 clone-voice 中使用

对效果如果满意,想在clone-voice中使用,就点击最底部的按钮 “第四步:效果如果满意,点击复制到clone-voice中使用它”,提示成后,就可以在 clone-voice中使用了,和使用其他角色名称一样。

复制成后,再到 软件目录下 tts/mymodels/ 下看一看,是否存在这个模型名称的文件夹,文件夹内是否存在 model.pth config.json vocab.json base.wav 这4个文件,如果都存在, 说明一切OK。

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

启动该模型,然后选择使用,试试效果吧。

如何调整训练参数

为简化训练流程,利于新手操作,特意隐藏了绝大部分训练参数的调整,有一定技术能力的用户,建议拉取源码,自行修改训练,效果可能更好。

其他用户如果想简单调整下训练轮次(默认15轮),可打开软件目录下的 params.json文件,

简单4步,训练自己的声音克隆TTS模型,clone-voice微调训练

"num_epochs":15即代表训练15轮,你可以调整为其他轮次,比如30,效果能有一定提升。

"batch_size":4代表一次批量训练4行数据,如果你的显卡性能较好,显存较大,可以适当调大该数字,如果你没有配置好cuda,那么该数字可以降低为2

"port":5003这个代表训练页面打开的端口,如果该端口已被占用,可以修改为其他大于1024的数字。

修改保存后,记得关闭黑窗口再重新打开哦。

注意,如果能打开训练界面,但在训练中始终报各种错误,建议使用源码部署,部署方法见GitHub仓库说明介绍 ,启动方法类似,也是双击 runtrain.bat

转载自:https://juejin.cn/post/7340472228927635496
评论
请登录