Today is #TechnicalTuesday https://abs.twimg.com/emoji/v2/... draggable="false" alt="🤓" title="Nerd-Gesicht" aria-label="Emoji: Nerd-Gesicht">!

Let& #39;s talk about practical technologies that you can use today.

In this thread I will tell you about *AutoML* https://abs.twimg.com/emoji/v2/... draggable="false" alt="🧵" title="Thread" aria-label="Emoji: Thread">https://abs.twimg.com/emoji/v2/... draggable="false" alt="👇" title="Rückhand Zeigefinger nach unten" aria-label="Emoji: Rückhand Zeigefinger nach unten">
AutoML stands for *Automated Machine Learning*.

It encompasses a bunch of technologies and paradigms to gradually automate the process of creating machine learning solutions.

https://abs.twimg.com/emoji/v2/... draggable="false" alt="💡" title="Elektrische Glühbirne" aria-label="Emoji: Elektrische Glühbirne"> AutoML is about raising the abstraction level in ML and reducing the grunt work.
https://abs.twimg.com/emoji/v2/... draggable="false" alt="❓" title="Rotes Fragezeichen-Symbol" aria-label="Emoji: Rotes Fragezeichen-Symbol"> What can AutoML do today?

Getting a machine learning solution to work takes a few steps:

- https://abs.twimg.com/emoji/v2/... draggable="false" alt="1️⃣" title="Tastenkappe Ziffer 1" aria-label="Emoji: Tastenkappe Ziffer 1"> collecting data
- https://abs.twimg.com/emoji/v2/... draggable="false" alt="2️⃣" title="Tastenkappe Ziffer 2" aria-label="Emoji: Tastenkappe Ziffer 2"> sanitizing that data
- https://abs.twimg.com/emoji/v2/... draggable="false" alt="3️⃣" title="Tastenkappe Ziffer 3" aria-label="Emoji: Tastenkappe Ziffer 3"> finding the best model
- https://abs.twimg.com/emoji/v2/... draggable="false" alt="4️⃣" title="Tastenkappe Ziffer 4" aria-label="Emoji: Tastenkappe Ziffer 4"> training that model
- https://abs.twimg.com/emoji/v2/... draggable="false" alt="5️⃣" title="Tastenkappe Ziffer 5" aria-label="Emoji: Tastenkappe Ziffer 5"> and beyond, actually build the producthttps://abs.twimg.com/emoji/v2/... draggable="false" alt="❗" title="Rotes Ausrufezeichen" aria-label="Emoji: Rotes Ausrufezeichen">
Most current AutoML frameworks today focus on https://abs.twimg.com/emoji/v2/... draggable="false" alt="3️⃣" title="Tastenkappe Ziffer 3" aria-label="Emoji: Tastenkappe Ziffer 3">, i.e., helping you select among the plethora of machine learning models which is the best for your problem.

This problem is often framed in terms of:

- https://abs.twimg.com/emoji/v2/... draggable="false" alt="🅰️" title="Invertierter quadratischer lateinischer Buchstabe A" aria-label="Emoji: Invertierter quadratischer lateinischer Buchstabe A"> model selection
- https://abs.twimg.com/emoji/v2/... draggable="false" alt="🅱️" title="Invertierter quadratischer lateinischer Buchstabe B" aria-label="Emoji: Invertierter quadratischer lateinischer Buchstabe B"> hyperparameter optimization
https://abs.twimg.com/emoji/v2/... draggable="false" alt="🅰️" title="Invertierter quadratischer lateinischer Buchstabe A" aria-label="Emoji: Invertierter quadratischer lateinischer Buchstabe A"> Model selection is about deciding, e.g., if logistic regression, decision trees or SVM is better, or whether to encode with word2vec or TF-IDF.

The "manual" way of doing this is to actually try each algorithm a bunch of times in your data and collect some statistics.
https://abs.twimg.com/emoji/v2/... draggable="false" alt="🅱️" title="Invertierter quadratischer lateinischer Buchstabe B" aria-label="Emoji: Invertierter quadratischer lateinischer Buchstabe B"> Hyperparameter optimization is about selecting the exact value for each tunable thing in your algorithm.

- How many neurons?
- How much dropout?
- Which activation function?
- Which regularization factor?
- ...
If you combine both problems, then you realize there are literally thousands (and potentially infinite) different algorithms you can try on your data.

If you were to do this yourself, the simplest solution is something like this:
https://abs.twimg.com/emoji/v2/... draggable="false" alt="⭐" title="Mittelgroßer Stern" aria-label="Emoji: Mittelgroßer Stern"> Actually, AutoML algorithms are way smarter and faster than random search.

