litm5e0 2019-05-09 10:30 采纳率: 100%
浏览 2488
已结题

tacotron(seq2seq)模型训练80k步后损失函数上升

用10h的中文数据集训练Google tacotron(seq-attention-seq)模型,每次训练到80k步后损失就开始猛涨(梯度爆炸?)而且loss最低值下降到了0.75左右。但是模型的alignment很明显,合成语音只是有杂声。怎么解决?

alignment:

图片说明图片说明

学习率/损失/梯度等曲线:

图片说明
图片说明

** 模型参数:**

# 模型:Tacotron 1
  outputs_per_step=5,
  embed_depth=512,
  prenet_depths=[256, 256],
  encoder_depth=256,
  postnet_depth=512,
  attention_depth=128,
  decoder_depth=1024,

# 优化器:Adam
  batch_size=32,
  adam_beta1=0.9,
  adam_beta2=0.999,
  initial_learning_rate=0.002,
  decay_learning_rate=True,
  use_cmudict=False,

# Initializer:
  truncated_normal_initializer

# 学习率延迟:
  step = init_lr * warmup_steps**0.5 * tf.minimum(step * warmup_steps**-1.5, step**-0.5)
  • 写回答

1条回答 默认 最新

  • threenewbee 2019-05-09 12:32
    关注

    学习率降低一些,用dropout/正则化防止过拟合,还有增加训练数据量或者提前结束训练。

    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