Kunstmatige intelligentie is momenteel waarschijnlijk het populairste onderwerp in de technologiewereld.
Er zijn AI-gestuurde producten die uitgroeien tot eenhoorns of honderden miljoenen aan durfkapitaal binnenhalen. Er zijn ook bekende productleiders die deze AI-gestuurde producten leiden en van wie we leren en die we volgen.
Veel productmanagers willen profiteren van deze ongelooflijke technologie door een AI-product te leiden of AI-mogelijkheden toe te voegen aan hun bestaande producten. Als jij een van hen bent, is dit voor jou.
Ik heb verschillende AI-producten gebouwd en ik ben hier om je te helpen deze technologie te begrijpen en er optimaal gebruik van te maken.
Wat is machinaal leren?
Machinaal leren is een vakgebied dat zich richt op het creëren van algoritmen en software die in staat zijn om te “leren” van de informatie die we aanleveren en als gevolg van deze training effectief specifieke soorten taken uit te voeren.
De term en het vakgebied zelf zijn verrassend oud: ze gaan terug tot 1959, toen Arthur Samuel van IBM (een van de vooraanstaande computerwetenschappers van die tijd) de term bedacht in zijn werk "Enkele onderzoeken naar machinaal leren met behulp van het damspel."
Ondanks zijn 60-jarige geschiedenis is machinaal leren pas in het afgelopen decennium populair geworden dankzij de enorme toename van rekenkracht, vooral in GPU's.
Maar wat heeft machinaal leren te maken met kunstmatige intelligentie? Laten we dat eerst uit de weg ruimen.
Machinaal leren (ML) versus kunstmatige intelligentie (AI)
Iedereen gebruikt de termen “machinaal leren” en “kunstmatige intelligentie” door elkaar om te verwijzen naar slimme software die objecten in afbeeldingen kan herkennen, gedichten kan schrijven en indrukwekkende antwoorden op gedetailleerde instructies kan genereren.
Kunstmatige intelligentie is echter het bredere concept van machines met waarnemings- en redeneervermogens, terwijl machinaal leren een deelgebied van AI is dat zich richt op software die kan leren.
Nu we de definities van de termen hebben behandeld, gaan we verder met het begrijpen van hoe deze machines leren en van de basisprincipes van hun werking.
Hoe machinaal leren werkt

Om machinaal leren te begrijpen, moeten we eerst de meest voorkomende vorm ervan bekijken: neurale netwerken voor diep leren.
Een neuraal netwerk is een structuur die in reguliere code is geschreven en die de werking van een biologisch brein probeert na te bootsen. Bij mensen en andere levende wezens zijn de hersenen een complex netwerk van neuronen (zenuwcellen) die met elkaar verbonden zijn, waarbij een impuls van de ene cel een andere activeert en de informatie zich langs het netwerk van neuronen verplaatst.
Ik denk niet dat ik de juiste persoon ben om biologie uit te leggen (daar zou ik hopeloos in falen), dus ik houd het bij de technologie.
De neurale netwerken in software zien er ongeveer zo uit:

