Understanding Machine Learning: From Theory To Algorithms

Shai Shalev-Shwartz is one of the popular people in machine learning research world. With dozens of papers published his breadth of research is outstanding. This book covers several topics and is structured very well for undergraduates. I recommend reading this book as well as the papers to anyone who is serious about optimization techniques and machine learning in general.