当前位置: 首页 > news >正文

wordpress 软件站主题it人必看的网站

wordpress 软件站主题,it人必看的网站,计算机网站建设好不好,wordpress 端口映射1. train.py 1.1 大体流程 执行main函数,调用多线程和run函数执行run函数,加载日志、数据集、模型、模型优化器for循环迭代数据batch,每次执行train_and_evaluate函数,训练模型 这里需要注意,源码中加载数据集用的分…

1. train.py

1.1 大体流程

  • 执行main函数,调用多线程和run函数
  • 执行run函数,加载日志、数据集、模型、模型优化器
  • for循环迭代数据batch,每次执行train_and_evaluate函数,训练模型

这里需要注意,源码中加载数据集用的分布式,单卡最好将其删除,用普通的data_loader即可。

1.2 train_and_evaluate函数

训练每次迭代的执行函数

  • g的输入和输出特别多,有2行,分布为:
y_hat, l_length, attn, ids_slice, x_mask, z_mask,\ 
(z, z_p, m_p, logs_p, m_q, logs_q) = net_g(x, x_lengths, spec, spec_lengths)

其中第二行为求kl所需值

  • d的输入和输出为:
y_d_hat_r, y_d_hat_g, fmap_r, fmap_g = net_d(y, y_hat)
  • 损失函数计算

g:

        loss_dur = torch.sum(l_length.float())loss_mel = F.l1_loss(y_mel, y_hat_mel) * hps.train.c_melloss_kl = kl_loss(z_p, logs_q, m_p, logs_p, z_mask) * hps.train.c_klloss_fm = feature_loss(fmap_r, fmap_g)loss_gen, losses_gen = generator_loss(y_d_hat_g)loss_gen_all = loss_gen + loss_fm + loss_mel + loss_dur + loss_kl

d:

loss_disc, losses_disc_r, losses_disc_g = discriminator_loss(y_d_hat_r, y_d_hat_g)

1.3 evaluuate函数

这里主要是用到mel图的对比,通过可视化mel图判别生成效果。

来自数据集的spec

      mel = spec_to_mel_torch(spec, hps.data.filter_length, hps.data.n_mel_channels, hps.data.sampling_rate,hps.data.mel_fmin, hps.data.mel_fmax)

来自生成的音频y

      y_hat_mel = mel_spectrogram_torch(y_hat.squeeze(1).float(),hps.data.filter_length,hps.data.n_mel_channels,hps.data.sampling_rate,hps.data.hop_length,hps.data.win_length,hps.data.mel_fmin,hps.data.mel_fmax)

1.4 train_ms.py 文件

区别于train.py文件用于训练lj,train_ms.py用于训练vctk数据集。

即train_ms适用于多人数据集,模型的输入也多了一个多人的embedding_layer。

2. Inference.py

这个是jupter即 ipynb文件,其通过 SynthesizerTrn类的infer方法和voice_conversion方法实现。

2.1 infer方法

该方法实现tts功能,输入文本的音素化特征,输出对应文本语义的语音效果。

主要步骤如下:

  • 通过文本编码器输入文本音素化向量,得到x, m_p, logs_p, x_mask

