PyTorch'te, mimarileri çok yönlü olarak tanımlayabiliriz. Burada, Sequential
modülünü kullanarak basit bir LSTM ağı oluşturmak istiyorum.Sıralı modüllü PyTorch'te basit LSTM
Lua meşalesi ben genelde birlikte gider:
model = nn.Sequential()
model:add(nn.SplitTable(1,2))
model:add(nn.Sequencer(nn.LSTM(inputSize, hiddenSize)))
model:add(nn.SelectTable(-1)) -- last step of output sequence
model:add(nn.Linear(hiddenSize, classes_n))
Ancak PyTorch içinde, geçen çıkışını almak için SelectTable
eşdeğer bulmuyorum.
nn.Sequential(
nn.LSTM(inputSize, hiddenSize, 1, batch_first=True),
# what to put here to retrieve last output of LSTM ?,
nn.Linear(hiddenSize, classe_n))
Daha önce tam olarak bir LSTM kodladım. Ama sorum şu ki, 'nn.Sequential' sıralı modülünde bunu nasıl yaparsınız? LSTM kodunuzda iki çıktıyı, 'çıktı' ve 'hn' döndürür, 'Sıra' modasıyla çıktıyı [-1] nasıl alırsınız? – BiBi
Cevabımı reddetmenin adil olduğunu düşünmüyorum, ancak Lua Torch'da olduğu gibi kapların kullanılmasının daha eski olduğuna dair daha fazla kanıt ekleyerek güncelledim. –
[Bu gönderi] 'ye göre (https://discuss.pytorch.org/t/accessing-intermediate-data-in-nn-sequential/637), PyTorch'daki' Sıra 'modülünden kurtulmak istediler ancak bir konteyner olarak rahatlığı için tuttu. Bir "Sıralı" kabı içinde ara çıkışa erişmek mümkün değil sanırım. – BiBi