Blogg | 8 jun 2021

Automatiserad Machine Learning från vision till produktion

Mårten Sjö, Data Scientist konsult på Softronic, berättar i detta blogginlägg om vad AutoML är och hur det fungerar för att ge bäst resultat.

Vad är AutoML? Jo, det är en metod för att hitta den bästa Machine Learning-modellen tillsammans med de bästa inställningarna för att få en så korrekt modell som möjligt. Med hjälp av AutoML så väljs den algoritmen som fungerar bäst gentemot den data man tränar modellen med.

AutoML går först igenom alla algoritmer för att se vilken som fungerar bäst. För att sedan testa olika inställningar för algoritmen. I Machine Learning termer kallas det för Hyperparametrar.

I animationen visas hur olika Neurala Nätverksinställningar testas för att uppnå det bästa resultatet. Bildkälla: https://github.com/carpedm20/ENAS-pytorch

 

Automated Machine Learning fungerar på en rad olika Machine Learning tekniker som:

  • Klassificering – Finns det en katt med i bilden? Eller är detta mailspam eller inte?
  • Regression – Vad kostar den här lägenheten i Solna på 60kvm?
  • Tidserie-estimering – Hur mycket beräknas vi sälja under julledigheten i jämförelse med förra året?

AutoML är tänkt att kunna ge bättre resultat och komma snabbare från idé till produktion. Lösningen ska även erbjuda Machine Learning till personer som inte har en Data Scientist bakgrund vilket kommer göra att ML/AI kan erbjudas till fler personer och företag än för några år sedan. Detta kallas för att demokratisera AI. För en erfaren Data Scientist kunde finjusteringar av rätt AI teknik förut ta flera månader för att hitta den bästa algoritmen och inställningar till den. Nu kan det istället kluras ut med hjälp av Automatisk Machine Learning (AutoML) under endast ett par timmar.
Genom att låta olika modeller ”tävla” vilken som får bäst poäng låter du sedan den bästa gå i produktion.

På bilden visas alla olika algoritmer som testats och vi kan se att StackEnsemble har den bästa precisionen på 82%

 

Att tvätta data och använda sig av rätt data innan träningen är en stor del av förberedandet av Machine Learning träningen. 80 % av hela projektets tid kan alltså gå åt att välja ut vilken data och sedan tvätta all data. Dessa kan dessutom bestå av saknade värden eller felaktigheter.

AutoML hjälper oss att träna och testa på allt vårt data, för att få ett balanserat resultat. Bildkälla: https://es.mathworks.com/discovery/cross-validation.html

 

Det AutoML kan hjälpa oss med är att berätta vilka delar av all data man inkluderar i träningen som är relevant för att uppnå ett korrekt beslut av den totala beräkningen och att sedan göra en sådan korrekt bedömning som möjligt. Exempelvis är Ålder mer viktigt än Placeringsort av den data vi tar med? Detta kallas Explainable AI och gör att vi kan se vilken data vi bör fokusera på och ta med i slutändan. Vilket gör att vi kan exkludera data som inte ger oss någon fördel och tar tid att ta fram.

Här visar Explainable AI att DepTime är den data som är mest viktig vilket inkluderar tiden då ett flyg beräknas landa och kan estimera om ett flyg kommer bli försesenat eller inte i detta exempel.

 

Genom att nyttja exempelvis Microsofts AI lösning Azure ML kan man under en betydligt kortare tid implementera en gedigen lösning för ML där state-of-the-art mjukvara i form av AutoML finns tillgängligt i kombination med starka grafikkort för att träna neurala nätverk. Vilket gör att själva uppstarten i både tid och investering blir avsevärt mycket lägre än vad som var möjligt för ett par år sedan. Detta öppnar upp för fler mellan till mindre bolag att få tillgång till Machine Learning och AI för deras verksamhet.

Om du har funderingar på hur ML/AI kan nyttjas just för ert bolag. Hör gärna av dig för att få en vision hur AI och Machine Learning potentiellt kan hjälpa er bli mer lönsamma, mer sparsamma eller förbättra era produkter och tjänster.

Blogginlägg skrivet av: Mårten Sjö för Softronic AB

Kontakt

Har du frågor eller vill veta mer om hur Microsofts produkter kan stötta dig, hör av dig till oss.