Machine Learning With Provable Robustness Guarantees