Light drizzly rain can start without being noticed. Maybe you are engrossed in your work then suddenly you hear those big drops tap, tap, tapping on the drainpipe. When the big drops first get your attention you can be pretty sure everything is already well and truly wet outside. A little drizzle can make a big impact. First, drizzle collects in puddles. Puddles of water start running down drainpipes. Drainpipes fill water tanks, all because of a little drizzle.
Learning is like drizzly rain. As you work on your learning project the connections are forming and your proficiency is improving but you don't notice at first. It's action is subtle. You may not notice for some time before the experience pools together to form puddles. The puddles of learning eventually start getting your attention, and the attention of others just like that drainpipe. In order to make full use of this drizzle-like learning we need an efficient way to collect the droplets, just like the roof and water tanks collect drizzle.
Let's look at three ways to help you quickly build up your machine learning skills.
- Time box
Part 1: Excitement
Without excitement your study plan is a non-starter
You need some motivation of course. For example, having a good job and salary can be a motivating factor but if this is the only reason for you studying machine learning you will struggle. Being a mercenary with your work is not a very good long term strategy. Even if you are very well paid you can still find something lacking.
What you lack is excitement. But what if you don't know if you will enjoy what you do? No-one really knows before they try anything if they will like it or not. In every field there will be people who love it and there are those who are not having much fun. One possible mistake that you are making if you are not very excited about the work you do is if you are seeking perfection in your results. If your work doesn't meet your standards it is very easy to slip into discontent and this can become a self fulfilling prophecy.
Being discontented is a habit worth breaking
If you can only be happy when something happens in the future you may find that this future thing never happens. We can only be satisfied in the present moment. We can only enjoy our work right now. The future is only a thought in your head. Instead of ruminating about the gap between where you are now and where you would like to be you can discover joy in doing the work that is right in front on you right now.
For example, how you are feeling about writing some SQL code is up to you. You can choose to view it as boring and mundane or become fascinated in the lines you are typing right now. One of the big benefits of writing code is that it offers the potential for rapid feedback. If your code throws up an error you can change your response to it by becoming excited about this new opportunity to learn.
Excitement is not so much about something what you get out of your learning project but what you put into it. By now you’re probably thinking about results? Aren’t they important too? This brings us to part 2 of our learning study plan and the concept of do-ability.
Part 2: Do-ability and the 3 Boxes
Do-ability is so obvious we forget about it
Taking on too many new things at one time can be overwhelming and leads to slow progress. For example, in her landmark book Badass: Making Users Awesome, Kathy Sierra draws three side-by-side boxes. In one box you have the things that you want to know but can't yet do. This is where you might be in machine learning right now. Let's say your unknown box includes the TensorFlow platform, the Random Forrest algorithm and Confusion Matrices. Some or all of these may even be unknown to you.
The Middle Box is For Right Now
Imagine if we moved those 3 machine learning topics into the doing box right now. Firstly, we have now split our focus into 3 different topics of very different complexity. TensorFlow is a huge topic with many, many sub-topics. Random Forrest is better but still quite vast and then we have confusion matrices. This is a sub-sub-topic that you can learn about and make progress in less than 30 minutes. This is a do-able piece of work. So this is where you can pause, put TensorFlow and Random Forrest back in the to-do box and focus on just one piece of work you can do right now.
Once you have mastered the confusion matrix concept you don't put it back in box one do you? So what do you do with a skill you have learnt?
The ‘Can Do’ Box is For the Stuff You Have Mastered
All those concepts and skills we have mastered to a certain level of proficiency go in the done box. Before you move onto the next learning topic you need to put 'confusion matrices' into the 'done' box. This leaves the ’to-do’ box wide open and ready to receive the next piece of work. Box 2 is your window of attention. It's what you are working on right now.
So far we've introduced the importance of working on just one piece of your learning project at a time and how you can bring more excitement into your work by focusing completely in the moment. But wait there’s a fourth box we haven’t really talked about yet, the time box.
Part 3: Time Boxing - the 4th Dimension
Time boxing is about breaking the skills you are learning into pieces
Small skills or concepts you can grasp within 30 minutes to an hour are more easily digestible. In our previous example of TensorFlow, Random Forrest and Confusion Matrices we noticed that they were at different levels of complexity, from daunting to do-able.
Your goals can become more do-able when you start leveraging time boxing. Find a skill that can be practiced within a short amount of time right now. If you think about TensorFlow, a huge and scary machine learning topic, we can quickly break this down into something we can learn in 30 minutes. For example, TensorFlow is widely used for image recognition and there are many pre-trained networks you can download to help you build a machine learning algorithm that recognises antelopes. So we might just focus on understanding about pre-trained networks today. You can go even deeper depending on your current level of understanding.
Identify a sub-topic goal that is do-able in a 30-min time box
The reason I recommend 30 minutes is because our brain does enjoy getting little rewards. If you can break the learning task down into a small enough chunks you can digest in a short time you can keep your monkey brain well fed and contented. And this concludes our 3 part study plan.
Maybe you were expecting something else? What about the detail upon detail and step by step study plan? There are always those who want more. Well if that's what get's you excited by all means build your spreadsheet and Gant charts but all you really need is a little curiosity in the present moment, and a single piece of work that you can break down into something that is do-able in a short time boxed window. There is always more that you want learn waiting for you in box number 1. There are always more things to add box number 1 the more deeply you delve into the big topics in machine learning.
Our machine learning priority is to build your learning up in a way that makes it fun (just like playing in the rain can be).
Let’s summarise how you can more quickly build the skills you need:
- First make sure what you are doing actually excites you. If it isn't already then you are doing it the wrong way. Just changing your perspective to one of fascination about what you are doing right now can help avoid the mercenary curse.
- Being perpetually discontented is a habit worth breaking. Becoming more at one with the present moment will help break your unhelpful mental loopS. Ruminating about what did or didn't happened in the past or what might or might not happen in the future is a common source of discontent.
- Use the 3 boxes of skill acquisition to organise the stuff you want to learn to avoid feeling overwhelm.
- Break the learning task down and time box your learning into 30 minute do-able pieces.
What skills do you need to put in box number 1?