http://www.amazon.com/Machine-Learning-Python-Techniques-Pre...
The main thing to understand though is that machine learning is a big topic, and you aren't going to be able to become an expert in two months.
Narrow down to a specific area, or type of problem, and focus on learning techniques and tools for that.
My guess is that there's something your working on or want to work on which is why want to learn. If that's the case, I'd recommend that read up a bit to give yourself a good understanding of the different kinds of problems out there (classification, prediction, anomaly detection, etc...), and different classes of tools available, and then pick a simple real world problem to try to tackle that is similar.
The best way to really learn is going to be getting hands on with a project and suffering through after you've read up a bit to understand the basics. Then when you hit something can't wrap your head around, search and read articles (or talk to someone with experience and expertise) until it clicks and you can proceed on working through.
By the end you'll have a good grasp of at least one technique, and be in a great place to keep learning more.
https://www.amazon.com/Programming-Elixir-1-3-Functional-Con...
https://www.amazon.com/Machine-Learning-Python-Techniques-Pr...
https://www.amazon.com/Complete-Arbitrage-Deskbook-Stephane-...