Understanding Machine-Learning : From Theory to Algorithms - Shalev-Shwartz, Shai (Cambridge University)