I wouldn’t expect the validation loss to decrease, as you are trying to overfit randomly generated samples, so the model won’t be able to “generalize” somehow to random validation samples.
However, you might be able to overfit the training dataset.
To do so, use a tiny dataset first (e.g. just 10 samples), as your model is only a single linear layer.
Also, remove the sigmoid and use nn.BCEWithLogitsLoss instead. Play around with some other hyperparameters, such as the optimizer (you might try to change it to e.g. Adam and lower the learning rate to e.g. 1e-3).
Variables are also deprecated, so remove them, too.