Hi,
This is because the .cuda() creates a new Tensor. you should do it inside the Tensor creation.
Note that the requires grad is already done by the nn.Parameter so no need to repeat it.
self.weight = torch.nn.Parameter( torch.FloatTensor(7, 32, 32, device="cuda") )