У меня есть нейронная сеть со следующей структурой:
class myNetwork(nn.Module):
def __init__(self):
super(myNetwork, self).__init__()
self.bigru = nn.GRU(input_size=2, hidden_size=100, batch_first=True, bidirectional=True)
self.fc1 = nn.Linear(200, 32)
torch.nn.init.xavier_uniform_(self.fc1.weight)
self.fc2 = nn.Linear(32, 2)
torch.nn.init.xavier_uniform_(self.fc2.weight)
Мне нужно восстановить модель в необученное состояние, сбросив параметры нейронной сети. Я могу сделать это для nn.Linear
слоев, используя следующий метод:
def reset_weights(self):
torch.nn.init.xavier_uniform_(self.fc1.weight)
torch.nn.init.xavier_uniform_(self.fc2.weight)
Но, чтобы сбросить вес слоя nn.GRU
, я не смог найти такого фрагмента.
Мой вопрос: как сбросить слой nn.GRU
? Любой другой способ сброса сети также подойдет. Любая помощь приветствуется.