Elke cirkel hier is één neuron. In code is een neuron simpelweg een functie die een bepaald soort informatie kan ontvangen, deze kan verwerken en een resultaat kan doorgeven aan het volgende neuron.
Opmerking: dit is een vereenvoudiging van het werkelijke proces. Voor meer details kun je de uitzonderlijke videoles over neurale netwerken op het YouTube-kanaal 3blue1brown bekijken, waar ze ook de wiskundige concepten achter deze technologie uitleggen.
Zoals we in de afbeelding hierboven kunnen zien, zijn onze neuronen georganiseerd in lagen. Neurale netwerken hebben meestal drie soorten lagen:
- De invoerlaag, die verantwoordelijk is voor het ontvangen van informatie uit de buitenwereld.
- De verborgen lagen verwerken deze informatie, waarbij elke laag één aspect ervan verwerkt.
- De uitvoerlaag geeft het verwerkte resultaat terug aan de buitenwereld.
Laten we nu de betekenis van deze lagen begrijpen aan de hand van een eenvoudig voorbeeld. Stel je voor dat je wilt dat het neurale netwerk een dier op een foto herkent. Hiervoor heb je een neuraal netwerk ontworpen dat uit zes lagen bestaat en als volgt werkt:
- De invoerlaag die kleine segmenten van de foto van het dier ontvangt en doorgeeft aan de eerste verborgen laag.
- De eerste verborgen laag probeert basisvormen (bijvoorbeeld rechte lijnen) in elk segment te vinden en geeft die informatie door aan de tweede laag.
- De tweede laag combineert vervolgens enkele van die lijnen tot eenvoudige geometrische vormen (bijvoorbeeld cirkels, halve cirkels enzovoort) en geeft die door aan de derde laag.
- De derde laag maakt vervolgens complexere vormen van deze geometrische vormen.
- De vierde laag combineert alle eerder gemaakte vormen en verkrijgt een omtrek van een dier.
- De uitvoerlaag geeft ten slotte het type dier dat op basis van de vorm is herkend.
Zo ziet het er visueel uit.

Als je naar het bovenstaande proces kijkt, vraag je je misschien af hoe AI-ingenieurs ervoor zorgen dat deze lagen vormen herkennen en het dier in de afbeelding raden. Welnu, ze doen dat door het neurale netwerk te “trainen” om zijn taak uit te voeren.
Om het netwerk te trainen, geven AI-ingenieurs het een reeks invoergegevens met de bijbehorende juiste uitvoer. In ons geval zouden dat verschillende afbeeldingen van dieren als invoer zijn, met dezelfde afbeeldingen en het juiste dierentype als uitvoer.
Omdat je netwerk de juiste antwoorden heeft, zal het zichzelf voortdurend bijstellen (de parameters die elke neuron aan andere neuronen doorgeeft) totdat zijn antwoorden sterk overeenkomen met de juiste antwoorden die we hebben aangeleverd.
In de praktijk zal je netwerk nooit 100% nauwkeurig zijn met zijn antwoorden en zal er altijd een bepaalde foutmarge zijn waarmee je rekening moet houden. Het goede nieuws is dat je eigenlijk niet wilt dat de antwoorden voor 100% correct zijn. Het enige wat telt, is dat het model sneller en nauwkeuriger is dan een mens.
Nu we begrijpen hoe het werkt, gaan we verder met hoe je machinaal leren in je producten kunt gebruiken.
Machinaal leren: wat het kan en wat het niet kan

