Controllable Invariance through Adversarial Feature Learning