Thought leaders

Succesvolle machine learning-ontwikkeling vereist een nieuwe paradigma – Thought Leaders

mm
Voeg Unite.AI toe aan je voorkeursbronnen op Google

Door Victor Thu, president, Datatron

Initiatieven met machine learning kunnen niet op dezelfde manier worden behandeld als projecten met conventionele software. Het is essentieel om snel te handelen zodat u dingen kunt testen, problemen kunt oplossen en ze opnieuw kunt testen. Met andere woorden, u moet in staat zijn om snel te falen – en dat vroeg in het proces te doen. Wachten tot later in dit proces om problemen te vinden, kan heel duur en tijdrovend zijn.

AI vereist een nieuwe aanpak

Bij het ontwikkelen van software met de traditionele methode, gebruikt u beslissingslogica. Om zo nauwkeurig mogelijk te zijn, voegt u logica toe die de software in staat stelt om correct te functioneren. Er (is meestal) geen behoefte aan wijzigingen nadat de logica van de toepassing is ontwikkeld, behalve bugfixes. Het is een zeer methodische ontwikkelingsproces; u gaat stap voor stap te werk door ervoor te zorgen dat elke stap in het proces nauwkeurig is voordat u naar de volgende stap gaat. Het is een bewezen strategie die consistent zijn effectiviteit heeft aangetoond voor software-ontwikkeling.

U kunt deze strategie echter niet gebruiken voor AI/ML-projecten, omdat het simpelweg niet werkt. In plaats daarvan moet u in staat zijn om snel en frequent te itereren om succes te behalen met een ML-project. Aangezien ML initiële training vereist en een proces is, moet u het benaderen met de kennis dat het niet nauwkeurig zal zijn bij de eerste inzet.

Dit proces vereist meerdere iteraties. De realiteit is dat uw eerste model 99% van de tijd onverwachte resultaten zal tegenkomen. Zelfs als u maanden besteedt aan het trainen van uw model in het lab, zal het ongetwijfeld veranderen zodra het in aanraking komt met echte gegevens en verkeer.

Streef niet naar onmiddellijke perfectie

Om een model te testen en te bepalen welke wijzigingen nodig zijn, moet u in staat zijn om het snel in productie te brengen. U kunt dan eventuele aanpassingen maken, het opnieuw uitgeven en verfijnen. Om deze reden moet u niet te veel moeite doen om uw model volmaakt te maken voordat u het in productie test; de eerste poging zal niet perfect zijn en niemand zou dat moeten verwachten.

Terwijl het model in het lab wordt ontwikkeld, kunnen de extra verbeteringen van 92% naar 95% nauwkeurigheid niet significant zijn voor sommige use cases. Waarom niet? Alleen een klein deel van de trainingsgegevens is gebruikt om uw AI-model te trainen. U kunt veel tijd en geld investeren om die extra beetje nauwkeurigheid te verkrijgen, terwijl u de voordelen van uw model in de tussentijd misloopt.

Effectieve stappen in ML-implementatie

Omdat er een kans is dat een model faalt of onjuiste voorspellingen doet, zijn ML-wetenschappers soms terughoudend om een model in productie te brengen. Het is tot op zekere hoogte logisch. U hebt een systeem nodig dat u in staat stelt om gebeurtenissen in real-time te bekijken. Met deze aanpak kunt u uw model onmiddellijk intrekken en updaten en vervolgens snel een nieuw model uitgeven. In plaats van vast te zitten in “analyseparalyse” is dit de meest efficiënte manier om machine learning-modellen in productie te brengen.

Het is veel beter om het model gewoon te lanceren en het enige levenservaring te laten opdoen. Dit elimineert niet de noodzaak voor datawetenschappers om het model zo nauwkeurig mogelijk te maken vanaf het begin. Maar zodra u die eerste versie hebt voltooid, moet u onmiddellijk beginnen met het verzamelen van die belangrijke gegevens.

U kunt uw modellen in A/B-testmodus of schaduwmodus tegen echte gegevens willen uitvoeren als onderdeel van dit proces. Op die manier kunt u de prestaties van de verschillende modellen vergelijken en veel gegevens en bewijs hebben voordat u besluit welk model te promoten of te degraderen.

Het opbouwen van een lokaal model in plaats van het creëren van een enkel globaal model om gedrag voor de macro-omgeving te voorspellen, is een andere best practice. Met een lokaal model kunt u gegevens uit specifieke situaties gebruiken, zodat het model zich zo gedraagt als het hoort voor elke van die situaties. Dit bespaart tijd, gegevens en moeite in vergelijking met een alomvattend model dat een aanzienlijke hoeveelheid van deze middelen zou vereisen om te werken.

De vraag naar aangepaste sneakers zal als voorbeeld dienen. Het globale model kan van toepassing zijn op de rest van Noord-Amerika als het is gebaseerd op de bevolking van New York City. Maar het zou waarschijnlijk de vraag in andere delen van het land niet nauwkeurig weergeven. Een lokaal modelstrategie zou u in staat hebben gesteld om hogere winstmarges te behalen, die u nu misloopt.

Modellen vereisen natuurlijk regelmatige updates. Modellen vereisen voortdurende updates omdat de gegevens van de omgeving altijd veranderen, in tegenstelling tot traditionele software die eenmaal kan worden ingesteld en met rust gelaten. ML-modellen verslechteren in de loop van de tijd als ze niet regelmatig worden geïtereerd. Dit moet plaatsvinden tijdens de levensduur van het model en moet zorgvuldig worden gevolgd.

Machine learning’s nieuwe paradigma

Het vergelijken van machine learning-modellen met conventionele software is niet verstandig. Maar ML-experts profiteren van een snelle implementatietechniek voor AI/ML-modellen, net zoals software-ingenieurs dat hebben gedaan met DevOps. Voor ML-projecten hebt u een systeem nodig dat het mogelijk maakt om modellen snel te lanceren. U moet in staat zijn om verschillende modellen te vergelijken, waarbij u effectief één model dat live is, contrasteert met één dat dat niet is. Deze en de andere beste praktijken die hierboven zijn genoemd, zullen u helpen om analyseparalyse te omzeilen en snel en vroeg te falen, zodat u uw machine learning kunt schalen.

Victor Thu is president van Datatron. Gedurende zijn carrière heeft Victor zich gespecialiseerd in productmarketing, go-to-market en productmanagement in C-level en directeursfuncties voor bedrijven zoals Petuum, VMware en Citrix.