De hype rond AI is enorm en veel oprichters van startups of productmanagers dromen ervan AI aan hun producten toe te voegen. Maar hier is de vraag van een miljoen: heb je AI echt nodig?
Ik begrijp dat de term “AI-gestuurd” goed staat in het investeringspresentatiedek en marketingmateriaal van elk product, maar vergeet niet dat het bouwen van een AI-model duur en tijdrovend is.
Als je AI-model dus een eenvoudig probleem probeert op te lossen dat je gemakkelijk met gewone code had kunnen aanpakken, verspil je uiteindelijk je geld aan een flitsende term op je website.
Om te begrijpen of je een AI-model nodig hebt, bespreken we de taken en problemen die je ermee kunt aanpakken en vergelijken we die met de problemen die je met reguliere code zou moeten oplossen.
Veelvoorkomende taken die machinaal leren voor je kan uitvoeren
ML-modellen zijn geen magie — hoewel het, met alle manieren waarop je ChatGPT kunt gebruiken en andere nieuwe grote taalmodellen, zeker zo lijkt. Hoewel we een toename zien van geavanceerde AI-tools, kunnen veel producten profiteren van eenvoudigere ML-modellen.
De functie die deze modellen uitvoeren, valt meestal binnen een van de volgende vier categorieën.
Classificatie
Zoals de naam al suggereert, kunnen deze modellen de informatie die je aanlevert herkennen en deze classificeren of er een label aan toekennen. Het eerder besproken voorbeeld van het herkennen van dieren in een afbeelding is een typisch geval van AI-classificatie.
Het gebied van AI-classificatie valt op zijn beurt uiteen in vier typen:
Binaire classificatie: Dit model geeft je een Ja of een Nee. Veelvoorkomende toepassingen zijn spamfilters voor e-mail (isSpam = true of false), de diagnose van borstkanker (risicovol of niet-risicovol) enzovoort.
Onevenwichtige classificatie: Deze modellen verdelen gegevens in twee groepen: een normale meerderheid en een abnormale minderheid. Een voorbeeld hiervan is fraudedetectie in douaneaangiften aan staatsgrenzen.
Het AI-model onderzoekt de documenten en geeft elke douaneaangifte een groene vlag (in orde), een gele vlag (documenten moeten worden gecontroleerd) of een rode vlag (goederen moeten worden gecontroleerd), afhankelijk van hoe “normaal” de documenten eruitzien in vergelijking met andere documenten.
Multiklasseclassificatie: In dit geval selecteert het model een van de vele vooraf gedefinieerde waarden. Algoritmen voor optische tekenherkenning (de algoritmen die tekst uit een afbeelding halen) behoren tot dit type.
Multilabelclassificatie: In tegenstelling tot het vorige type wijzen deze modellen meerdere labels toe aan hetzelfde gegevensstuk. Veel algoritmen voor computervisie vallen in deze categorie, omdat ze naar de afbeelding of video kijken en daarin meerdere objecten identificeren. Zo ziet multilabelclassificatie eruit voor een zelfrijdende auto.

Andere toepassingen van deze technologie zijn onder meer het halen van nuttige informatie uit tekst (bijvoorbeeld meningen over je merk uit tweets) of het vaststellen van de gespreksonderwerpen in een podcast.
Regressie
Deze klasse AI-modellen kan voorspellingen doen op basis van bestaande informatie. Met regressiemodellen kun je de relatie tussen verschillende factoren begrijpen en toekomstige waarden voorspellen op basis van waarden uit het verleden (ook wel voorspellingsalgoritmen genoemd).
Enkele toepassingen van regressiealgoritmen zijn:
- De aandelenkoers voorspellen op basis van eerdere prijsschommelingen.
- De prijs van een auto voorspellen op basis van kilometerstand, productiejaar enzovoort.
- De beste reclameteksten voorstellen voor betere conversiepercentages.
- De beste weekdag en het beste tijdstip vinden om e-mails te versturen, zodat je de meeste opens en klikken krijgt.
Sommige grotere modellen kunnen ook zaken voorspellen die zo complex en chaotisch zijn als het weer.
Clusteren
Dit is een proces op basis van ongesuperviseerd leren waarbij het model overeenkomsten in een verzameling items detecteert en deze op basis van die overeenkomst groepeert. In tegenstelling tot classificatie weet een clusteringalgoritme niet wat het ziet; het weet alleen dat deze items op elkaar lijken.
Enkele toepassingsmogelijkheden van clusteringalgoritmen zijn:
- Je e-mailmarketinglijst opdelen in segmenten die zich op vergelijkbare wijze gedragen.
- Een grote verzameling boeken ordenen op onderwerp.
- Foto's groeperen op basis van de items die erop voorkomen.
In het algemeen geldt: als je een grote verzameling items hebt die je op basis van een specifieke eigenschap in verschillende groepen wilt verdelen, heb je clusteringalgoritmen nodig.
Synthese
Ten slotte zijn er de algoritmen die in staat zijn inhoud te creëren. We hebben het over AI-kunstenaars, -schrijvers en -muzikanten.
De toepassingsmogelijkheden voor deze groep modellen zijn waarschijnlijk eindeloos — en de modellen (die nu grote taalmodellen worden genoemd, of "LLMs") worden elke dag beter. Denk bijvoorbeeld aan:
- Tekstschrijvers voor websites die voor SEO geoptimaliseerde structuur en inhoud creëren.
- Het watermerk uit een afbeelding verwijderen en het gedeelte van de afbeelding dat onder het watermerk zat opnieuw tekenen.
- Nieuwe beelden in een game creëren in plaats van ze door je grafische kaart te laten renderen, om bronnen te besparen.
- Foto's voor je advertenties genereren waarvoor geen licentie nodig is.
Hier is een voorbeeld van een gedicht dat ik GPT-4 vroeg te schrijven. (Opmerking: ik stelde GPT-3 in januari dezelfde vraag en ik verzeker je dat het vandaag een stuk getalenteerder is.)


