๐Ÿ”ฅ Putting ML in Production! We're going to publicly develop @madewithml's first ML service. Here is the broad curriculum:

- ๐Ÿ“ฆ Product
- ๐Ÿ”ข Data
- ๐Ÿค– Modeling
- ๐Ÿ“ Scripting
- ๐Ÿ›  API
- ๐Ÿš€ Production

More details (lessons, task, etc.) here: https://t.co/xmMm9XGK9j

Thread ๐Ÿ‘‡

Questions that this thread will answer:

- What is it?
- Who is this course for?
- What is the format?
- What makes this course unique?
- Why constrain to open source tools?
- What are my qualifications?
- Why is this free?
- What are the prerequisites?

What is it?

Putting ML in Production: a guide and code-driven case study on MLOps. We will be developing and deploying Made With ML's first ML service, from Product โ†’ ML โ†’ Production, with open source tools.
This ML service will act as a foundation for all future ML features and subsequent iterations. The first feature is tagifai - multilabel classification of tags for a project. We'll discuss the need and utility of this feature in the first lesson.
Who is this course for?

- ML developers looking to become end-to-end ML developers.
- Software engineers looking to learn how to responsibly deploy and monitor ML systems.
- Product managers who want to have a comprehensive understanding of the different stages of ML dev.
What is the format of each lesson?

- Intuition: high level overview of the concepts.
- Code: simple code examples to illustrate the concept.
- Application: applying the concept to our specific task.
- Extensions: brief look at other tools and techniques that will be useful.
What makes this course unique?

1. Hands-on
2. Intuition-first
3. Software engineering
4. Focused yet holistic
5. Open source tools
1. Hands-on:

If you search production ML or MLOps online, you'll find great blog posts and tweets. But in order to really understand these concepts, you need to implement them.
2. Intuition-first:

We will never jump straight to code. In every lesson, we will develop intuition for the concepts and think about it from a product perspective.
3. Software engineering:

This course isn't just about ML. In fact, it's mostly about clean software engineering! We'll cover important concepts like versioning, testing, logging, etc. that really makes this a production-grade product.
4. Focused yet holistic:

For every concept, we'll not only cover what's most important for our specific task (this is the case study aspect) but we'll also cover related methods (this is the guide aspect) which may prove to be useful in other situations.
4. (cont.) For example, when we're serving our application, we'll expose our latest model as an API endpoint. However, there are several other popular ways to serving models and we'll briefly illustrate those and talk about advantages / disadvantages.
5. Open source tools:

We will be using only open source tools for this project, with the exception of @googlecloud for storage and compute (free credit will be plenty).
Why constrain to open source tools?

1. We can focus on the fundamentals, everyone can participate (single player mode as my friend @eugeneyan coined) and you will have much better understanding when you do finally use a paid tool at work (if you want to).
2. Large companies that deploy ML to production have complicated and scaled processes that donโ€™t make sense for the vast majority of companies / individuals.
Note: I will regularly make suggestions for tools (other open source, freemium and paid) as we progress because they each have their unique advantages.
For example, for data versioning and experiment tracking, we'll use @DVCorg + @MLflow but we'll also highlight why you may consider @weights_biases or @Cometml because itโ€™s important to know about them and what they each bring to the table.
My qualifications for teaching this:

1. I've deployed large scale ML systems at @Apple as well as smaller systems with constraints at startups and want to share the common principles I've learned along the way.
2. I created @madewithml so that the community can explore, learn and build ML and I learned how to build it into an end-to-end product that's currently used by over 5K daily active users.
You can learn more at my personal website or LinkedIn.

LinkedIn: https://t.co/xWmPKz53vw
Personal website: https://t.co/NpLSczadPn
Why is this free?

1. Personal reason: Every day, people explore the amazing work on @madewithml to learn from and contribute themselves. To stay consistent with this free spirit, I'm releasing this free course to pass on the lessons I've learned from my mentors and experiences.
2. Societal reason: This is especially targeted for people who don't have as much opportunity around the ๐ŸŒ. I firmly believe that creativity and intelligence are randomly distributed but opportunity is siloed. I want to enable more people to create and contribute to innovation.
What are the prerequisites?

- You should have some familiarity with Python and basic ML algorithms. While we will be experimenting with deep learning (w.r.t compute/performance tradeoffs), you can easily apply the lessons to any class of ML models.

The course hasn't even begun yet but there's already quite a few friends to thank for helping me thinking through some of this. We'll be referring to their work throughout the course. @josh_tobin_ @jeremyjordan @eugeneyan @nlpguy_ @MLinProduction @FullStackML
First lesson releases next week (๐Ÿ“ฆ Product) & subsequent lessons will follow a weekly cadence. Be sure to follow me or @madewithml for updates, discussions & feedback because I'll be creating the course content dynamically using the community's feedback.


More from Data science

I have always emphasized on the importance of mathematics in machine learning.

Here is a compilation of resources (books, videos & papers) to get you going.

(Note: It's not an exhaustive list but I have carefully curated it based on my experience and observations)

๐Ÿ“˜ Mathematics for Machine Learning

by Marc Peter Deisenroth, A. Aldo Faisal, and Cheng Soon Ong


Note: this is probably the place you want to start. Start slowly and work on some examples. Pay close attention to the notation and get comfortable with it.

๐Ÿ“˜ Pattern Recognition and Machine Learning

by Christopher Bishop

Note: Prior to the book above, this is the book that I used to recommend to get familiar with math-related concepts used in machine learning. A very solid book in my view and it's heavily referenced in academia.

๐Ÿ“˜ The Elements of Statistical Learning

by Jerome H. Friedman, Robert Tibshirani, and Trevor Hastie

Mote: machine learning deals with data and in turn uncertainty which is what statistics teach. Get comfortable with topics like estimators, statistical significance,...

๐Ÿ“˜ Probability Theory: The Logic of Science

by E. T. Jaynes

Note: In machine learning, we are interested in building probabilistic models and thus you will come across concepts from probability theory like conditional probability and different probability distributions.

You May Also Like