I’m using TTS cloned 4/24/2020. The end of epoch test sentences fail to generate when I set attention_type to “graves”:
!! Error creating Test Sentence - 0 Traceback (most recent call last): File "train.py", line 501, in evaluate do_trim_silence=False) File "/opt/voices/TTS/tts_namespace/TTS/utils/synthesis.py", line 129, in synthesis model, inputs, CONFIG, truncated, speaker_id, style_mel) File "/opt/voices/TTS/tts_namespace/TTS/utils/synthesis.py", line 43, in run_model inputs, speaker_ids=speaker_id) File "/usr/local/lib/python3.7/dist-packages/torch/autograd/grad_mode.py", line 49, in decorate_no_grad return func(*args, **kwargs) File "/opt/voices/TTS/tts_namespace/TTS/models/tacotron.py", line 150, in inference encoder_outputs, self.speaker_embeddings_projected) File "/opt/voices/TTS/tts_namespace/TTS/layers/tacotron.py", line 457, in inference self.attention.init_win_idx() File "/usr/local/lib/python3.7/dist-packages/torch/nn/modules/module.py", line 576, in __getattr__ type(self).__name__, name)) AttributeError: 'GravesAttention' object has no attribute 'init_win_idx'
I noted there’s another person who mentioned they had to disable this in layers/tacotron.py (Multispeaker development progress) but did not see a resolution there. Also nothing on github issues.
The GravesAttention portion of the common_layers.py doesn’t have the def init_win_idx that the OriginalAttention does (https://github.com/mozilla/TTS/blob/2e2221f146f1ca301a3b2b547d8f26b9009676de/layers/common_layers.py#L230), which I’m guessing is why. I’m not skilled enough to attempt a fix I’d consider reliable, either. Should I just comment the call in layers/tacotron.py (https://github.com/mozilla/TTS/blob/master/layers/tacotron.py#L457) out for now? I can provide more info about my setup if needed.
For the time being I’ve commented the line out, and test wavs are working again.