Given that you want these operations to be part of the computational graph, you should not use .data (in general you should never use it  )
Also I am a bit confused why you modify cl1’s weights after you did the forward on it?