You could detach() the tensors to create a new leaf tensor, which would support the deepcopy again.
A few issues besides that:

Don’t use torch.Tensor as it would be using uninitialized memory. If that’s your use case, use torch.empy instead.
Don’t use the .data attribute as it could yield unwanted side effects. Instead wrap your code into a with torch.no_grad() block and copy_ the new data into the parameter, if needed.