代码之家  ›  专栏  ›  技术社区  ›  Kohki Mametani

修正seq2seq模型的错误输出

  •  0
  • Kohki Mametani  · 技术社区  · 7 年前

    我想问你,我们如何能有效地重新训练一个训练有素的seq2seq模型,以消除/减轻一个特定的观察到的错误输出。我将给出一个关于语音合成的例子,但是任何来自不同领域的想法,比如机器翻译和语音识别,使用seq2seq模型都会很受欢迎。

    我学习了Seq2Seq和注意力模型的基础知识,特别是对于语音合成,比如 Tacotron-2 . 使用一个分布式的训练有素的模型向我展示了我们的计算机可以很自然地与seq2seq(端到端)模型对话(您可以听一些音频样本 here )但是,这个模型仍然不能正确地阅读一些单词,例如,它不能以多种方式阅读“服从[b]”,如[b]和[b]。

    原因很明显,因为在我们的数据集中,“服从”这个词出现得太少了,在225715个词中只有三次( LJ Speech )而且模特也没有运气。

    那么,我们如何重新训练模型来克服这个错误呢?添加包含“服从”发音的额外音频剪辑听起来不切实际,但重复使用这三个音频剪辑有过度拟合的危险。而且,我认为我们使用一个训练有素的模型,“简单地多训练”并不是一个有效的解决方案。

    现在,这是seq2seq模型的一个缺点,人们很少谈论它。该模型成功地简化了传统模型的流程,如语音合成,用单一的神经网络代替了声学模型和文本分析前端等。但我们完全失去了模型的可控性。不可能以特定的方式读取系统。

    同样,如果您在任何字段中使用seq2seq模型并获得不希望的输出,那么如何解决这个问题?是否有数据科学的方法来解决这个问题,或者也许有一个前沿的神经网络机制来获得seq2seq模型中更多的可控性?

    谢谢。

    1 回复  |  直到 7 年前
        1
  •  0
  •   Kohki Mametani    7 年前

    我在第3.2节找到了自己问题的答案 the paper (低沉的声音3)。 因此,他们同时训练了基于音素的模型和基于字符的模型,主要使用音素输入,但如果单词不能转换成音素表示,则使用基于字符的模型。