Santiago Profile picture
19 Nov, 6 tweets, 1 min read
Deploying a machine learning model is not a trivial task.

Here are some of the questions you may have to answer every time: ↓
1. What's the input format expected by your service?

2. How can we validate the input is valid? What's the appropriate action if it isn't.

3. What transformations are needed to turn the service's input into the model's input?
4. What transformations are needed to turn the model's output into the service's output?

5. Do we need to allow for batch processing of data?

6. How much time do we have to return an answer?
7. What's the throughput of the service? In other words, how many requests per second can the service handle?

8. Do we need to worry about automatically scaling the service? What are the criteria to scale in and out?
9. How do we automatically deploy changes in the code? How do we deploy changes in the model?

10. How do we determine when the model needs updates? (Concept and data drift?)
There is a lot of overlap with DevOps, but it's not the same type of work.

This falls squarely under the MLOps umbrella.

Enormous opportunities right now for those willing to learn!

• • •

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

10 Nov
Over the last few months, I've introduced three main improvements to how I build machine learning models.

Keep in mind that my job is focused on Computer Vision, and I mostly use TensorFlow and Keras.

Here are the highlights: ↓
First, I replaced image generators with the tf.data API.

This change alone has had a major impact on training time. But it doesn't stop there:

• My code is much cleaner
• A data pipeline is easily reusable

tf.data is a must.
Together with loading data, I used image generators to perform data augmentation.

Now, I try to make data augmentation part of the model using Keras' preprocessing layers.

These augmentations now happen in the GPU. This is another nice boost!
Read 6 tweets
8 Nov
If I were to start building a career in machine learning today, here is where I'd focus:

1. Python from the get go.
2. Learn how to build software.

I'd take my time here and avoid rushing into the "machine learning" specific stuff.

Something interesting happens here: ↓
A lot of people start learning software development because they want to get into machine learning.

Then they realize that machine learning is not what they care about.

This is great: there are many ways to build a successful career in the software industry.
As soon as you're comfortable, here is what I'd tackle next:

3. Machine learning fundamentals
4. Hands-on machine learning

I like to cover these at the same time, instead of one after the other: learn some theory, then apply it right away.

Something to keep in mind:
Read 12 tweets
2 Nov
Here is the story of one of those hidden issues with machine learning models that books don't tell you about.

This happened in real life: ↓
Imagine you are building a computer vision model.

It goes something like this:

1. Load a dataset of images
2. Train a model with those images
3. Export the final model

Pretty standard stuff.
To make it more specific, let's imagine that you are using OpenCV to load the images from the disk.

Something like the attached screenshot.

Nothing fancy here, right?
Read 11 tweets
29 Oct
A step-by-step guide to your first Computer Vision problem and 10 questions you should answer after that.

No math and no fancy degrees. If you can read Python, you can do this.

If this is your first time looking at this type of problems, my goal is for you to get familiar with some of the high-level ideas.

There will be some hand-waving, but don't worry about that. Focus on the process and the big pieces.
Here is a @DeepnoteHQ notebook with the code and the entire documentation.

You can open it and run it yourself step by step:

deepnote.com/@svpino/MNIST-…
Read 10 tweets
26 Oct
Here is a problem for you to solve:

How many total handshakes will happen between 10 different people assuming everyone handshakes everyone else?

Don't start drawing things on paper. There's a simple way to solve this: ↓
Let's talk about "triangular series" really quick:

Here is an example of one: 1 2 3 4 5.

I know because I can organize these numbers in a triangle like the attached image shows.

Each row has an equivalent number of points (*'s).
Triangular series always start with 1. We can use "n" to denote the highest number of the series.

So in our [1 2 3 4 5] example, n = 5.
Read 10 tweets
24 Oct
Full-stack Machine Learning Engineers are becoming one of the hottest commodities out there.
Full-stack machine learning engineer is the person that’s capable of working on the design, implementation, deployment, and maintainance of a machine learning system.
Different people expand or contract the term “Full-Stack” at their convenience.

That’s ok. We don’t need a dictionary to talk about this.

Full-stack is when you can work on end-to-end systems.
Read 7 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

Thank you for your support!

Follow Us on Twitter!

:(