MIT's OCW will start your learning, of machine-learning, properly. The first course from MIT's OCW to learn from is 6.00. 6.00 gets you into "unsupervised learning", which is machine learning, by lecture 19.
To truly learn machine-learning, it's advisable to actually go through all the lectures, not just 19 and 20. The topics of divide and conquer algorithms, complexity, and later graphs (different from what you think) will help you substantially with machine learning in the future.
MIT OCW's free course here:
https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-compu...