Je kunt natuurlijke taal gebruiken om een prompt te formuleren, waarna het model je verzoek zal begrijpen en uitvoeren op basis van de kennis die het van internet heeft verzameld.
Samengevat zijn dit de meest voorkomende typen toepassingen van AI-modellen.
Het lijkt erop dat je veel dingen met AI kunt doen, maar soms is het sneller en goedkoper om het idee om een model te bouwen te laten varen en te kiezen voor eenvoudige softwareproductontwikkeling.
Taken waarvoor je in plaats daarvan gewone code moet gebruiken
Niet elk probleem heeft een AI-model nodig om het op te lossen.
Om te bepalen of je het betreffende probleem zonder AI kunt oplossen, vraag je jezelf af of er een deterministische en duidelijke reeks regels of handelingen is die je kunt uitvoeren om het op te lossen.
- Als het antwoord ja is, kun je gewone code gebruiken (code is tenslotte simpelweg een reeks duidelijke regels en opdrachten voor je computer). Je hebt bijvoorbeeld geen AI nodig om te bepalen of het bestand dat je gebruikers hebben geüpload een Excel-spreadsheet is, aangezien XLSX-bestanden een strikt formaat hebben en je daarop kunt controleren.
- Wanneer je deze duidelijke regels niet kunt aanwijzen, zul je moeten vertrouwen op AI-modellen om die taak voor je uit te voeren. Het voor de hand liggende voorbeeld is beeldherkenning. Er bestaat geen betrouwbare reeks regels waarmee je kunt bepalen of het rode ding op de afbeelding een auto van een specifiek merk is.
Om dit concept verder te verduidelijken, bekijken we enkele problemen die je zonder AI kunt oplossen.
De kortste route van punt A naar punt B op de kaart vinden. Dit is een bekend probleem in de wiskunde en er bestaan veel deterministische benaderingen (bijvoorbeeld het algoritme van Dijkstra) die het met gewone code kunnen oplossen.
Verkeersopstoppingen op de kaart controleren. Hiervoor bestaat een slimme oplossing. Google verzamelt bijvoorbeeld realtime gps-locatiegegevens van alle smartphones (waarop deze functie is ingeschakeld) en controleert of er veel telefoons stilstaan op straat. Als dat zo is, moet daar een verkeersopstopping zijn.
Opmerking: hoewel je hier AI kunt gebruiken om een verkeersopstopping te voorspellen op een straat waar zeer weinig smartphones aanwezig zijn, of waar de locaties verspreid zijn.
Merkvermeldingen op sociale media tellen. Als je het aantal vermeldingen van je merk op socialemediaplatforms wilt achterhalen, heb je alleen een scrapingtool nodig die de zoekresultaten van sociale media uitleest en ze telt.
Opmerking: een AI-model zou hier nuttig zijn om het aantal vermeldingen te voorspellen op basis van het scrapen van een klein deel van de resultaten (in plaats van de volledige lijst met zoekresultaten) - zo bespaar je rekenkracht en middelen.
Kortom: AI-modellen zijn behoorlijk capabel voor de taken die ze kunnen uitvoeren, maar soms is coderen eenvoudiger.
Nu je begrijpt hoe je kunstmatige intelligentie in je producten kunt gebruiken, wil ik enkele tips delen over het werken met AI-modellen.
6 tips voor productmanagers die met machineleren werken
In de loop van mijn carrière met machinelearningproducten heb ik veel fouten gemaakt die hebben geleid tot tijd- en geldverlies. Om ervoor te zorgen dat jij, als ML-productmanager, deze fouten niet herhaalt, volgen hier enkele handige tips om rekening mee te houden.
De kwaliteit van de gegevens bepaalt het succes of falen van je modellen
ML-engineeringteams en datawetenschappers gebruiken graag de term “rommel erin - rommel eruit.” Dit betekent dat de kwaliteit van het model rechtstreeks afhankelijk is van de kwaliteit van de datasets die je gebruikt om het te trainen.
Om duidelijk te maken wat ik met slechte gegevens bedoel, bespreek ik enkele aspecten die de kwaliteit ervan bepalen:
Slechte annotaties: annotatie is het handmatig labelen van nieuwe gegevens om ze als “correcte resultaten” te gebruiken voor de training van je model. Annotators voor een model dat dieren herkent, markeren bijvoorbeeld het dier op de afbeelding en geven het de bijbehorende naam. Als je olifanten labelt als “pinguïns”, zal je model na de training hetzelfde doen.
Gebrek aan diversiteit: je modellen werken alleen goed als de gegevens uit de echte wereld vergelijkbaar zijn met de gegevens waarop ze zijn getraind. Als je een systeem voor kentekenherkenning hebt dat alleen Amerikaanse kentekens heeft leren lezen, zal het jammerlijk falen wanneer het een auto met EU-kentekenplaten ziet.
Vooringenomenheid in gegevens: heb je ooit gehoord van racistische AI? Google heeft zich onlangs verontschuldigd bij de Afro-Amerikaanse gemeenschap omdat zijn computervisie-algoritme dit deed:

