Open source is tegenwoordig populair bij bedrijven voor machine learning en AI, maar die staan onvoldoende stil bij de gevolgen op lange termijn. R en Python worden steeds vaker gebruikt, omdat deze programmeertalen ook in het onderwijs het vaakst voorkomen. Dat is zeker geen probleem in een theoretisch kader, maar machine learning en AI-modellen moeten ook in de praktijk worden omgezet om waarde te creëren. En daar knelt het schoentje vaak.

'Bedrijven beseffen niet genoeg dat open source veel inspanningen vergt'

Dat de open source-talen R en Python hun weg binnen organisaties vinden, heeft veel met de opleiding van nieuwe werkkrachten te maken. De meeste professoren kiezen immers voor pakketten met R en Python, aangezien de drempel heel laag is. De software is ook eenvoudig te installeren: studenten kunnen de pakketten gewoon van het internet downloaden om er niet veel later al mee aan de slag te gaan.

Student is geen expert

Vanuit academisch standpunt is het zeker interessant om in open source te leren, maar op bedrijfsniveau wordt de omslag toch iets te gemakkelijk gemaakt. Het is een misvatting van vele managers dat ze naar R en Python moeten overschakelen, omdat ze merken dat pas afgestudeerde werkkrachten hier bedreven in zijn. Iemand die net van de schoolbanken komt, kan zich hoegenaamd nog geen expert noemen.

Jonge werkkrachten kijken zelden verder dan het model dat ze ontwikkeld hebben.

Die expertise komt er pas wanneer je verworven kennis op praktische zaken begint toe te passen. Met de theoretische achtergrond die het hoger onderwijs voor studenten voorziet, zou het voor hen bovendien niet moeilijk mogen zijn om ook een andere taal te gebruiken. Goede datwetenschappers zijn in staat om de taal zelf te abstraheren.

Veel bedrijven zien niet het volledige plaatje wanneer ze de switch naar R en Python maken. Met open source kunnen jonge werknemers exotische modellen bouwen, maar uiteindelijk moet je er als organisatie ook iets mee kunnen doen. En zo'n model heeft voor een bedrijf pas nut als er waarde uit kan worden gehaald.

De analytische levenscyclus

Stel: een bank wil voorspellen welke klanten in de nabij toekomst zullen overwegen om naar de concurrentie over te stappen. Met R en Python kan je een goed model of algoritme bouwen dat op basis van historische data gaat stellen welke factoren bepalen of iemand van bank zal veranderen. Zo'n model gaat kijken naar de bestaande database van klanten, naar de mensen die al zijn overgestapt en naar wat hun gedrag was. Hebben ze bijvoorbeeld vrienden die van bank zijn veranderd? Is hun lening afgelopen? Hebben ze de voorbije maanden zichtrekeningen afgesloten?

Belangrijker voor de bank is echter dat zo'n model ook op nieuwe klanten kan worden toegepast. Hoe groot is de kans dat een klant volgende maand naar de concurrentie vertrekt? Van zodra de bank dit weet, kunnen er incentives aan worden gekoppeld. Ze zouden die persoon bijvoorbeeld een jaar lang van een gratis creditcard kunnen voorzien. Op die manier anticiperen ze op het vertrek en heeft de klant plots een reden om toch te blijven.

Dat tweede luik creëert dus de meerwaarde voor de bank. Een model dat in een theoretisch kader werkt, is mooi, maar een organisatie haalt pas waarde uit verworven kennis als het model ook in een praktijkomgeving kan worden toegepast. Dat is de analytische levenscyclus, die bestaat uit 'development' en 'deployment', en die zowel op analytische projecten als projecten rond machine learning of artificiële intelligentie van toepassing is.

Veel bedrijven zien niet het volledige plaatje wanneer ze de switch naar R en Python maken.

Jonge werkkrachten kijken echter zelden verder dan het model dat ze ontwikkeld hebben. Voor hen is de opdracht na het eerste luik, 'development', afgesloten. Het belangrijkste stuk van de levenscyclus moet dan echter nog komen: het model in productie zetten.

Geen opvolging

SAS merkt wel dat die ervaring een groeiend aantal bedrijven intussen motiveert om wat gas terug te nemen. Er is niet alleen heel wat IT-kracht nodig om deze modellen in productie te zetten, vaak blijken ze na enkele jaren niet meer te werken. Wat toen het beste model ooit leek, is dat vandaag niet meer. De pakketten of codes die destijds gebruikt zijn, hebben intussen een update gekregen. Het is immers een open source community, wat betekent dat iedereen voortdurend bijdraagt aan de ontwikkeling van pakketten.

Een bedrijf is dus niets met een verouderd model. In veel gevallen is de werknemer in kwestie ook al lang vertrokken bij z'n eerste job, zodat hij niet voor onderhoud en opvolging kan zorgen. Open source-programmeurs staan meestal ook niet stil bij de documentatie van codes, waardoor niemand in staat is om hun taak over te nemen.

Bedrijven moeten daarom beseffen dat open source meer inspanningen vergt dan ze op het eerste gezicht zouden denken. Er moet nagedacht worden over een aanpak of structuur om te vermijden dat iedereen op z'n eigen manier codeert. SAS wil open source graag omarmen en de code industrialiseren, maar daarvoor moet de aanpak van bedrijven veranderen. Met open source valt veel kennis te verwerven, maar dat betekent niet dat dit ook de beste keuze is in de bedrijfsorganisatie.