Robustness and Generalization Under Distribution Shifts