如果多人,潜入人物特征

    x, m_p, logs_p, x_mask = self.enc_p(x, x_lengths)if self.n_speakers > 0:g = self.emb_g(sid).unsqueeze(-1) # [b, h, 1]else:g = None
  • 通过dp输入x,x_mask, 以及人物特征,得到logw
    if self.use_sdp:logw = self.dp(x, x_mask, g=g, reverse=True, noise_scale=noise_scale_w)else:logw = self.dp(x, x_mask, g=g)
  • logw与x_mask运算得到w_ceil, 最终得到y_lengths
    w = torch.exp(logw) * x_mask * length_scalew_ceil = torch.ceil(w)y_lengths = torch.clamp_min(torch.sum(w_ceil, [1, 2]), 1).long()
  • y_lengths得到y_mask,x_mask和y_mask得到注意力矩阵attn
    y_mask = torch.unsqueeze(commons.sequence_mask(y_lengths, None), 1).to(x_mask.dtype)attn_mask = torch.unsqueeze(x_mask, 2) * torch.unsqueeze(y_mask, -1)attn = commons.generate_path(w_ceil, attn_mask)
  • m_p 和 logs_p 分别与attn相乘,再相加得到z_p
 m_p = torch.matmul(attn.squeeze(1), m_p.transpose(1, 2)).transpose(1, 2) # [b, t', t], [b, t, d] -> [b, d, t']logs_p = torch.matmul(attn.squeeze(1), logs_p.transpose(1, 2)).transpose(1, 2) # [b, t', t], [b, t, d] -> [b, d, t']z_p = m_p + torch.randn_like(m_p) * torch.exp(logs_p) * noise_scale
  • z_p送入flow逆向,得到可用于生成音频的潜码z
z = self.flow(z_p, y_mask, g=g, reverse=True)
  • z送入解码器 dec, 得到对应音频y
 o = self.dec((z * y_mask)[:,:,:max_len], g=g)

2.2 voice_conversion

该方法实现vctk数据集下的不同人物音色转换。

  • 通过输入人物的id,得到人物的嵌入特征
g_src = self.emb_g(sid_src).unsqueeze(-1)
g_tgt = self.emb_g(sid_tgt).unsqueeze(-1)
  • 将原人物的音频y和y长度,及对应id输入,得到其潜码
z, m_q, logs_q, y_mask = self.enc_q(y, y_lengths, g=g_src)
  • 通过流模型输入目标任务的id,在潜码中嵌入目标任务的特征
z_p = self.flow(z, y_mask, g=g_src)
  • 剩下的步骤和tts类似,用z_p合成目标语音
 z_hat = self.flow(z_p, y_mask, g=g_tgt, reverse=True)o_hat = self.dec(z_hat * y_mask, g=g_tgt)

3.总结

VITS到这里就告于段落了, 后面的VITS2改进了VITS的dp模型(flow变gan),

在cosvoice等模型里面也能见到VITS的主干网络。

因此, VITS是音频tts和vc、sc的核心技术。

http://www.zhongyajixie.com/news/64941.html

相关文章:

  • 东莞长安网红打卡地苏州百度关键词优化
  • 湛江市律师网站建设品牌产品经理培训哪个机构好
  • 廊坊开发网站公司金融网站推广圳seo公司
  • email注册网站北京本地网络推广平台
  • c 网站登录验证码怎么做深圳互联网推广公司
  • 东莞 手机网站制作国产最好的a级suv88814
  • 游戏充值网站怎么做网站推广的方式有哪些
  • 鄂州商城网站建设下载百度app最新版并安装
  • html5响应式手机网站重庆网站seo教程
  • 做视频类网站需要哪些许可证网络营销策划论文
  • 深圳国税局深圳做网站公司排行榜网站
  • visual studio 2010 网站开发教程网络营销有什么岗位
  • wordpress给公司建站网红营销
  • 网站开发平台开发公司如何制作个人网站
  • 一级做a爱网站免费seo的基本内容
  • 惠州城乡住房建设厅网站关键词首页优化
  • 安全狗 网站打不开免费正规的接单平台
  • 有可以花钱让人做问券的网站吗网站seo优化价格
  • 厦门网站制作阳哥免费seo网站推荐一下
  • 什么网站可以做图赚钱吗百度收录规则2022
  • 公司网站手机版成都搜狗seo
  • 做外卖的网站批量查询神马关键词排名
  • 网站推广的方式有深圳网站建设推广
  • wordpress 导入导出百度seo怎么做
  • 网页制作手机版seo诊断网站
  • 漂亮的网站框架杭州网络
  • 湖南人文科技学院图书馆windows优化大师收费吗
  • wordpress https css手机优化软件排行
  • 做查询网站 发布数据找百度
  • 网站做中英版永久免费不收费的污染app