Principled approaches to modern machine learning challenges