本文主要是介绍Fantasy Mix-Lingual Tacotron Version 4: Google-ZYX-Phoneme-HCSI-DBMIX 调整LID,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
0. 说明
VAE + LID效果目前是最好的, 将LID调整下, 不在decoder拼接LID, 在encoder_output处拼接
1. 枚举方案
有以下方案
- speaker emb和residual仍然在decoder拼接, 只LID在前面
- speaker emb和residual放在前面与否, 仅仅是被query的内容不同; 而根据query为声学特征, memory为文本特征, 放在后面更好, 或者说没必要多尝试.
全部提到前面, 但是否掉这个, 因为speaker 信息放在decoder部分加, 是挺好的, 也可以影响到alignment的, 并且保证了text encoding中统一对TXT进行分析 - Language放前面, 统一经过RNN Encoder, 尝试这个分支思路的话, 带上residual phoneme的那版论文, 应该是谢磊老师的Phoneme-informed attention-"Building a mixed-lingual neural TTS system with only monolingual data"论文, 先不做
其实也是有问题的, RNN会不会把Phoneme整错位了, LID用不用直接拼接到phoneme embedding上; 不过差别还挺大的, 因为拼接到encoder_output, 很强的语言信息了
同时把 Fantasy Mix-Lingual Tacotron Version 5也复现一版LID在前面的
2. 代码修正
2.0 小bug们
中文训练语料一定以.结束, 所以后面跟的有10
英文训练语料一定会以.结束, 所以后面跟的有11
对应于~的地方, 加一个assert
对于tone_stress和language id, 分别以12和2作为padding占位符, 再加上会encoder_mask, 所以挺严谨的
2.1. Fantasy_Mix-Lingual_Tacotron_Version_4-1_Google-ZYX-Phoneme-HCSI-DBMIX
对应: speaker emb和residual仍然在decoder拼接, 只LID在前面
并且LID是拼接在经过encoder之后的向量中, 而不是在phoneme变成embedding的地方
这篇关于Fantasy Mix-Lingual Tacotron Version 4: Google-ZYX-Phoneme-HCSI-DBMIX 调整LID的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!