It seems, you are accidentally passing a method to a forward function in this line of code:
return self.fc(hidden.squeeze)

Make sure you are calling the squeeze operation and pass its output to self.fc via:
return self.fc(hidden.squeeze())