Er zijn ook talloze gevallen waarin politie-AI-modellen minderheden als doelwit hebben gekozen.
De reden hiervoor zijn vooringenomen gegevens. Deze politie-AI's hadden de database gebruikt van een politiebureau dat berucht stond om zijn raciale vooringenomenheid. Daardoor bevatten de gegevens veel arrestaties van minderheden, wat ertoe leidde dat het AI-model hen als doelwit koos.
Zorg er daarom voor dat de gegevens die je gebruikt geen vooroordelen bevatten die mogelijk kunnen leiden tot gebrek aan respect, belediging of erger.
Bouw functies waarmee je je modellen opnieuw kunt trainen
Modellen bouwen is de helft van het werk—je moet ze ook voortdurend verbeteren door nieuwe mogelijkheden toe te voegen of ze simpelweg nieuwe gegevens te geven waarop ze opnieuw kunnen worden getraind.
Het kan een uitdaging zijn om gegevens te vinden voor het opnieuw trainen die relevant zijn voor je ML-product. Overweeg daarom functies toe te voegen waarmee je die gegevens uit het product zelf kunt halen.
Hier zijn twee benaderingen voor feedbacklussen die ik heb geprobeerd (en die goed werkten):
Vraag om feedback op de AI-resultaten: Als je spam in e-mails detecteert, voeg dan een knop “geen spam” toe waarmee je gebruikers de e-mail uit de spam kunnen halen. Als gevolg van deze actie zullen ze die e-mail ook “annoteren” als spamvrij en kun je deze gebruiken om je model opnieuw te trainen.
Opmerking: Ja, dat is precies wat de knop “Geen spam rapporteren” in Gmail doet.

Bied de gebruiker de mogelijkheid om je model af te stemmen op hun gegevens: Dit is een win-winsituatie. Je gebruikers krijgen een beter presterend model omdat je het opnieuw hebt getraind met hun specifieke gegevens, terwijl jij extra gegevens krijgt om de diversiteit van je model te vergroten.
Gebruik kant-en-klare oplossingen in plaats van je eigen oplossingen te bouwen als dat mogelijk is
Je hoeft het AI-wiel niet opnieuw uit te vinden. Er zijn veel kant-en-klare modellen die je kunt kopen of huren. Dit is vooral relevant als je een probleem probeert op te lossen dat relatief veel voorkomt (bijvoorbeeld het herkennen van naaktbeelden in je socialmedia-app).
Je kunt kant-en-klare modellen vinden op platforms zoals Modelplace en RapidAPI Hub.

