Santiago Profile picture
28 Dec, 18 tweets, 3 min read
I told everyone that I didn't care.

"Screw math! I've never been great with it, so I'm not starting with machine learning to fail at the end."

That was many years ago.

Math is still hard, but I don't think you should be scared at all. Here is why: ๐Ÿงต๐Ÿ‘‡
[1] One thing changed my mind: school pushed me to the deep end of the pool, and I was forced to swim.

I had to face my fears, and I started machine learning and realized that the math involved is not as scary (or as much) as some people believe.

๐Ÿ‘‡
[2] Probably one of the most frequent questions I get is around the math needed for machine learning.

Answer:

โ–ซ๏ธ Probabilities and Statistics
โ–ซ๏ธ Linear Algebra
โ–ซ๏ธ Calculus

But it turns out that this is not helpful.

๐Ÿ‘‡
[3] What are you gonna do with this?

Are you going to learn all there's is about linear algebra before looking into machine learning?

How about probabilities and statistics? Or calculus? Do you know how extensive calculus is?

๐Ÿ‘‡
[4] Many people stop looking into machine learning as soon as somebody tells them that calculus is a pre-requisite.

First of all, the amount of calculus you truly need is minuscule.

Second, without proper direction, there's no way you'll find your way through the noise.

๐Ÿ‘‡
[5] There's more linear algebra than calculus, but still, just a little bit of it is needed for machine learning.

"Go and learn all of this" is poor advice. It just doesn't work for many people out there.

๐Ÿ‘‡
[6] The way I learned was different.

I started trying to solve different problems and looking into existing machine learning algorithms to solve them.

In the beginning, I didn't understand why the algorithms worked. That was fine.

๐Ÿ‘‡
[7] As I added more complexity, I needed to go beyond the "works | doesn't work" states.

I needed to explain what was happening. I needed to troubleshoot things.

Little by little, I started looking into each algorithm.

๐Ÿ‘‡
[8] Sometimes, I was able to get away without any deeper dive into the math behind the scenes. Sometimes, I had to Google stuff and got more into it.

The important thing to keep in mind is that I learned the math "on-demand."

๐Ÿ‘‡
[9] On-demand learning means that you go and look into things as they become relevant.

Today, I don't care about "eigenvectors" or "eigenvalues" because they don't help with the job I do every day.

But one day, I needed them, so I had to go and read about them.

๐Ÿ‘‡
[10] 2021 is about to start, and we have amazing libraries that will help us solve problems that were impossible just a few years ago.

Back then, everyone had to write their own backpropagation code. Today, we can work at a much higher level.

๐Ÿ‘‡
[11] I haven't met anyone that knows how to implement a neural network from scratch without looking.

If you can do it, good for you. But I have never needed it.

I understand how they work, but I still have trouble with derivatives.

And that's fine.

๐Ÿ‘‡
[12] Does that mean that we don't need any math because the high-level interfaces are enough?

Of course not.

But it does mean that we need much less than what was required before.

The world has evolved, and we can take advantage of it.

๐Ÿ‘‡
[13] If you are starting today, keep in mind that high-school level math is probably all you need to get started.

That will give you the foundation to understand a lot of what's going on.

๐Ÿ‘‡
[14] Try to dive in. Start with problems and look into the algorithms that we use to solve them.

Start incorporating math as soon as you feel you need to understand something. If you don't need it, leave it for later.

You'll make a lot of progress really quickly.

๐Ÿ‘‡
[15] I have been talking about this for a while, and I've realized that "math-first vs. on-demand math" is a controversial topic.

I hope my position is clear: either way is fine.

You just need to make sure you follow the way that makes you more efficient.

๐Ÿ‘‡
[16] Learning things on-demand is not the only way to learn, but it is *the way* I learned.

If you prefer a different approach, by all means, go ahead. Just don't get caught in the idea that your way is the only valid one.

