I think this has to do with learning styles, but I've found that working on real problems (like those on Kaggle) is a better way to learn machine learning than reading text books. When I'm working on problems, it becomes evident what I don't know. Then I'm able to intelligently go through the books and learn the relevant bits. When I start with the math, I tend not to remember anything because I have no foundation to attach the math knowledge to.