Ai is een verrijking voor bedrijven en de maatschappij. Maar als we niet oppassen, verliezen we het draagvlak ervoor en daarmee de voordelen die deze applicaties bieden. Immers, als we ai-applicaties behandelen als traditionele applicaties, dan kan dit catastrofale gevolgen hebben. Zie de ‘racistische’ Tesla-auto en de toeslagenaffaire. Daarom moet de it-manager die ai wil inzetten in zijn bedrijf (en de maatschappij) eerst het verschil begrijpen tussen traditionele applicaties en ai-applicaties.
Genoemde applicaties verschillen als dag en nacht. Ze verschillen in de uitkomst en wat je met de uitkomst doet, de interactie tussen mens en computer, het ontwikkelproces, kosten allocatie, het testen van de applicaties, foutafhandeling en de bias van de programma’s. In deze blog ga ik in op een paar cruciale divergenties.
Fraudeur
- Uitkomst en vervolgproces
Traditionele applicaties zijn deterministisch, ai-applicaties zijn probabilistisch. Deterministisch betekent dat de uitkomst op voorhand is bepaald. Probabilistisch daarentegen dat de kans op de juiste uitkomst groot is.
Wanneer een fraudeur wordt opgespoord door een traditionele applicatie, zijn alle regels in de applicatie op voorhand bepaald en zijn de processen gedefinieerd en getest. Daardoor kan het vervolgproces gelijk ingaan als een persoon als fraudeur bestempeld is door een traditionele applicatie. Enkel in een uitzonderlijk proces is een persoon onschuldig.
Bij een ai-applicatie is dit niet zo rechtlijnig. Hierbij is de kans reëel dat een persoon correct wordt geclassificeerd als fraudeur aan de hand van het model en de data. Maar er bestaat een kans dat de persoon geen fraudeur is. Aangezien de uitkomst grote consequenties kan hebben voor een persoon, is het beter om aan de hand van deze uitkomst een gedegen onderzoek te doen naar die persoon en aan de hand van dat onderzoek je het model aan te passen. In dit geval is het doel van de applicatie niet fraudeurs te straffen, maar mensen en bedrijven te helpen om te voldoen aan de regels.
Bij traditionele applicaties volgt de mens de beslissing die uit machine komt. Bij ai-applicaties ondersteunt de machine de mens in het maken van de beslissing.
- Ontwikkelproces en kosten van applicaties
Het ontwikkelen en gebruiken van een applicatie kent verschillende kenmerken zoals ontwikkelkosten, operationele kosten, de uitlegbaarheid van het proces, snelheid van in productie namen, security en privacy van de data. Hieronder belicht ik een aantal aspecten voor het ontwikkelen van traditionele en artificiële applicaties.
Bij traditionele applicaties begin je bij het proces dat je automatiseert. Er bestaan verschillende methodes – waterfall, scrum, kanban, safe – om het ontwikkelproces van applicaties te ondersteunen. Deze methodes maken in de basis gebruik van dezelfde zes stappen:
1. Plan de wijziging
2. Analiseer het proces
3. Ontwikkel een applicatie die het proces automatiseert
4. Test de applicatie (of het geautomatiseerde proces)
5. Publiceer de applicatie
6. Support de applicatie
In de stappen maak je gebruik van kennis en skills van mensen. Daarom gebruiken ze in it een otap (ontwikkel, test, acceptatie en productie)-straat, ofwel een verzameling van computersystemen in de verschillende fasen van het ontwikkelen van een applicatie. Deze straat maakt dat mensen met uiteenlopende kennis en skills tegelijkertijd aan een product kunnen werken. Hierdoor is het eenvoudig om de toegang tot data te scheiden in het ontwikkelproces. De data die gebruikt worden in elk van deze stappen, is verschillend en wordt voornamelijk gebruikt om de applicatie te testen in de verschillende fasen van het project. In dit ontwikkelproces alloceer je als manager twintig procent voor de bouw en tachtig procent voor het beheer en operationele kosten voor de leeftijd van een applicatie.
Bij ai-applicaties begin je bij de vraag en de data die nodig is om de vraag te beantwoorden. Daarna worden de volgende acht stappen gevolgd om de applicatie te maken:
1. Stel hypothese op
2. Verzamel data
3. Maak de data schoon
4. Analyseer data
5. Bepaal een (statisch) model
6. Valideer je hypothese
7. Publiceer de applicatie
8. Support de applicatie
Het ontwikkelen van nieuwe applicaties gaat vele male sneller doordat er allemaal modellen beschikbaar zijn en er zelfs modules zijn die het beste model voor je selecteren. Door het gebruik van de gevalideerde en geteste modellen zijn de applicaties vele male kleiner. Applicaties kunnen zo klein zijn als tien regels code. Hierdoor is het ontwikkelen van een nieuwe applicatie een peulenschil t.o.v. traditionele applicaties, onder de voorwaarde dat je datasets in orde zijn.
De bulk van het werk ligt in het maken van je datasets en het afhandelen van de uitkomsten. Bij deze applicaties zijn data en applicatie nauw verbonden aan elkaar en is het scheiden van de toegang tot data in het ontwikkelproces niet meer mogelijk. Het ontwikkelen van ai- of machine learning-oplossingen is alleen te doen met productiedata. De kosten voor het gebruiken van deze applicaties ligt voornamelijk in data-cleaning, data-governance en de acties die worden ondernomen nadat het programma gedraaid heeft.
- Bias en herleidbaarheid
Bij traditionele applicaties die voortkomen uit het automatiseren van processen, is gemakkelijk te herleiden welke verschillende stappen de data heeft doorlopen. Alle bias die in deze applicaties zit, is bewust of onbewust geprogrammeerd. Wanneer zo een bias aanwezig is, is deze te herleiden en relatief gemakkelijk aan te passen.
Bij ai-applicaties maak je gebruik van de data om je model op te stellen. De bias in je applicatie is dan gekoppeld met de bias in je data. Als je dataset bijvoorbeeld allemaal rode bloemen bevat, kan het zijn dat het model moeite heeft met het herkennen van paarse bloemen. Dit is een voorbeeld van wat er is gebeurd met de collectiedetectie van de zelfrijdende auto’s van Tesla. Hierbij waren de modellen getraind met gezichten van blanke mensen, waardoor mensen met een andere huidskleur moeilijker of soms zelfs niet als mens werden geïdentificeerd. Ook kan het zijn dat je een parameter hebt gebruikt, die gevoelig kan liggen, zoals een tweede nationaliteit bij de toeslagenaffaire. Bedenk hierbij: data, code en programma’s zijn niet bevooroordeeld.
Onthouden
Wanneer je als manager de kracht van ai-tools wilt gaan inzetten, is het belangrijk om te onthouden dat:
- De uitkomst niet altijd honderd procent correct is;
- De grote vraag is: wat te doen met de uitkomst? Op dit moment is het in de ontwikkeling van ai het beste om processen zo in te richten dat je customer intimacy wordt vergroot;
- Je op een andere manier moet omgaan met het ontwikkelen en gebruiken van deze applicaties;
- De traditionele methodes voor het ontwikkelen van de applicaties niet werken voor het ontwikkelen van ai;
- Datakwaliteit en data-governance cruciaal zijn bij het ontwikkelen van ai-applicaties.