pytorch- все статьи тега


Как сделать произведение матриц в Пыторхе

В numpy я могу сделать простое умножение матрицы следующим образом: a = numpy.arange(2*3).reshape(3,2) b = numpy.arange(2).reshape(2,1) print(a) print(b) print(a.dot(b)) Однако, когда я пытаюсь сделать это с тензорами Пирча, это не работает: a = torch.Tensor([[1, 2, 3], [1, 2, 3]]).view(-1, 2) b = torch.Tensor([[2, 1]]).view(2, -1) print(a) print(a.size()) print(b) print(b.size()) print(torch.dot(a, b)) Этот код выдает следующую ошибку: RuntimeError: несогласованный размер тензора ...

Понимание простой LSTM pytorch

import torch,ipdb import torch.autograd as autograd import torch.nn as nn import torch.nn.functional as F import torch.optim as optim from torch.autograd import Variable rnn = nn.LSTM(input_size=10, hidden_size=20, num_layers=2) input = Variable(torch.randn(5, 3, 10)) h0 = Variable(torch.randn(2, 3, 20)) c0 = Variable(torch.randn(2, 3, 20)) output, hn = rnn(input, (h0, c0)) Это пример LSTM из docs. Я не знаю, понимаю следующие вещи: Что такое выходной размер и почему он нигде не указан? По ...

Лучший способ сохранить обученную модель в PyTorch?

Я искал альтернативные способы сохранить обученную модель в PyTorch. До сих пор я нашел две альтернативы. факел.сохранить() для сохранения модели и факел.нагрузки() для загрузки модели. модель.state_dict () для сохранения обученной модели и модель.load_state_dict () для загрузки сохраненной модели. я наткнулся на это обсуждение где подход 2 рекомендуется за 1 подход. мой вопрос в том, почему предпочтителен второй подход? Это только потому, что факел.nn модули имеют эти две функции, и нам р ...