Maximize your Learning— How to Apply Machine Learning Practices to your own life.

Raimundo Manterola
Tradecraft
Published in
9 min readFeb 27, 2017

We all love pictures of dogs. They remind us of awesome mornings spent playing with our four-legged friends.

It’s pretty easy for us to recognize if there’s a dog in a photo, we’ve all seen them thousands of times.

But, what would you do if suddenly an alien abducted you because he is super curious about what dogs look like? After some introductory conversations, he forces you to teach him how to recognize them, so that he can abduct one and take it to his planet.

Keep in mind that he has no idea what dogs looks like. Where would you start?

You would have to give him some rules: They have four legs, two eyes, two ears, etc. Well, it may not be that easy. There are a lot of rules. Imagine now having to teach him how to differentiate dogs from wolves. It gets really hard.

This learning process is called deductive learning, where you set a couple of rules to follow in order to get the desired result. The problem is, there are so many variables that it becomes almost impossible to consider them all.

Imagine instead being able to show him a thousand pictures of dogs, and another thousand pictures of things that aren’t dogs. It’s much easier now!

That’s the same way we learn. We humans learned what dogs are by seeing them millions of times. When our brain sees something it recognizes, there are some neural regions that begin showing an increased activity. But according to the book How People Learn, by the National Research Council, humans aren’t born with this neural pattern. As we grow up and get exposed to different experiences, our brain start sorting out how to set up this connections.

The cool thing is that this is exactly the same way Machine Learning works. When developing a ML model, you don’t teach rules. Instead, you just give it a huge amount of examples of what makes and doesn’t make a desired output, then let the computer sort things out, just as our brain would.

Source: mlblog.com

Most people see AI as a tool to automate tasks, leading them to focus on building an algorithm that performs like a human. For example, Facebook’s facial recognition algorithm is better at recognizing faces than humans are. But what if we could do exactly the opposite?

What if I told you we could leverage the practices and insights used to train a computer and apply them to how humans learn new skills?

In this article I won’t dig too deep into how machine learning works. However, before learning how to apply good AI practices to your own learning, I would like you to understand the basics.

How does Machine Learning work?

Imagine you are in the middle of a hot summer, with no A/C or pool and the sun is killing you. You decide you are going to secretly sneak onto your neighbor’s property on the days he’s not at home and use his pool.

You figure out that most of the time he’s out, it is because he’s playing tennis. So you decide to apply your AI skills and build a model that predicts whether he’ll play tennis or not based on the weather conditions.

After some weeks of observing him and collecting data, you end up with a table like this:

Now after some days, you have good, representative data, so you begin building your algorithm.

There are many ways of doing this, for educational purposes I’m going to briefly explain classification using a technique called decision trees.

Let’s take a quick look at the table. Which attribute do you think is going to influence your neighbor’s decision to play tennis? Probably outlook.

To figure out how to organize the decision tree, our model will find out which attribute best divides the data. Set it as the root of the tree, then begin building the branches down with this same process until you have something like this:

After training the model, we will end up having a decision tree that’ll help us predict if our neighbor is going to be at home or not.

At this point, you may be thinking “How exactly is this going to help me to learn a new skill?”

Well, there are some key rules that you have to follow if you want to train a good algorithm that can be applied to maximize your learning journey.

If you want to go deeper on Machine learning, here are some cool resources.

1. Practice, practice, practice — Gather large volumes of data.

“Practice isn’t the thing you do once you’re good. It’s the thing you do that makes you good.” — Malcolm Gladwell

This one is pretty simple. The more you practice, the better you’ll get.

We all have heard the buzzwords Big data. But few know what this truly means. According to Oxford Dictionaries, Big Data is: Extremely large data sets that may be analysed computationally to reveal patterns, trends, and associations, especially relating to human behaviour and interactions.

Big data is having a massive amount of examples for a model to train.

According to an Oxford study on Neural Mechanisms of Skill Learning, when we start learning something new, there’s a lot of neural activity involved. But as we practice the task more and more, the energy required to perform the same task decreases. The more we practice our skills, the less effort it takes for our brain to complete the task.

When building a Machine Learning model, this is one of the core things that’s going to determine your algorithm’s performance. You need many examples in order to achieve good models. Imagine showing the alien just a couple of pictures versus showing him thousands. He’ll learn better if you show him a greater amount of examples.

“But invariably, simple models and a lot of data trump more elaborate models based on less data.” — Alon Halevy, Peter Norvig, and Fernando Pereira, Google. The unreasonable effectiveness of data.

People tend to hesitate a lot before actually starting to practice. We spend too many hours reading about the topic, watching videos, asking people for advice, etc. Even though these activities are useful, we often get stuck.

