Hi, I am writing a simple MLP model, but the output of the model is always the same no matter what the input is, and also each element of the output vector approaches zero.
Here is my model:
class MLP(torch.nn.Module):
    def __init__(self, D_in, D_out):
        super(MLP, self).__init__()
        self.linear_1 = torch.nn.Linear(D_in, 1000)
        self.linear_2 = torch.nn.Linear(1000, 1500)
        self.linear_3 = torch.nn.Linear(1500, 1000)
        self.linear_4 = torch.nn.Linear(1000, 750)
        self.linear_5 = torch.nn.Linear(750, 500)
        self.linear_6 = torch.nn.Linear(500, 250)
        self.linear_7 = torch.nn.Linear(250, D_out)
        self.sigmoid = torch.nn.Sigmoid()
    
    def forward(self, x):
             
        x = self.sigmoid(self.linear_1(x))
        x = self.sigmoid(self.linear_2(x))
        x = self.sigmoid(self.linear_3(x))
        x = self.sigmoid(self.linear_4(x))
        x = self.sigmoid(self.linear_5(x))
        x = self.sigmoid(self.linear_6(x))
        y_pred = self.linear_7(x)
     
        return y_pred


I tried normalized my data before feeding them into model, I also tried make the model simpler, but it is still not working… my input dimension is 450 and output dimension is 120.
Can anyone give any suggestions?