There are lots of things you can do to learn about machine learning. There are resources like books and courses you can follow, competitions you can enter and tools you can use. In this post I want to put some structure around these activities and suggest a loose ordering of what to tackle when in your journey from programmer to machine learning master. Four Levels of Machine LearningConsider four levels of competence in machine learning. This is a model to help us think about the resources and activities available and when a good time to tackle them might be.
I want to separate beginner from novice here because I want to show that an absolute beginner (a programmer with an interest in the field) has a path before them if they choose. We are going to tour through each of these four levels and look at resources and activities that can help someone at one level learn more and progress their understanding and skill levels. The breakdown is just a suggestion, and it is very likely that some activity or resource at a level before or after can be very useful and appropriate at a given level in the breakdown. I think the overall structure is useful, I’m keen to hear what you think, leave a comment below with your thoughts. ![]() Credited to pugetsoundphotowalks, some rights reserved BeginnerA beginner is a programmer with an interest in machine learning. They may have started to read a book, Wikipedia page, or taken a few lessons in a course, but they don’t really “get it” yet. They’re frustrated because the advice they are getting is for intermediates and advanced levels. Beginners need a gentle introduction. Away from code and textbooks and courses. They need the whys and whats and hows pointed out first to lay the foundation for novice-level material. Some activities and resources for the absolute beginner are:
NoviceA novice has had some contact with the field of Machine Learning. They have read a book or taken a course. They know they are interested and they want to know more. They are starting to get it and want to start to get things done. Novices need something to do. They need to be put into action to have the material grounded and integrated into existing knowledge structures like the programming languages they know or the problems they are used to solving. Some activities and resources for the novice are:
IntermediateA novice has read some books and completed some courses. They know how to drive some tools and have written a bunch of code both implementing simple algorithms and completing tutorials. An intermediate is breaking out on their own, devising their own projects to learn new techniques and interacting and learning from the greater community. The intermediate is learning how to implement and wield algorithms accurately, competently and robustly. They are also building the skills of spending a lot of time with data up front, cleaning, summarizing and thinking about the types of questions that it can answer. Some activities and resources for the intermediate are:
AdvancedAn advanced practitioner has written a lot of code either integrating machine learning algorithms or implementing algorithms themselves. They may have competed in competitions or written plugins. They have read the textbooks, completed the courses and have a broad knowledge of the field, as well as a deep knowledge on a few key techniques of which they prefer. The advanced practitioner builds, deploys and maintains production systems that use machine learning. They keep abreast of new developments in the fields and eagerly seek out and learn the nuances of a method and tips passed around from other frontline practitioners like themselves. Some activities and resources for the advanced practitioner are:
Mastery is continuous, the learning does not end. One could pause and detour at any point along this journey and become the “competition guy” or the “pro library guy“. In fact, I expect such detours to be the norm. This breakdown could be read as a linear path of the technicians journey from beginner to advanced level, it’s intentionally programmer centric. I’m keen to hear criticisms of this reading so that I can make it better. This breakdown is just my suggestions of the types of activities to tackle if you find yourself hungering for more at a given level. So what level are you and what are you going to take on next? Leave a comment! Grab the Guide
It includes a roadmap that covers each of the four competency levels in detail focusing on the problems faced at each level, the objectives of each level and most importantly the activities to complete to master each level. Take a look at the expanded guide now.
UPDATE: Continue the discussion on Reddit. Related posts: |
|