The only thing that’s going to make you improve is getting your hands dirty.

2. Don’t memorize — Avoid Overfit

Source: hercampus.com

Back in school, did you ever memorize exactly how to solve a math problem, only to find that on test day, the problem was slightly different and seemingly impossible to solve? You recognized that it was the same concept, but that minor change completely threw off your approach.

This is what happens when we memorize a process, we lose the ability to generalize and adapt to situations that we’ve never faced before.

In machine learning this is known as Overfit. It happens when you over train your model to the point that it learns all your training data by memory. This is a really dangerous thing, because if we test it with this data it’ll probably have a performance of almost 100%, but the truth is that it’ll actually perform worse on unseen problems.

Under fit, Good fit, and Overfit. Source: shapeofdata.wordpress.com

In a world where we have the knowledge we need just one click away, it doesn’t make sense to memorize.

That’s why most people fail to learn programming. They become demoralized because there’s too much to remember. But, that’s exactly their problem — I don’t know a single good programmer who’s not also a master at Googling.

According to Eric Mazur, professor of Physics at Harvard University and author of Peer Instruction, an interactive methodology of learning, students end up understanding nearly three times more when the focus is on understanding and not on rote learning.

The lesson is simple: Force yourself to learn without guides. After trying to figure something out by yourself, you can go back to your resources and review the process. This way, you avoid memorizing the guide without truly understanding.

3. Vary your training — Have variated, representative data.

We tend to think that doing the same thing over and over will eventually make us an expert at the subject. Even though we will make progress, there’s a much faster way. It’s not just about practice, but the way you practice.

The key is to vary your learning.

The best guitarists don’t play just one genre — those rock star didn’t become the masters they are just by playing rock. To reach their level of expertise, they had to explore and experiment with many different musical styles. Each of these styles contributed their unique qualities, resulting in a well-rounded and masterful guitarist.

“If you don’t know the blues… there’s no point in picking up the guitar and playing rock and roll or any other form of popular music.” — Keith Richards

To become good at something, you can’t keep doing the same stuff over and over. You have to vary the tasks you do, so you can have a more general and adaptable ability

When training a ML model, one of the most important things is using data that represents many different scenarios.

Source: Bibliocad.com

If you wanted to teach your alien friend what chairs look like, you would want to make sure to give him pictures of different styles and views of chairs.

The next time you want to pick up a new skill, try approaching it from as many different angles as possible.

4. Don’t reinvent the wheel — Transfer learning.

Source: brandsalsa.com

In Silicon Valley, you get to meet a lot of career switchers who end up doing really well in their new area. There are Architects who’ve turned into Designers, Lawyers into Sales reps, Engineers into Marketers, etc. The interesting thing is that they all find applications of their old knowledge to their new careers.

There’s a technique used on Artificial Neural Networks (mainly for Image Recognition) called Transfer Learning. Instead of training a whole new model from scratch, you can take one that was previously trained for a similar task and apply part of that older knowledge to the new task. Understandably, this results in improved performance and saves weeks of training time compared to a new model.

Source: Transfer Defect Learning deck by Sunghun Kim.

Continuing with the guitar player example; if you already knew how to play piano, it would probably be much easier to learn guitar. It’s a very different instrument, but all the knowledge of keys, timing and scales would be pretty similar.

The key is taking advantage of brain connections you have already developed, and applying them to a different skill.

Skateboard skills are applicable on snowboarding too. Source : ilivextreme.com

By utilizing what you already know, you can approach new subjects with a head start.

Machine Learning isn’t something new, it is a technology that has been here for decades. It’s been a slow process to reach the place where we are now and all the progress is starting to pay off. Now we have resources needed to make a huge impact. Last week I attended Gigaom AI 2017 conference, where Jerry Kaplan described our time in history as a revolution comparable to the invention of the wheel.

Now that you have an overview of how this mysterious black box works, I encourage you to explore more about AI. We don’t just need Engineers and Data Scientists, we need people who know the basics of what’s happening behind the curtain so they can understand the power of this technology and come up with new applications and uses.

AI is the next electricity, transforming one industry after another, forever. — Andrew Ng

If you have any questions or thoughts, please comment below or feel free to reach out at r.manterola1[at]gmail[dot]com!

Thanks to Thomas Martino, Keenan Murphy, Nick deWilde, Andy Casey, Emily Friedlander, Joseph Ensminger , Tomas Rencoret, Francisco Rencoret, Sebastian Amenabar, Andrés Espinosa, and everyone who helped me with the edition of this article.

--

--