From c26310a7b915456656923387790eab8c24c8ab47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stardust=C2=B7=E5=87=8F?= <2225664821@qq.com> Date: Mon, 21 Aug 2023 08:20:23 +0800 Subject: [PATCH] Update models.py --- models.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/models.py b/models.py index 71f4cef..b627018 100644 --- a/models.py +++ b/models.py @@ -538,7 +538,10 @@ class SynthesizerTrn(nn.Module): self.n_layers_trans_flow = n_layers_trans_flow self.use_sdp = use_sdp - + self.use_noise_scaled_mas = kwargs.get("use_noise_scaled_mas", False) + self.mas_noise_scale_initial = kwargs.get("mas_noise_scale_initial", 0.01) + self.noise_scale_delta = kwargs.get("noise_scale_delta", 2e-6) + self.current_mas_noise_scale = self.mas_noise_scale_initial self.enc_p = TextEncoder(n_vocab, inter_channels, hidden_channels, @@ -583,6 +586,9 @@ class SynthesizerTrn(nn.Module): neg_cent3 = torch.matmul(z_p.transpose(1, 2), (m_p * s_p_sq_r)) # [b, t_t, d] x [b, d, t_s] = [b, t_t, t_s] neg_cent4 = torch.sum(-0.5 * (m_p ** 2) * s_p_sq_r, [1], keepdim=True) # [b, 1, t_s] neg_cent = neg_cent1 + neg_cent2 + neg_cent3 + neg_cent4 + if self.use_noise_scaled_mas: + epsilon = torch.sum(logs_p, dim=1).exp() * torch.randn_like(neg_cent) * self.current_mas_noise_scale + neg_cent = neg_cent + epsilon attn_mask = torch.unsqueeze(x_mask, 2) * torch.unsqueeze(y_mask, -1) attn = monotonic_align.maximum_path(neg_cent, attn_mask.squeeze(1)).unsqueeze(1).detach()