Я устанавливаю случайное начальное число для random и numpy.random в начале моего основного файла:
import random
import numpy as np
np.random.seed(42)
random.seed(42)
import torch
Тем не менее, когда я создаю объект Net () со случайно инициализированными параметрами, он каждый раз дает совершенно другой результат:
net=neuralnet.Net()
print ("initialized params: ", net.fc1.weight)
Обратите внимание, что neuralnet.Net()
находится в другом файле и является классом, который расширяет torch.nn.Module
. torch.nn.Module
случайным образом инициализирует net.fc1.weight
, а не мой собственный код.
Как это возможно, что когда я создаю объект Net () со случайно инициализированными параметрами, он каждый раз дает совершенно другой результат?