outputs.argmax(1) will return an all zero tensor, since your output has the shape [batch_size, 1].
To get the prediction after a sigmoid layer you could use a threshold such as:
preds = outputs > 0.5

Afterwards, you could calculate the accuracy or error by comparing the target tensor to this prediction tensor.