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.
“Traditionele applicaties zijn deterministisch, ai-applicaties zijn probabilistisch.” Ik gok dat 99% van de lezers geen idee heeft waar dit over gaat. De daarop volgende zinnen geven namelijk niet echt een antwoord als de uitkomst al vast staat en de kans op de JUISTE uitkomst groot is. Ik heb mijn verwarring in hoofdletters gezet omdat ik begreep dat vooringenomenheid juist zit AI en niet in de traditionele systemen.
Die 90% onbegrijpelijkheid dat geldt meer voor jouw reacties.
het artikel is best duidelijk.
hoe zou dat komen ?
ah, zie het al. Het artikel licht e.e.a. wel toe.
traditionele software werkt op basis van specificaties.
Je test de specs, dmz review. Dan weet je wat het programma zou moeten doen.
Je test de werking tegen de specs, dan weet je dat het programma werkt zoals bedoeld.
De specs zijn leidend en die zijn per definitie in begrijpelijke taal. Louis Kossen had het daar onlangs nog over.
Is aan beide tests voldaan dan is de uitkomst juist, namelijk zoals gespecificeerd.
Anders bij AI,
Das net zoiets als jouw mening : een conclusie en niemand heeft idee waarom. Maar waarschijnlijk speelt vooringenomenheid ook wel een rol 🙂
Misschien drijf je wel op dezelfde menselijke volgzaamheid als we doen met AI : Klinkt allemaal heel ingewikkeld dus er zal wel waarheid in zitten.
Een traditionele applicatie kan wel m.i. wel een waarschijnlijkheid als uitkomst hebben. Als die waarschijnlijkheid niet correct is, is het traditionele programma verkeerd geprogrammeerd. Een (AI) neuraal netwerk zou in dat geval met een bepaalde strakgedetermineerde waarschijnlijkheid aangeven hoe zeker die betreffende waarschijnlijkheidsuitkomt is. Voor een manager maakt het weinig uit als hij of zij bij traditionele programma’s toch ook al met waarschijnlijkheidsuitkomsten werkte. De stijging van de onzekerheidsmarge kon in veel gevallen wel eens marginaal zijn en in andere gevallen juist onaanvaardbaar hoger worden.
Dank Dino dat je me met veel woorden gewoon gelijk geeft, ik begreep namelijk al dat vooringenomenheid in AI zit omdat daarmee een soort van intelligentie geveinsd wordt. Ik kan in mijn onbegrijpelijkheid wijzen op fout in een schaakpartij waardoor het algoritme van de wijs raakte en de partij door de mens gewonnen werd. Elk voordeel heb z’n nadeel want het buiten gebruikelijke kaders denken gaat de traditionele applicaties ook niet goed af.
Uit onderzoek blijkt dat 99% van de Nederlanders het in Jip & Janneke woorden verteld wil hebben want volgens Wikipedia gaan beide begrippen (deterministisch & probabilistisch) om een filosofisch concept;-)
Ik geef toe dat het creativiteit en intelligentie vraagt om mijn woorden op die manier uit te leggen.
Misschien laat dat ook de complexiteit van het probleem zien : realiteit, projectie, specificatie, implementatie, scope, context, waarheid, subjectiviteit, objectiviteit, perceptie, menselijkheid.
Wanneer is data schoon ? Als het algoritme de uitkomst geeft die past bij de vooringenomen uitkomst.
Zijn we nou verder dan 42 gekomen als de zin van het leven, nu we weten dat het waarschijnlijk 42 is.
Dino die de filosofische toer op gaat, straks begint hij nog over 5GL en geoliberalisme. Nu is data wel een dingetje als we kijken naar Les Misérables van eens een boef, altijd een boef. Tenslotte gaat het recht om vergeten te worden om de zonden die we deden in het verleden toen we nog jong en ontwetend waren. O tempora, o mores!
Om onze zonden uit het verleden te beoordelen met de moraal van het heden hebben we geen AI nodig, Dino kan dat heel goed.
Data governance is zoals de auteur afsluitend dan ook zegt cruciaal alleen moet je daar organisatorisch wel wat voor doen want de slager moet je niet z’n eigen vlees laten keuren. Het ‘sed quis custodiet ipsos custodes?’ van wie bewaakt de bewakers gaat, zoals Pieter Omtzigt concludeerde, nog vaak mis doordat er een conflict in belangen is:
https://www.computable.nl/artikel/achtergrond/magazine/6959548/5215853/ken-jij-de-data-steward-al.html
Wat betreft een ‘skill gap’ is 10 jaar een hele lange periode als het om het inrichten van de data governance gaat, zeker als AI grootschalig toegepast wordt met initiatieven zoals ChatGPT.
“Zonden uit het verleden”
Wat zonden zijn is meteen al niet meer duidelijk als elke reactie kan worden uitgelegd als:
fijn “dat je me met veel woorden gewoon gelijk geeft” + daarna de gebruikelijke QED van onbegrijpelijke
zwets.
Denigrerende namen en beledigingen van paar dagen terug meteen vergeten maar graag terugverwijzen naar je eigen mening van jaren geleden.
Jouw variant van LCM via Ruttes geheugen of die van zijn Nokia.
Gelukkig is het enige dat we van vroeger hoeven te onthouden, dat het beter was.
Als ik mijn hond uitlaat denk wel eens aan jouw schaken op meerdere borden.
Tis eigenlijk een vorm van kakken op meerdere plekken.
Maar het leuke is dat er uiteindelijk weer mooie bloemen op groeien 🙂
En zo komt alles toch weer goed.