https://abs.twimg.com/emoji/v2/... draggable="false" alt="💡" title="Elektrische Glühbirne" aria-label="Emoji: Elektrische Glühbirne"> AutoML frames this problem as an optimization loop on top of the training loop and applies a lot of clever optimization tricks.
https://abs.twimg.com/emoji/v2/... draggable="false" alt="👉" title="Rückhand Zeigefinger nach rechts" aria-label="Emoji: Rückhand Zeigefinger nach rechts"> AutoML frameworks hide away all that complexity behind an interface that looks as if you are training a single model, but it is ultimately doing the search and optimization loop under the hood.

Let& #39;s see a couple of examples https://abs.twimg.com/emoji/v2/... draggable="false" alt="👇" title="Rückhand Zeigefinger nach unten" aria-label="Emoji: Rückhand Zeigefinger nach unten">:
Yeah, I know https://abs.twimg.com/emoji/v2/... draggable="false" alt="🤯" title="Explodierender Kopf" aria-label="Emoji: Explodierender Kopf">!

And AutoML is much more than model selection and hyperparameter search. It can also include automating:

- data preprocessing
- feature engineering
- feature selection
- dataset augmentation
- model distillation
- and more...
https://abs.twimg.com/emoji/v2/... draggable="false" alt="🔑" title="Schlüssel" aria-label="Emoji: Schlüssel"> If you are working on a practical problem today there is no reason *not* to use AutoML.

https://abs.twimg.com/emoji/v2/... draggable="false" alt="🔑" title="Schlüssel" aria-label="Emoji: Schlüssel"> Even if you are working on research, AutoML will make you more productive by taking care of the dumb tasks and letting you focus on the important parts.
https://abs.twimg.com/emoji/v2/... draggable="false" alt="❗" title="Rotes Ausrufezeichen" aria-label="Emoji: Rotes Ausrufezeichen">However, this is no silver bullet.

There are a lot of challenges to make AutoML production-ready. Data cleaning is a major bottleneck still, far from automated. And we need to understand how these methods exacerbate data bias.
Finally, if you are feeling adventurous, you can try @auto_goal, an experimental AutoML framework that goes beyond "standard" AutoML.

https://abs.twimg.com/emoji/v2/... draggable="false" alt="⭐" title="Mittelgroßer Stern" aria-label="Emoji: Mittelgroßer Stern"> Check it out in https://autogoal.github.io"> https://autogoal.github.io !
As usual, if you like this topic, reply in this thread or @ me at any time. Feel free to https://abs.twimg.com/emoji/v2/... draggable="false" alt="❤️" title="Rotes Herz" aria-label="Emoji: Rotes Herz"> like and https://abs.twimg.com/emoji/v2/... draggable="false" alt="🔁" title="Nach rechts und links zeigende Pfeile in offenem Kreis im Uhrzeigersinn" aria-label="Emoji: Nach rechts und links zeigende Pfeile in offenem Kreis im Uhrzeigersinn"> retweet if you think someone else could benefit from knowing this stuff.

https://abs.twimg.com/emoji/v2/... draggable="false" alt="🧵" title="Thread" aria-label="Emoji: Thread"> Read this thread online at < https://apiad.net/tweetstorms/technicaltuesday-automl>">https://apiad.net/tweetstor...
Stay curious https://abs.twimg.com/emoji/v2/... draggable="false" alt="🖖" title="„Live long and prosper!“" aria-label="Emoji: „Live long and prosper!“">

- https://abs.twimg.com/emoji/v2/... draggable="false" alt="🔗" title="Link Symbol" aria-label="Emoji: Link Symbol"> < https://www.automl.org/automl/ >
-">https://www.automl.org/automl/&q... https://abs.twimg.com/emoji/v2/... draggable="false" alt="📚" title="Bücher" aria-label="Emoji: Bücher"> < https://www.automl.org/book/ >
-">https://www.automl.org/book/&quo... https://abs.twimg.com/emoji/v2/... draggable="false" alt="🎥" title="Filmkamera" aria-label="Emoji: Filmkamera"> < https://youtu.be/3c0FoQrsJxo >
-">https://youtu.be/3c0FoQrsJ... https://abs.twimg.com/emoji/v2/... draggable="false" alt="🎁" title="Verpacktes Geschenk" aria-label="Emoji: Verpacktes Geschenk"> < https://github.com/windmaple/awesome-AutoML>">https://github.com/windmaple...
You can follow @AlejandroPiad.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: