Train only part of fc layer?

Hi, I’m trying to use only a linear layer (fc = nn.Linear(1000, 1000)), and I think I can treat the weight as a 1000 x 1000 matrix. I plan to use only part of the layer, for example, the input has dimension 400 and output has dimension 600, so I only use the 400*600 submatrix of the 1000 x 1000 matrix. How could I achieve this? Do I need to construct another nn.Linear(400, 600) and copy the updated weights to original 1000 x 1000 matrix for each iteration? I want to do this since every time when I update the weight, it is possible that I update different 400 x 600 submatrix of the 1000 x 1000 matrix.