nn.LogSoftmax should use dim=1 for a multi-class classification use case and, as @jubick explained, you would also have to increase the number of output features to 3.
Since you are using nn.LogSoftmax as the last activation, you should use nn.NLLLoss as the criterion, which expects the target in the shape [batch_size] containing target indices in the range [0, nb_classes-1].