Getting different results with weights.data

I’m initializing weights of a hidden layer
self.hidden_layer_1.weight.data = torch.nn.Parameter(torch.from_numpy(weights))

self.hidden_layer_1.weight = torch.nn.Parameter(torch.from_numpy(weights))

And I’m getting different losses when running the model

I advise you to use the second approach, or the first one but modified as follows:

self.hidden_layer_1.weight.data = torch.from_numpy(weights) # torch.nn.Parameter is really not needed in this case

Thanks. Do you know why they produce different results after backward propogation?