#output: [batch_size, len, trg_vocab_size]#trg: [batch_size, len]#发现并不能直接计算#需要reshape成样例中的形状output= output.reshape(-1, trg_vocab_size) trg= trg.reshape(-1) loss= criterion(output, trg) indexes转one-hot one-hot转indexes __EOF__...
trg= trg.to(config.device) 这样可以得到src和trg,然后可以输入到模型得到输出 output = model(src, trg) 那output与trg计算交叉熵,也就是loss 假如output: [batch_size, len, trg_vocab_size], trg: [batch_size, len],并不能直接计算,需要分别resize成二维和一维 ref https://www.cnblogs.com/lfri/p...
#output: [batch_size, len, trg_vocab_size]#trg: [batch_size, len]#发现并不能直接计算#需要reshape成样例中的形状output= output.reshape(-1, trg_vocab_size) trg= trg.reshape(-1) loss= criterion(output, trg) __EOF__