Tankeledare

Lyckad maskinlärandeutveckling kräver ett nytt paradigm – tankeledare

mm
Lägg till Unite.AI bland dina föredragna källor på Google

Av Victor Thu, president, Datatron

Initiativ som använder maskinlärande kan inte behandlas på samma sätt som projekt som involverar konventionell programvara. Det är viktigt att röra sig snabbt så att du kan testa saker, åtgärda problem och testa dem igen. Med andra ord måste du kunna misslyckas snabbt – och göra det tidigt i processen. Att vänta tills senare i processen för att hitta problem kan visa sig vara mycket dyrt och tidskrävande.

AI kräver ett nytt tillvägagångssätt

När du utvecklar programvara med den traditionella metoden använder du beslutslogik. För att vara så exakt som möjligt införlivar du logik som möjliggör att programvaran fungerar korrekt. Det (finns vanligtvis) ingen anledning att göra ändringar efter att programvarans logik har utvecklats, förutom felsökning. Det är en mycket metodisk utvecklingsprocess; du främjar gradvis genom att säkerställa att varje steg i processen är korrekt innan du går vidare till nästa. Det är en beprövad strategi som har visat sig vara effektiv för programvaruutveckling.

Men du kan inte använda samma strategi för AI/ML-projekt eftersom det helt enkelt inte fungerar. Istället måste du ha förmågan att iterera snabbt och ofta för att uppnå framgång med ett ML-projekt. Eftersom ML kräver initial utbildning och är en process bör du närma dig det med kunskapen att det inte kommer att vara exakt första gången det distribueras.

Denna process kräver flera iterationer. Verkligheten är att din första modell kommer att möta oväntade resultat 99% av tiden. Även om du tillbringar månader med att utbilda din modell i labbet kommer den utan tvekan att ändras när den möter riktiga data och trafik.

Sträva inte efter omedelbar perfektion

Således, för att testa en modell och avgöra vilka ändringar som krävs, måste du kunna sätta den i produktion snabbt. Du kan sedan göra justeringar, släppa ut den igen och förbättra den. Av denna anledning bör du inte lägga ner för mycket ansträngning på att göra din modell fläckfri innan du testar den i produktion; det första försöket kommer inte att vara perfekt, och ingen bör förvänta sig att det ska vara det.

Medan modellen utvecklas i labbet kan de ytterligare förbättringarna från 92% till 95% noggrannhet inte vara betydande för vissa användningsfall. Varför? Bara en liten del av utbildningsdata har använts för att utbilda din AI-modell. Du kan hamna i en situation där du investerar mycket tid och pengar för att få den extra biten av noggrannhet medan du samtidigt går miste om de fördelar som din modell kan ge dig under tiden.

Effektiva steg i ML-distribution

Eftersom det finns en chans att en modell kan misslyckas eller producera felaktiga förutsägelser är ML-forskare ibland ovilliga att sätta en modell i produktion. Det är förståeligt, till viss del. Du behöver ett system som möjliggör att du kan se händelser i realtid. Med detta tillvägagångssätt kan du omedelbart dra tillbaka och uppdatera din modell och sedan snabbt släppa en ny modell. Istället för att fastna i “analysparalys” är detta den mest effektiva metoden för att sätta maskinlärande-modeller i produktion.

Det är mycket bättre att bara lansera modellen och låta den få lite livserfarenhet. Detta eliminerar inte behovet av att dataforskare skapar modellen så exakt som möjligt från början. Men så fort du är klar med den första versionen bör du börja samla in den viktiga data så snart som möjligt.

Du kan vilja köra dina modeller i A/B-testläge eller skuggläge mot riktiga data som en del av denna process. På så sätt kan du i princip jämföra prestationerna hos de olika modellerna och ha mycket data och bevis innan du väljer vilken modell du ska främja eller nedgradera.

Att bygga en lokal modell istället för att fokusera på att skapa en enda global modell för att förutsäga beteende för den makroekonomiska miljön är en annan bästa praxis. Med en lokal modell kan du använda data från specifika situationer så att modellen beter sig som den ska för var och en av dessa scenarier. Detta sparar tid, data och ansträngning jämfört med en allomfattande modell som skulle kräva en betydande mängd av dessa resurser för att fungera.

Att bestämma efterfrågan på anpassade skor kommer att fungera som ett exempel här. Den globala modellen kan vara tillämplig på resten av Nordamerika om den baseras på befolkningen i New York. Men den skulle troligen inte representera efterfrågan i andra delar av landet på ett korrekt sätt. En lokal modellstrategi skulle ha gett dig möjlighet att få högre vinstmarginaler, som du nu går miste om.

Modeller kräver regelbundna uppdateringar, naturligtvis. Modeller kräver kontinuerliga uppdateringar eftersom data i miljön är i ständig förändring, till skillnad från traditionell programvara som kan ställas in en gång och lämnas ifred. ML-modeller försämras över tid om de inte itereras på ett regelbundet sätt. Detta måste ske under modellens livscykel och måste övervakas noggrant.

Maskinlärandets nya paradigm

Att jämföra maskinlärande-modeller med konventionell programvara är inte klokt. Men ML-experter kan dra nytta av en snabb distributionsmetod för AI/ML-modeller, precis som programvaruutvecklare har gjort med DevOps. För ML-projekt behöver du ett system som möjliggör att du kan lansera modeller snabbt. Du måste kunna jämföra olika modeller, effektivt kontrasterande en som är live med en som inte är det. Dessa och de andra bästa praxis som nämns ovan kommer att hjälpa dig att undvika analysparalys och misslyckas snabbt och tidigt så att du kan skala ditt maskinlärande.

Victor Thu är president för Datatron. Under hela sin karriär har Victor specialiserat sig på produktmarknadsföring, go-to-market och produktledning på C-nivå och direktörspositioner för företag som Petuum, VMware och Citrix.