Een eenvoudige zoekopdracht naar een model voor logoherkenning leverde 9 kant-en-klare oplossingen op die we via een API kunnen integreren.
Gebruik opensource-AI-modellen en draag eraan bij
Kunstmatige intelligentie heeft een aanzienlijke opensourcegemeenschap. Je kunt daarop voortbouwen om kant-en-klare modellen of nuttige hulpmiddelen te vinden waarmee je je modellen kunt bouwen.
Bekijk deze lijst op GitHub met enkele van de beste opensourceprojecten en -initiatieven op het gebied van machinaal leren. Deze lijst is behoorlijk divers en bevat:
- Modellen met verschillende niveaus van uitlegbaarheid (hoe goed je kunt uitleggen hoe je model werkt), geschreven in Python en C door giganten zoals IBM en Amazon.
- Trainingsgegevens voor je modellen.
- Hulpmiddelen voor gegevensanalyse, het bijhouden van belangrijke statistieken, anomaliedetectie en meer.
Opmerking: Als je verbeteringen aan deze modellen hebt aangebracht, dien dan een pullrequest in en deel je werk met de opensourcegemeenschap en haar belanghebbenden. Opensource draait om geweldige mensen die geweldige dingen doen en deze met anderen delen.
Het kost tijd om AI-modellen te bouwen
De methodologieën van Agile en MVP werken niet altijd met ML-systemen. Je kunt niet altijd een klein model bouwen en er vervolgens met meerdere iteraties nieuwe functies bovenop zetten. Soms betekent een kleine wijziging aan een model dat je het vanaf nul opnieuw moet trainen.
Je kunt zelfs te maken krijgen met een situatie waarin het optimaliseren van je model met 10% betekent dat je het oude model moet wegdoen en een nieuw algoritme voor machinaal leren moet maken.
Een ander aspect om rekening mee te houden is de specifieke aard van het werk van datawetenschappers of multifunctionele teams waarin zij vertegenwoordigd zijn.
Soms kunnen zij je geen inschatting geven van wanneer ze hun werk zullen afronden, omdat ze het grootste deel van hun tijd besteden aan het uitvinden van iets volledig nieuws en geen idee hebben hoeveel tijd het ontwikkelproces in beslag zal nemen. (Een goed voorbeeld hiervan is de steeds veranderende planning voor de release van Google Gemini.)
Vermijd drastische wijzigingen in je databasestructuur
Dit is een pijnlijke realiteit waar ik een paar keer mee te maken heb gehad.
Als je je eigen gegevens gebruikt om je modellen opnieuw te trainen, verander dan liever de structuur van je database niet.
Je modellen worden gebouwd om gegevens met een specifieke structuur en aard te verwerken. Als je data-engineeringteam je databases wijzigt, zal je ML-team je modellen moeten aanpassen en ze zelfs vanaf nul opnieuw moeten trainen.
Leren is een continu proces.
Kunstmatige intelligentie heeft de wereld voor ons allemaal beter gemaakt, omdat het veel visionaire oprichters en ML-productmanagers in staat heeft gesteld problemen op te lossen die in het verleden onmogelijk leken.
Ik hoop dat deze gids je heeft geholpen het concept van AI in productmanagement te begrijpen, evenals de rol van de productmanager in dit proces en de praktische manieren waarop bedrijven AI kunnen gebruiken.
Maar het bouwen van geweldige nieuwe producten draait niet alleen om het juiste gebruik van AI. Er zijn ook veel belangrijke productaspecten die je moet beheersen, waaronder:
- De kunst van het bouwen van minimaal levensvatbare producten.
- Het werk van je team goed plannen met productroadmaps.
- Op een kosteneffectieve manier je PMF vinden, enzovoort.
Tot slot kun je, zoals het gedicht in de GPT-3-demo heeft gesuggereerd, je abonneren op onze nieuwsbrief om het beste op het gebied van productmanagement te ontvangen en voorop te blijven lopen.
