我想问你,我们如何有效地重新训练一个经过训练的seq2seq模型,以消除/减轻观察到的特定错误输出。我将举一个关于语音合成的例子,但是任何来自不同领域的想法,如机器翻译和语音识别,使用seq2seq模型将不胜感激。
我学习了带有注意力模型的seq2seq的基础知识,特别是对于语音合成,如Tacotron-2。 使用分布式训练有素的模型向我展示了我们的计算机如何自然地与seq2seq(端到端(模型交谈(您可以在此处收听一些音频样本(。但是,该模型仍然无法正确阅读某些单词,例如,它无法以多种方式(如[əˈbī]和[əˈbē](阅读"服从[əˈbā]"。
原因很明显,因为在我们的数据集(LJ Speech(中,"服从"这个词出现得太少,在225,715个单词中只有三次出现,而且模型没有运气。
那么,我们如何重新训练模型来克服错误呢?添加包含"obey"发音的额外音频剪辑听起来不切实际,但重复使用三个音频剪辑有过度拟合的危险。而且,我想我们使用训练有素的模型,"简单地训练更多"不是一个有效的解决方案。
现在,这是seq2seq模型的缺点之一,很少谈论。该模型成功地简化了传统模型的流水线,例如,对于语音合成,它用单个神经网络取代了声学模型和文本分析前端等。但是我们完全失去了模型的可控性。不可能使系统以特定方式读取。
同样,如果您在任何字段中使用 seq2seq 模型并获得不需要的输出,您如何解决这个问题?是否有针对此问题的数据科学解决方法,或者可能是尖端的神经网络机制来在seq2seq模型中获得更多可控性?
谢谢。
我在论文的第3.2节(Deep Voice 3(中找到了我自己问题的答案。 因此,他们训练了基于音素的模型和基于字符的模型,主要使用音素输入,但如果单词无法转换为音素表示,则使用基于字符的模型。