From deee9d447f2b206dceea717d7cab81060a6a479d Mon Sep 17 00:00:00 2001 From: SolomidHero Date: Mon, 16 Nov 2020 02:34:18 +0300 Subject: [PATCH] pack_padded_sequence fix --- flowtron.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flowtron.py b/flowtron.py index b8fd8f0..5996483 100644 --- a/flowtron.py +++ b/flowtron.py @@ -213,7 +213,7 @@ def run_padded_sequence(self, sorted_idx, unsort_idx, lens, padded_data, recurre # sort the data by decreasing length using provided index # we assume batch index is in dim=1 padded_data = padded_data[:, sorted_idx] - padded_data = nn.utils.rnn.pack_padded_sequence(padded_data, lens) + padded_data = nn.utils.rnn.pack_padded_sequence(padded_data, lens.cpu()) hidden_vectors = recurrent_model(padded_data)[0] hidden_vectors, _ = nn.utils.rnn.pad_packed_sequence(hidden_vectors) # unsort the results at dim=1 and return @@ -320,7 +320,7 @@ def forward(self, x, in_lens): for conv in self.convolutions: x = F.dropout(F.relu(conv(x)), 0.5, self.training) x = x.transpose(1, 2) - x = nn.utils.rnn.pack_padded_sequence(x, in_lens, batch_first=True) + x = nn.utils.rnn.pack_padded_sequence(x, in_lens.cpu(), batch_first=True) self.lstm.flatten_parameters() outputs, _ = self.lstm(x) @@ -448,7 +448,7 @@ def run_padded_sequence(self, sorted_idx, unsort_idx, lens, padded_data, # sort the data by decreasing length using provided index # we assume batch index is in dim=1 padded_data = padded_data[:, sorted_idx] - padded_data = nn.utils.rnn.pack_padded_sequence(padded_data, lens) + padded_data = nn.utils.rnn.pack_padded_sequence(padded_data, lens.cpu()) hidden_vectors = recurrent_model(padded_data)[0] hidden_vectors, _ = nn.utils.rnn.pad_packed_sequence(hidden_vectors) # unsort the results at dim=1 and return