I've learned some machine learning fundamentals through Codecademy Pro, and I took a quick look at what Kaggle offered for free. There's another option, from another name that (for better and worse) taken leadership in monetizing machine learning: Google. Their freely available Machine Learning Crash Course supposedly started as a way for Google to get their own developers up to speed, and has since been made suitable for public consumption and now available for all.

My favorite part of this course was their prerequisites & prework page. I used this as a guide to choose some of my courses on Codecademy Pro, it's how I knew Numpy and Pandas were important to the field. However their linked "UltraQuick Tutorial" for those libraries were a bit too terse for me. I have no doubt they provided enough background for people smarter than I am. Personally, I needed help from Codecademy to get ramped up on NumPy and Pandas.

For interactive learning, these courses use Google Colab. Which feels a lot like Kaggle in the sense that they are both cloud-hosted Jupyter (or at least Jupyter style) notebooks. They differ by the server-end hardware, and the software images running on their hardware. I'm too new at this to have any feel of the tradeoffs between those two options, but I do understand the storage difference: Google Colab uses my Google Drive account for storage.

The primary reason I didn't go with this Machine Learning Crash Course was the fact that instructions came in the form of video lectures, and that turns me off. For self-directed education I prefer the written word because I can go at my own pace and I can easily search and skip around. Many people prefer video lectures as the most direct counterpart to in-person instruction, but I don't see it that way. For me the most valuable aspect of in-person instruction is the interactive question-and-answer aspect, which is completely lost in a video lecture.

And finally, this course does not cover reinforcement learning, which is my primary interest in applying machine learning. A search for RL on Google developer site leads to the Agents library and associated documentation, but that material was written to help apply reinforcement learning instead of teaching it. I'll return to the TensorFlow Agents library after getting ramped up on deep RL somewhere else.