๐Ÿ‘‡
[17] Finally, I'll say it one more time because this is Twitter, and a lot of people read what they want to read unless you are 110% explicit:

The question is not whether math is essential for machine learning (it is!) The question is about the way we approach learning it.

โ€ข โ€ข โ€ข

Missing some Tweet in this thread? You can try to force a refresh
ใ€€

Keep Current with Santiago

Santiago Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @svpino

27 Dec
I've worked with Dell, HP, IBM, Cisco, HSBC, Disney, G4S, among other large companies.

Don't think for a minute that they have things figured out.

They have amazing development teams. They also have mediocre and straight-horrible teams.

๐Ÿงต๐Ÿ‘‡
[2] In my experience, smaller companies tend to be more selective when hiring: they can't afford to make a mistake.

I've found out that these smaller companies build consistently decent teams. (Although they have a harder time hiring talent.)

๐Ÿ‘‡
[3] Larger companies, on the other hand, build teams across many different departments. Maintaining consistency is hard, if not impossible.

I met excellent teams: sharp, organized, building excellent products using state-of-the-art technology.

๐Ÿ‘‡
Read 6 tweets
27 Dec
An introduction to one of the the most basic structures used in machine learning: a tensor.

๐Ÿงต๐Ÿ‘‡
Tensors are the data structure used by machine learning systems, and getting to know them is an essential skill you should build early on.

A tensor is a container for numerical data. It is the way we store the information that we'll use within our system.

(2 / 16)
Three primary attributes define a tensor:

โ–ซ๏ธ Its rank
โ–ซ๏ธ Its shape
โ–ซ๏ธ Its data type

(3 / 16)
Read 16 tweets
26 Dec
11 key concepts of Machine Learning.

โ€” Supervised Learning Edition โ€”

๐Ÿงต๐Ÿ‘‡
๐Ÿ˜œ

Before starting, remember that, if you follow me, one of your enemies will be immediately destroyed (and you'll get to read more of these threads, of course.)

And if you don't follow me, well, you just hurt my feelings.

๐Ÿ˜œ
1. Labels

(Also referred to as "y")

The label is the piece of information that we are predicting.

For example:

- the animal that's shown in a picture
- the price of a house
- whether a message is spam or not

๐Ÿ‘‡
Read 13 tweets
22 Dec
The 8-step quick-start guide to learn Machine Learning.

๐Ÿงต๐Ÿ‘‡
1โƒฃ Start with Python ๐Ÿ

Yes, you can do other languages, but Python is by far the most straightforward option.

๐Ÿ‘‡
2โƒฃ Get familiar with numpy, pandas, and matplotlib

These three libraries are probably the most common Python libraries you'll have to use every day.

(Even if you don't end up doing machine learning, these libraries are awesome and useful.)

๐Ÿ‘‡
Read 10 tweets
21 Dec
Rumors are going around that Twitter cripples tweets that include links.

There's nothing in their official documentation, but a lot of people think that's the case.

I thought this through, and I will not play along.

๐Ÿงต๐Ÿ‘‡
Allegedly, if I disable the links, my tweets will get much more impressions because Twitter will push them to more people.

Assuming this is the case, what's the cost?

My followers will have to start copying, then pasting any links that I post.

(2 / 4)
Seems like a small nuance, but reading comments on tweets with disabled links, the process is very error-prone and a lot of people have trouble accessing the content.

This is not what I want.

(3 / 4)
Read 4 tweets
3 Dec
Transitioning from Software Engineering to Machine Learning.

๐Ÿงต๐Ÿ‘‡
I'll tell you my story.

It might work for you. It might not.

Hopefully, it gives you another perspective. Hopefully, it helps.

(2 / 14)
Many people see "Software Engineering" and "Machine Learning Engineering" as two completely different specialization areas.

There are many differences, for sure.

But I personally like to think about them as a single, fluid, all-encompassing position.

(3 / 14)
Read 14 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!