<?xml version="1.0" encoding="UTF-8"?>
<rss  xmlns:atom="http://www.w3.org/2005/Atom" 
      xmlns:media="http://search.yahoo.com/mrss/" 
      xmlns:content="http://purl.org/rss/1.0/modules/content/" 
      xmlns:dc="http://purl.org/dc/elements/1.1/" 
      version="2.0">
<channel>
<title>Trajectorium — AI, Agents &amp; Energy Efficient Sovereign Architectures</title>
<link>https://trajectorium.ai/nl/blog/</link>
<atom:link href="https://trajectorium.ai/nl/blog/index.xml" rel="self" type="application/rss+xml"/>
<description>Artikelen over AI, agentic systemen en energiezuinige soevereine architecturen.</description>
<generator>quarto-1.10.18</generator>
<lastBuildDate>Sat, 12 Dec 2026 00:00:00 GMT</lastBuildDate>
<item>
  <title>Wat er nodig is om een soevereine AI-agent te bouwen voor jouw organisatie</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/een-soevereine-ai-agent-bouwen.html</link>
  <description><![CDATA[ 




<p>De meeste organisaties die zeggen dat ze een “AI-agent hebben gebouwd”, hebben in werkelijkheid alleen een systeem-<em>prompt</em> geschreven bovenop Claude, GPT of Gemini en het daarbij gelaten. Dat is een vertrekpunt, geen soeverein systeem — zoals <a href="../blog/de-institutionele-slotgracht.html">eerdere artikelen op deze site</a> hebben behandeld, laat dat je organisatie intelligentie huren in plaats van bezitten, afhankelijk van infrastructuur, prijsstelling en exportcontrolebeslissingen die volledig buiten jouw beheer worden genomen. Dit artikel brengt alles samen wat deze site tot nu toe heeft behandeld — <a href="../blog/van-tekst-naar-agentische-workflows.html">tekst naar actie</a>, <a href="../blog/de-institutionele-slotgracht.html">de institutionele slotgracht</a>, <a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">soevereiniteit</a>, <a href="../blog/pruning-quantization-distillation.html">modelcompressie</a> en <a href="../blog/het-autonome-bedrijf-besturen.html">governance</a> — in één praktisch antwoord op één vraag: wat is er werkelijk nodig om je eigen soevereine agent te bouwen, van begin tot eind?</p>
<section id="eerst-waar-hebben-we-het-eigenlijk-over" class="level2">
<h2 class="anchored" data-anchor-id="eerst-waar-hebben-we-het-eigenlijk-over">Eerst: waar hebben we het eigenlijk over?</h2>
<p>Voordat we bij de stappen komen, helpt het te zien wat een soevereine agent werkelijk kan doen, want “AI-agent” betekent heel verschillende dingen afhankelijk van de context.</p>
<p><strong>Voorbeelden uit de private sector:</strong> - Een <strong>klantenserviceagent</strong> voor een telecom- of verzekeringsmaatschappij, verankerd in de eigen contracten, beleidsdocumenten en factureringssystemen van de organisatie — in staat een betwiste rekening op te lossen, een dekkingsclausule uit te leggen of een account bij te werken, terwijl alles wat werkelijk ambigu is wordt geëscaleerd naar een mens. - Een <strong>contract- en compliancereviewagent</strong> voor een interne juridische afdeling, die inkomende leverancierscontracten controleert op afwijkingen van het eigen <em>playbook</em>, precies zoals behandeld in het <a href="../blog/de-institutionele-slotgracht.html">eerdere artikel over de institutionele slotgracht</a>. - Een <strong>HR-casusafhandelingsagent</strong> die routinematige verlof-, salaris- en uitkeringsvragen oplost — een van de hoogst-ROI-startpunten precies omdat het regelintensief, hoog-volume en volledig digitaal is, zoals behandeld in het <a href="../blog/het-autonome-bedrijf-besturen.html">eerdere governance-artikel</a>. - Een <strong>agrarische adviesagent</strong> voor een boerencoöperatie, verankerd in historische logboeken, huidige EU-biologische wetgeving en realtime weerdata — het boomgaardvoorbeeld behandeld in <a href="../blog/van-logboeken-naar-agent-trainingsdata.html">een eerder artikel</a>. - Een <strong>klinische documentatieassistent</strong> voor een ziekenhuis, die de impliciete redenering achter behandelbeslissingen reconstrueert uit IC-notities.</p>
<p><strong>Voorbeelden uit de publieke sector — vaak het meest interessant, en het meest veeleisend:</strong> - Een <strong>beleidsimplementatieassistent</strong> die klantbeheerders helpt een nieuw subsidiestelsel of milieuregulering consistent toe te passen over honderden casussen, waardoor de variatie wordt verminderd die onvermijdelijk ontstaat als tientallen mensen dezelfde regel iets anders interpreteren. - Een <strong>burgergerichte navigatieagent</strong> die iemand helpt een woningtoelage aan te vragen, een belastingaanslag te begrijpen of te achterhalen welke vergunning ze nodig hebben — ze door het daadwerkelijke bureaucratische proces leidend, de juiste formulieren en deadlines citerend, en duidelijk het punt markerend waarop ze een menselijke klantbeheerder of advocaat nodig hebben. - Een <strong>uitkeringsgeschiktheidsagent</strong> die eenvoudige, ondubbelzinnige aanvragen vooraf screent (waardoor klantbeheerders vrijkomen voor de werkelijk moeilijke gevallen) en alles wat grensgevallen zijn doorroute naar een mens — nooit zelfstandig een definitieve afwijzing uitgevend. - Een <strong>gemeentelijke vergunningsassistent</strong> die een kleine ondernemer helpt begrijpen welke milieu-, bestemmingsplan- of veiligheidsregels van toepassing zijn op hun specifieke situatie, voordat ze ooit met een ambtenaar hoeven te spreken.</p>
<p>Wat al deze gevallen gemeen hebben, is dezelfde onderliggende vereiste: ze moeten verankerd zijn in <em>jouw</em> regels, <em>jouw</em> procedures en <em>jouw</em> uitzonderingen — niet in de generieke trainingsdata van een basismodel — en, met name in de publieke-sectorcasussen, moeten ze auditeerbaar, eerlijk en duidelijk begrensd zijn in wat ze mogen beslissen versus louter suggereren.</p>
</section>
<section id="stap-1-bouw-of-huur-een-soeverein-hardwareplatform" class="level2">
<h2 class="anchored" data-anchor-id="stap-1-bouw-of-huur-een-soeverein-hardwareplatform">Stap 1: Bouw (of huur) een soeverein hardwareplatform</h2>
<p>Voordat het interessante werk begint, heb je ergens nodig om het te draaien dat je werkelijk beheert. Zoals behandeld in het <a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">eerdere artikel over AI-soevereiniteit</a>, betekent dit niet dat je Google moet overtreffen — het betekent bewust zijn over waar inferentie daadwerkelijk plaatsvindt, niet alleen waar training plaatsvindt.</p>
<p>Realistische opties, ruwweg in volgorde van hoeveel controle ze geven:</p>
<ul>
<li><strong>Volledig on-premise</strong>, op hardware die je eigen IT-afdeling beheert — de meeste controle, de meeste initiële investering, en de juiste keuze wanneer gegevensgevoeligheid (medische, opsporings- of geclassificeerde data) al het andere een non-starter maakt.</li>
<li><strong>Een vertrouwde lokale of nationale cloud</strong> — een door de overheid gerunde <em>community cloud</em> (steeds gebruikelijker in de hele EU, precies het soort infrastructuursoevereiniteits-investering behandeld in het <a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">eerdere soevereiniteitsartikel</a>), of een regionale/EU-gebaseerde soevereine cloudaanbieder die gebonden is aan binnenlandse gegevensbeschermingswetgeving in plaats van buitenlandse jurisdictie.</li>
<li><strong>De private cloud van je eigen IT-afdeling</strong>, als je organisatie er al een beheert — vaak de pragmatische middenweg voor bedrijven die geen fysieke hardware willen beheren maar wel contractuele en jurisdictionele controle nodig hebben over waar data woont en wie er toegang toe heeft.</li>
</ul>
<p>De capaciteitsvraag doet er ook toe: een <em>fine-tuning</em>-werklast heeft aanzienlijk meer rekenkracht nodig dan een puur inferentie-implementatie. Als je het compressiepad volgt dat in een latere stap wordt beschreven, kan een gespecialiseerd, gedistilleerd, gekwantiseerd model vaak comfortabel draaien op een enkele consument- of mid-range enterprise GPU voor inferentie — wat precies on-premise of kleinschalige soevereine cloud-implementatie realistisch maakt in plaats van aspirationeel.</p>
</section>
<section id="stap-2-verzamel-en-structureer-de-eigen-data-van-jouw-organisatie" class="level2">
<h2 class="anchored" data-anchor-id="stap-2-verzamel-en-structureer-de-eigen-data-van-jouw-organisatie">Stap 2: Verzamel en structureer de eigen data van jouw organisatie</h2>
<p>Dit is de stap waarvoor elke organisatie al het ruwe materiaal heeft, meestal zonder het te beseffen. Zoals behandeld in de eerdere artikelen over <a href="../blog/van-logboeken-naar-agent-trainingsdata.html">agrarische logboeken</a> en <a href="../blog/van-tekst-naar-agentische-workflows.html">tekst naar actie</a>, is het kernidee dat documentatie geschreven voor de volgende <em>mens</em> op het werk — procedures, casusbestanden, beleidshandboeken, historische beslissingen, uitzonderingslogboeken — precies het ruwe materiaal is dat nodig is om de volgende <em>agent</em> op het werk te trainen.</p>
<p>Concreet betekent dit voor de bovenstaande voorbeelden het verzamelen van: - <strong>Procedures en protocollen</strong>: procedures, beleidshandboeken, casusafhandelingsrichtlijnen — het equivalent van de teelthandleidingen van de boomgaard of de interne procedurehandleiding van een klantbeheerder. - <strong>Uitzonderingen en randgevallen</strong>: de rommelige, echte afwijkingen van de schone procedure — de situatie van een burger die niet past in de standaard geschiktheidscategorie, een klantklacht die niet overeenkomt met een FAQ-antwoord. - <strong>Regulatoire en juridische teksten</strong>: de daadwerkelijke wetgeving, regulering of nalevingskader waar het advies van de agent nooit mee in tegenspraak mag zijn — voor een publieke-sector-agent is dit niet-onderhandelbare grondwaarheid, geen optionele context. - <strong>Historische casusuitkomsten</strong>: eerdere beslissingen en hun rechtvaardigingen, idealiter vastgelegd als <strong>observatie-actie-resultaat</strong>-drieluiken — een situatie van een burger waargenomen, een beslissing genomen, een uitkomst geregistreerd — hetzelfde structurele patroon behandeld in zowel het <a href="../blog/van-logboeken-naar-agent-trainingsdata.html">agrarische</a> als het tekst-naar-actie-artikel.</p>
<p>Eenmaal verzameld, moet deze tekst worden omgezet van voor menselijk lezen gebouwde documenten naar een gestructureerd, machine-bruikbaar formaat — doorgaans JSON, procedures in workflow-<em>graphs</em> omzettend met expliciete stappen, voorwaarden en vertakkingen, precies zoals beschreven in het <a href="../blog/van-tekst-naar-agentische-workflows.html">eerdere artikel over het omzetten van tekst in agentische trainingsdata</a>.</p>
</section>
<section id="stap-3-extraheer-de-agentische-trainingsdata" class="level2">
<h2 class="anchored" data-anchor-id="stap-3-extraheer-de-agentische-trainingsdata">Stap 3: Extraheer de agentische trainingsdata</h2>
<p>Met gestructureerde data in handen is de volgende stap het extraheren van de specifieke trainingsartefacten die elk component van de architectuur nodig heeft:</p>
<ul>
<li><strong><em>RAG</em>-<em>chunks</em> en <em>reranker</em>-paren</strong>: semantisch samenhangende secties van wetgeving, beleid of procedure, ingebed voor <em>retrieval</em>, gekoppeld aan echte query-voorbeelden zodat een neurale <em>reranker</em> leert de <em>correcte</em> clausule te vinden, niet alleen een vergelijkbaar klinkende.</li>
<li><strong><em>Supervised fine-tuning</em> (SFT)-paren</strong>: instructie-respons-voorbeelden die het model de specifieke terminologie, toon en redeneerstijl van jouw organisatie leren — een vraag van een burger gecombineerd met het antwoord dat een goed getrainde klantbeheerder werkelijk zou geven.</li>
<li><strong><em>Preference data</em> (DPO)</strong>: gecombineerde voorbeelden waarbij één respons correct maar <em>niet geprefereerd</em> is — bijvoorbeeld een technisch accuraat antwoord dat nalaat de beroepsrecht van een burger te vermelden, versus één dat dat wel doet — waarmee de agent leert de voorkeur te geven aan de respons die voldoet aan de normen van jouw organisatie, niet alleen aan feitelijk correcte.</li>
<li><strong>Planning- en taakdecompositiedata</strong>: meerstapsprocessen (hoe een uitkeringsaanvraag werkelijk van intake naar beslissing beweegt) gecodeerd zodat de agent een breed doel kan opsplitsen in een geordende reeks subtaken met echte afhankelijkheden.</li>
<li><strong>Multi-hop-redeneerketens</strong>: het “waarom” achter een beslissing — een geschiktheidsconclusie teruggekoppeld via de specifieke regulering, de specifieke feiten van de casus en het specifieke eerdere precedent dat het rechtvaardigde.</li>
<li><strong><em>Guardrail</em>- en <em>critic</em>-trainingsdata</strong>: contrastieve paren van afgewezen en gecorrigeerde uitvoer, elk met een expliciete redenering (“afgewezen: schendt artikel 9 van Regulering X”), wat precies is wat een <em>critic</em>-agent traint om schendingen op te vangen in plaats van alleen spelling te controleren.</li>
</ul>
</section>
<section id="stap-4-fine-tune-de-componenten-niet-één-groot-model" class="level2">
<h2 class="anchored" data-anchor-id="stap-4-fine-tune-de-componenten-niet-één-groot-model">Stap 4: <em>Fine-tune</em> de componenten — niet één groot model</h2>
<p>De architectuur die uit deze data voortkomt is niet één enkel <em>fine-tuned</em> model — het zijn meerdere gespecialiseerde componenten die samenwerken, elk getraind op de hierboven geëxtraheerde data: een geheugenlaag (RAG plus <em>reranker</em>), een redeneer-/planningslaag, een <em>fine-tuned critic</em> die jouw specifieke normen handhaaft, en een set <em>guardrails</em>. Zoals aangetoond in het <a href="../blog/klein-gespecialiseerd-model-vs-frontier.html">eerdere artikel over een klein gespecialiseerd model versus een frontier-basismodel</a>, kan deze aanpak opmerkelijk dicht bij frontier-niveau prestaties komen <em>voor jouw specifieke taak</em>, precies omdat het kleine model niet wordt gevraagd goed te zijn in alles — alleen in het ene ding dat jouw organisatie daadwerkelijk nodig heeft.</p>
</section>
<section id="stap-5-implementeer-op-jouw-soevereine-infrastructuur" class="level2">
<h2 class="anchored" data-anchor-id="stap-5-implementeer-op-jouw-soevereine-infrastructuur">Stap 5: Implementeer op jouw soevereine infrastructuur</h2>
<p>Met de componenten getraind, betekent implementatie ze samenverbinden — doorgaans met behulp van een orkestratieraamwerk gebouwd voor cyclisch, meerstaps agentgedrag (LangGraph en CrewAI zijn gangbare keuzes) — en het hele systeem draaien op de in stap één gekozen infrastructuur. Het onderliggende basismodel (of het nu een groot commercieel model is dat alleen voor de zwaarste redeneerstappen wordt gebruikt, of een volledig lokaal open-gewicht model) wordt een vervangbaar, gestandaardiseerd component, precies zoals betoogd in het <a href="../blog/de-institutionele-slotgracht.html">eerdere artikel over de institutionele slotgracht</a> — de werkelijke waarde, en de werkelijke soevereiniteit, zit in de architectuur en data eromheen, niet in welk basismodel toevallig in het middelpunt staat.</p>
</section>
<section id="stap-6-optioneel-maar-aanbevolen-distilleer-prune-en-kwantiseer" class="level2">
<h2 class="anchored" data-anchor-id="stap-6-optioneel-maar-aanbevolen-distilleer-prune-en-kwantiseer">Stap 6 (optioneel maar aanbevolen): Distilleer, <em>prune</em> en kwantiseer</h2>
<p>Als energie-efficiëntie, op batterij draaiende implementatie of draaien op werkelijk bescheiden hardware belangrijk is, worden de <a href="../blog/pruning-quantization-distillation.html">compressietechnieken behandeld in een eerder artikel</a> hier direct relevant: de <em>fine-tuned</em> componenten destilleren naar kleinere studentmodellen, gewichten kwantiseren naar 8-bit of zelfs agressievere precisie (BitNet-stijl kwantisering aan het extreme einde), en onnodige verbindingen <em>prunen</em>. Naast de voor de hand liggende kosten- en energiebesparingen heeft deze stap een echte beveiligingsbijwerking, <a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">ook behandeld in dat artikel</a>: een gecomprimeerd model heeft de neiging een vloeiendere, minder exploiteerbare beslissingsgrens te hebben, waardoor bepaalde klassen van adversariale manipulatie aantoonbaar moeilijker worden.</p>
</section>
<section id="stap-7-valideer-op-vooringenomenheid-en-andere-faalwijzen" class="level2">
<h2 class="anchored" data-anchor-id="stap-7-valideer-op-vooringenomenheid-en-andere-faalwijzen">Stap 7: Valideer op vooringenomenheid en andere faalwijzen</h2>
<p>Deze stap is niet optioneel, en verdient even serieus te worden behandeld als de modelarchitectuur zelf — met name voor alles wat burgergericht of beslissingsaangrenzend is. Concreet betekent dit:</p>
<ul>
<li><strong>Eerlijkheids- en vooringenomenheidstests over demografische groepen.</strong> Voor een uitkeringsgeschiktheid- of beleidsimplementatieagent is dit een wettelijke vereiste in de meeste jurisdicties, niet alleen goede praktijk.</li>
<li><strong>Feitelijkheids- en hallucinatiecontroles</strong>, waarbij elke gegenereerde bewering wordt vergeleken met de opgehaalde waarheidsbron en alles wat niet ondersteund wordt gemarkeerd.</li>
<li><strong>Adversariale robuustheidstests</strong>, de <a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">aanvalspatronen volgend behandeld in een eerder artikel</a> — het systeem bewust testen met randgevallen, ambigue formuleringen en adversariaal samengestelde invoer.</li>
<li><strong>Menselijke audit-steekproeven.</strong> Geen validatiesuite vangt alles op; voortdurende, gerandomiseerde menselijke beoordeling van een percentage van de daadwerkelijke beslissingen van de agent blijft noodzakelijk, precies om het “het model had 49 keer gelijk, controleert iemand nog de 50ste” gemakzuchtrisico op te vangen dat behandeld is in het <a href="../blog/het-autonome-bedrijf-besturen.html">eerdere artikel over governance</a>.</li>
</ul>
</section>
<section id="stap-8-test-op-ethische-en-morele-vereisten" class="level2">
<h2 class="anchored" data-anchor-id="stap-8-test-op-ethische-en-morele-vereisten">Stap 8: Test op ethische en morele vereisten</h2>
<p>De laatste stap, en degene die publieke-sectorimplementaties zich het minst kunnen veroorloven over te slaan, is het systeem houden aan een expliciete ethische en juridische standaard in plaats van een impliciete:</p>
<ul>
<li><strong>Schrijf een expliciete grondwet.</strong> Zoals behandeld in het <a href="../blog/de-institutionele-slotgracht.html">eerdere artikel over de institutionele slotgracht</a>, betekent dit een gedocumenteerde set onveranderlijke principes — “weiger nooit een uitkering zonder de specifieke regulering te citeren en een beroepspad aan te bieden,” “neem nooit een definitieve beslissing over X zonder menselijke goedkeuring.”</li>
<li><strong>Bouw het vierfasen-governance-raamwerk in</strong> behandeld in het <a href="../blog/het-autonome-bedrijf-besturen.html">eerdere governance-artikel</a>: gevalideerde training, getoetste robuustheid, een reflectiemechanisme dat de eigen fouten van het systeem opvangt, en echte uitlegbaarheid.</li>
<li><strong>Garandeer een menselijk beroepspad.</strong> Voor elk publiek-sector- of juridisch consequent gebruik moet de agent de menselijke beslismaker van record ondersteunen, nooit vervangen.</li>
<li><strong>Wees transparant met de eindgebruiker.</strong> Een burger of klant die met het systeem interageert, moet weten dat ze met een AI-agent praten, begrijpen wat die wel en niet kan beslissen, en precies weten hoe ze een mens kunnen bereiken wanneer ze die nodig hebben.</li>
</ul>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>Geen van deze acht stappen is optioneel als het doel werkelijke soevereiniteit is in plaats van een dunne wrapper rondom iemand anders’ model. Maar geen ervan vereist ook het budget van een nationale overheid — dezelfde technieken behandeld in de eerdere artikelen van deze site over <a href="../blog/van-logboeken-naar-agent-trainingsdata.html">landbouw</a>, <a href="../blog/de-institutionele-slotgracht.html">institutionele strategie</a>, <a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">soevereiniteit</a> en <a href="../blog/pruning-quantization-distillation.html">modelcompressie</a> zijn direct toepasbaar, of de organisatie die de agent bouwt nu een kersenoogstcoöperatie is, een ziekenhuis, een bedrijfsjuridische afdeling of een gemeentelijk uitkeringskantoor. De rode draad in elke werkelijk soevereine implementatie is dezelfde: jouw eigen data, jouw eigen infrastructuur, jouw eigen expliciete normen voor wat het systeem wel en niet mag beslissen — met het basismodel teruggebracht tot precies wat het zou moeten zijn: een vervangbaar component in het midden van een architectuur die jouw organisatie werkelijk bezit.</p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Wang et al.&nbsp;(2023), <em>A Survey on Large Language Model Based Autonomous Agents</em> — <a href="https://arxiv.org/abs/2308.11432">arXiv:2308.11432</a></li>
<li>Lewis et al.&nbsp;(2020), <em>Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks</em> — <a href="https://arxiv.org/abs/2005.11401">arXiv:2005.11401</a></li>
<li>European Commission (2024), <em>EU Artificial Intelligence Act</em> — <a href="https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32024R1689">eur-lex.europa.eu</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/wat-is-een-ai-agent.html">Wat is een AI-agent?</a> — de zeven componenten die deze achtstapdsgids assembleert</li>
<li><a href="../blog/van-tekst-naar-agentische-workflows.html">Van tekst naar actie</a> — de diepgaande behandeling van stappen 2 en 3</li>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — waarom de architectuur er meer toe doet dan het model</li>
<li><a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">Waarom Europa eigen AI-modellen nodig heeft</a> — de geopolitieke case voor stap 1</li>
<li><a href="../blog/het-autonome-bedrijf-besturen.html">Het autonome bedrijf besturen</a> — het governance-raamwerk achter stappen 7 en 8</li>
<li><a href="../blog/bias-analyse-in-de-praktijk.html">Bias-analyse in de praktijk</a> — de stapsgewijze technische gids voor de bias-analyse vereist in stap 7</li>
<li><a href="../blog/klein-gespecialiseerd-model-vs-frontier.html">David tegen Goliath: klein model versus frontier</a> — het bewijs achter stap 4</li>
</ul>


</section>

 ]]></description>
  <category>soevereiniteit-edge</category>
  <category>enterprise-strategie</category>
  <guid>https://trajectorium.ai/nl/blog/een-soevereine-ai-agent-bouwen.html</guid>
  <pubDate>Sat, 12 Dec 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>De gigant inkrimpen: hoe pruning, quantization en distillation LLM’s klein, goedkoop en veiliger maken</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/pruning-quantization-distillation.html</link>
  <description><![CDATA[ 




<p>Het trainen van GPT-2 kostte naar schatting 100-200 duizend dollar aan rekenkracht. GPT-3 sprong naar ergens in de 1-10 miljoen range. GPT-4-klasse trainingsruns worden geschat op 10-100 miljoen. Een custom GPT-4-klasse model kost vandaag naar schatting 2-3 miljoen dollar alleen al voor de trainingsrekenkracht — en dat is voordat je het ergens hebt geïmplementeerd, laat staan ergens met een batterij. Als je bouwt voor een geïmplanteerd medisch apparaat, een smartwatch, of elk systeem waarbij stroombudget een harde beperking is (zoals één college hierover het bot formuleert: “the US Army runs on batteries”), is dat formaat model simpelweg het verkeerde gereedschap. Dit artikel behandelt de drie hoofdtechnieken — <em>pruning</em>, <em>quantization</em> en <em>knowledge distillation</em> — die je in staat stellen een grote, duur getraind model te comprimeren tot iets dat draait op hardware die je werkelijk bezit, met slechts een klein, meestal acceptabel capaciteitsverlies. En, als bonus die de meeste mensen niet verwachten, maken diezelfde technieken een model aantoonbaar moeilijker aanvalbaar.</p>
<section id="waarom-dit-verder-gaat-dan-kosten" class="level2">
<h2 class="anchored" data-anchor-id="waarom-dit-verder-gaat-dan-kosten">Waarom dit verder gaat dan kosten</h2>
<p>Drie afzonderlijke motivaties convergeren op dezelfde set technieken:</p>
<ol type="1">
<li><strong>Energie en batterijduur.</strong> On-device en edge-implementatie — geïmplanteerde medische apparaten, mobiele telefoons, militaire hardware — kan simpelweg geen full-size frontiermodel draaien. Elke watt telt.</li>
<li><strong>Lokale, soevereine implementatie.</strong> Zoals <a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">eerder op deze site behandeld</a>, kan een gespecialiseerd model <em>fine-tuned</em> op jouw eigen data en draaiend op jouw eigen hardware opmerkelijk dicht bij frontier-modelprestaties komen <em>voor een specifieke taak</em> — maar alleen als dat gespecialiseerde model daadwerkelijk klein genoeg is om lokaal te draaien tegen redelijke kosten. Compressie is wat dat “David versus Goliath”-verhaal fysiek mogelijk maakt.</li>
<li><strong>Beveiliging.</strong> Enigszins contra-intuïtief kan een kleiner, gedistilleerd of gepruned model <em>robuuster</em> zijn voor bepaalde aanvallen, omdat compressie precies het soort redundante, ongebruikte verbindingen verwijdert die <em>adversarial attacks</em> de neiging hebben te benutten.</li>
</ol>
<p>Laten we de drie hoofdtechnieken één voor één doorlopen.</p>
</section>
<section id="knowledge-distillation-een-klein-model-leren-een-groot-te-imiteren" class="level2">
<h2 class="anchored" data-anchor-id="knowledge-distillation-een-klein-model-leren-een-groot-te-imiteren">1. Knowledge distillation: een klein model leren een groot te imiteren</h2>
<p><em>Knowledge distillation</em> comprimeert en draagt wat een groot, duur “teacher”-model heeft geleerd over naar een kleiner “student”-model, terwijl het probeert zoveel mogelijk van de competentie van de teacher te bewaren. Het canonieke voorbeeld is <strong>DistilBERT</strong> (Sanh, Debut, Chaumond &amp; Wolf, 2019): door BERT-base te destilleren tijdens pre-training reduceerden de auteurs de modelomvang met <strong>40%</strong>, lieten het <strong>60% sneller</strong> draaien, terwijl ze <strong>97%</strong> van BERT’s taalbegripprestaties op de GLUE-<em>benchmark</em> behielden.</p>
<p>De trainingsmechanica is het begrijpen waard, omdat die verklaart waarom dit zo goed werkt. In plaats van de student puur te trainen om het correcte label te voorspellen, traint <em>distillation</em> het op een <strong>gecombineerd verlies</strong>:</p>
<pre><code>total loss = (alpha * student loss) + ((1 - alpha) * distillation loss)</code></pre>
<p>Het <em>distillation loss</em> wordt berekend met <strong>KL-divergentie</strong> tussen de <em>softmax</em>-uitvoer van de teacher en de student — maar cruciaal, met een verzachte temperatuur (t &gt; 1) zodat de uitvoer niet alleen harde 0/1-labels zijn maar “zachte labels” die het relatieve vertrouwen van de teacher over alle klassen dragen, niet alleen de winnende. Dat zachte signaal is waar de meeste nuttige informatie daadwerkelijk in zit: het vertelt de student niet alleen <em>wat</em> het juiste antwoord is, maar <em>hoe</em> de teacher de alternatieven weegt — een impliciet signaal dat een hard label alleen nooit kan dragen. DistilBERT combineert dit <em>distillation loss</em> specifiek met een <em>masked-language-modeling loss</em> en een cosinus-<em>embedding loss</em> (om de richting van de verborgen vectoren van teacher en student te aligneren), en initialiseert de student door elke andere laag direct van de teacher te nemen in plaats van helemaal opnieuw te beginnen.</p>
<p>Andere bekende voorbeelden in dezelfde familie zijn <strong>TinyBERT</strong>, dat <em>distillation</em> verder doorvoert voor nog kleinere <em>footprints</em>. Dit is een bijzonder actief onderzoeksgebied — zie de <em>Nature</em>-berichtgeving over lopend modelcompressiewerk voor een idee van hoe snel het veld zich nog steeds beweegt.</p>
</section>
<section id="quantization-minder-bits-bijna-hetzelfde-antwoord" class="level2">
<h2 class="anchored" data-anchor-id="quantization-minder-bits-bijna-hetzelfde-antwoord">2. Quantization: minder bits, bijna hetzelfde antwoord</h2>
<p>Een standaard neuraal netwerk slaat zijn gewichten op als 32-bit <em>floating point</em>-getallen. <em>Quantization</em> stelt een eenvoudige vraag: heb je werkelijk alle 32 bits nodig? Vaak niet. Gewichten weergeven met 8-bit integers in plaats van 32-bit <em>floats</em> geeft je een model met een <strong>kwart van de geheugenvoetafdruk</strong>, met <strong>vier keer snellere gegevensoverdracht</strong>, en berekeningen die ook dramatisch sneller zijn, met name voor integer-rekenkunde. Afhankelijk van de hardware kan dit alleen al snelheidswinsten opleveren in het bereik van <strong>25% tot 250%</strong>.</p>
<p>Er zijn twee hoofdvarianten:</p>
<ul>
<li><strong>Post-Training Quantization (PTQ)</strong> — neem een al getraind model en kwantiseer daarna de gewichten.</li>
<li><strong>Quantization-Aware Training (QAT)</strong> — train het model <em>terwijl de effecten van quantization worden gesimuleerd</em>, zodat het leert robuust te zijn voor de verminderde precisie vanaf het begin.</li>
</ul>
<p>Het meest opvallende recente voorbeeld van QAT tot zijn logische uiterste doorgevoerd is <strong>BitNet b1.58</strong> (een paper uit 2024), dat elk gewicht beperkt tot slechts <strong>drie mogelijke waarden: {-1, 0, 1}</strong> — technisch 1,58 bits per gewicht (omdat log₂(3) ≈ 1,585). Opmerkelijk genoeg behaalt dit vergelijkbare prestaties als een standaard LLaMA-model van equivalente omvang, terwijl het dramatisch minder energie verbruikt — het paper rapporteert ruwweg <strong>1/71,4 van het energieverbruik</strong> van het equivalente full-precision model, en het is efficiënt genoeg om op gewone CPU’s te draaien in plaats van gespecialiseerde <em>accelerator</em>-hardware te vereisen.</p>
<p>De voor de hand liggende uitdagingen zijn <em>quantization error</em> en numerieke overflow/underflow, wat precies de reden is waarom QAT bestaat — het model trainen om van het begin af aan goed te gedragen onder lage precisie, in plaats van te hopen dat een achteraf afrondingsstap niets belangrijks breekt.</p>
</section>
<section id="pruning-verwijderen-wat-het-model-niet-nodig-heeft" class="level2">
<h2 class="anchored" data-anchor-id="pruning-verwijderen-wat-het-model-niet-nodig-heeft">3. Pruning: verwijderen wat het model niet nodig heeft</h2>
<p>Waar <em>quantization</em> elk getal kleiner maakt, verwijdert <strong><em>pruning</em></strong> getallen volledig — nul-waarden (<em>sparsity</em>) introduceren in gewichtsmatrices zodat hele verbindingen, of in sommige gevallen hele neuronen, simpelweg ophouden te bestaan. Sparse matrices zijn goedkoper op te slaan en, op de juiste hardware, goedkoper mee te rekenen, omdat bewerkingen op nul-waardige gewichten vaak volledig kunnen worden overgeslagen.</p>
<p><em>Pruning</em> en <em>quantization</em> sluiten elkaar niet uit — een echte implementatie-<em>pipeline</em> combineert doorgaans meerdere van deze technieken tegelijk: destilleer een kleiner studentmodel, kwantiseer zijn gewichten, en <em>prune</em> onnodige verbindingen, vaak naast <strong>Low-Rank Adaptation (LoRA)</strong> voor efficiënte <em>fine-tuning</em> (en zijn gekwantiseerde neef, <strong>QLoRA</strong>), zodat het aanpassen van het gecomprimeerde model aan een specifiek domein ook goedkoop blijft.</p>
</section>
<section id="waarom-kleinere-modellen-meer-beveiligd-kunnen-zijn-niet-minder" class="level2">
<h2 class="anchored" data-anchor-id="waarom-kleinere-modellen-meer-beveiligd-kunnen-zijn-niet-minder">Waarom kleinere modellen <em>meer</em> beveiligd kunnen zijn, niet minder</h2>
<p>Hier is de verbinding die te zelden wordt gemaakt: compressie is niet alleen een kosten-en-energie-verhaal — het is ook een beveiligingsverhaal. <em>Adversarial attacks</em> op neurale netwerken benutten regelmatig <strong>ongebruikte of redundante capaciteit</strong>: verbindingen en parameters die niet zinvol bijdragen aan de werkelijke taak van het model, maar die een aanvaller kan manipuleren om een gerichte misclassificatie of ongewenste uitvoer te produceren terwijl de invoer normaal lijkt voor een mens.</p>
<p><em>Pruning</em> verwijdert precies dit soort speling. Als een verbinding is geëlimineerd omdat die niet bijdroeg aan echte taakprestaties, is die ook niet meer beschikbaar als aanvalsoppervlak — de beslissingsgrens van het model wordt gedwongen uitsluitend afhankelijk te zijn van de kenmerken die er werkelijk toe doen, in plaats van van incidentele correlaties die een aanvaller kan aanpassen. <em>Knowledge distillation</em> doet iets verwants: omdat het studentmodel is getraind om de <em>softened, gegeneraliseerde</em> beslissingsgrens van de teacher te reproduceren in plaats van de trainingsdata direct te memoriseren, heeft het de neiging een vloeier, minder exploiteerbaar responsoppervlak te erven. Dit specifieke idee heeft zijn eigen naam in de <em>adversarial robustness</em>-literatuur — <strong><em>defensive distillation</em></strong>, en een nauw verwante familie van technieken genaamd <strong><em>feature squeezing</em></strong>, die de vrijheidsgraden van de invoer reduceert op een manier die precies weerspiegelt wat <em>pruning</em> doet met de interne vrijheidsgraden van een model.</p>
<p>Dit betekent niet dat een gecomprimeerd model <em>immuun</em> is voor <em>adversarial attacks</em> — dat is het niet, en dedicated <em>adversarial training</em> blijft noodzakelijk bovenop compressie, niet in plaats daarvan. Maar het betekent wel dat het inkrimpen van een model om kosten- en energieredenen geen beveiligingsafruil is die je gedwongen bent te accepteren. Goed gedaan, kan het de andere kant op bewegen.</p>
<p>Voor een volledige behandeling van hoe <em>adversarial attacks</em> op afbeeldingen en tekst er daadwerkelijk uitzien — en de concrete verdedigingen, buiten compressie, die elk type adresseren — zie het eerder gepubliceerde artikel in deze reeks: <a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">Adversariale aanvallen: hoe een paar onzichtbare pixels of één omgewisseld woord een AI kan misleiden</a>.</p>
</section>
<section id="alles-samen" class="level2">
<h2 class="anchored" data-anchor-id="alles-samen">Alles samen</h2>
<p><em>Distillation</em>, <em>quantization</em> en <em>pruning</em> worden gewoonlijk gepresenteerd als afzonderlijke kostenoptimalisatietrucs, maar ze delen een rode draad: elk vraagt het model meer te doen met minder — minder parameters, minder bits, minder verbindingen — terwijl het gedrag dat er werkelijk toe doet behouden blijft. Dat is precies het mechanisme achter het “klein gespecialiseerd model dat bijna een frontiermodel evenaart”-resultaat dat eerder op deze site werd behandeld: een model heeft niet de volledige capaciteit van een generalist nodig als het alleen maar één ding goed hoeft te doen, en compressie is het concrete engineeringpad dat “heeft de capaciteit niet nodig” omzet in “heeft de capaciteit niet, en draait op een laptop in plaats van een datacenter.” Lagere trainings- en inferentiekosten, echte on-device en edge-implementatie, en — als welkom neveneffect — een kleiner, moeilijker-te-benutten aanvalsoppervlak. Die combinatie is waarom dit een van de meest actieve onderzoeksgebieden in het vakgebied blijft.</p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Hinton et al.&nbsp;(2015), <em>Distilling the Knowledge in a Neural Network</em> — <a href="https://arxiv.org/abs/1503.02531">arXiv:1503.02531</a></li>
<li>Sanh et al.&nbsp;(2019), <em>DistilBERT, a Distilled Version of BERT</em> — <a href="https://arxiv.org/abs/1910.01108">arXiv:1910.01108</a></li>
<li>Ma et al.&nbsp;(2024), <em>The Era of 1-bit LLMs: All Large Language Models are in 1.58 Bits</em> (BitNet b1.58) — <a href="https://arxiv.org/abs/2402.17764">arXiv:2402.17764</a></li>
<li>Hu et al.&nbsp;(2022), <em>LoRA: Low-Rank Adaptation of Large Language Models</em> — <a href="https://arxiv.org/abs/2106.09685">arXiv:2106.09685</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">Adversariale aanvallen: onzichtbare pixels en omgewisselde woorden</a> — de volledige behandeling van aanvalstypen en verdedigingen die compressie gedeeltelijk aanpakt</li>
<li><a href="../blog/xai-voor-fine-tuned-modellen.html">Waarom je een model niet kunt fine-tunen of destilleren zonder XAI</a> — waarom <em>distillation</em> specifiek uitlegbaarheid een vereiste maakt, niet een nice-to-have</li>
<li><a href="../blog/klein-gespecialiseerd-model-vs-frontier.html">David tegen Goliath: klein model versus frontier</a> — compressie en specialisatie samen: wat een klein, taakgericht model daadwerkelijk kan doen</li>
<li><a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">Waarom Europa eigen AI-modellen nodig heeft</a> — waarom edge- en on-device-implementatie er geopolitiek toe doet, niet alleen voor kosten</li>
<li><a href="../blog/waarom-nlp-eindelijk-werkt.html">Waarom NLP eindelijk werkt</a> — de <em>transformer</em>-architectuur waarvan de gewichten hier worden gecomprimeerd</li>
</ul>


</section>

 ]]></description>
  <category>fundamenten</category>
  <category>efficiëntie</category>
  <guid>https://trajectorium.ai/nl/blog/pruning-quantization-distillation.html</guid>
  <pubDate>Sat, 28 Nov 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Van de volgende boerenknecht naar de volgende AI-agent: generatiekennis omzetten in trainingsdata</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/van-logboeken-naar-agent-trainingsdata.html</link>
  <description><![CDATA[ 




<p>Ergens in een Nederlandse kersenoogst bevindt zich een logboek uit 2013. Een pagina leest, ruwweg: <em>8 april — koperbemesting oxychloride, een halve liter op 200 liter water, 7:30 ’s ochtends, ongeveer 7°C, wind uit het noordoosten, een lange koude lente met een maand wind en geen regen.</em> Wie die notitie schreef, schreef niet voor een machine. Ze schreven voor de volgende persoon die in die boomgaard zou staan — misschien zichzelf het jaar erna, misschien een opvolger nadat ze met pensioen gingen — zodat die persoon zou weten wat er was gedaan, wanneer, onder welke omstandigheden, en impliciet, waarom.</p>
<p>Dat is de stille verschuiving die benoemd verdient te worden: tekst die tientallen jaren werd geschreven om de <em>volgende mens</em> op het werk te trainen, kan nu de <em>volgende agent</em> op het werk trainen. Dit artikel loopt door hoe dat er in de praktijk uitziet, aan de hand van een echt project gebouwd rondom precies dit soort data.</p>
<section id="de-kennis-was-altijd-bedoeld-om-doorgegeven-te-worden" class="level2">
<h2 class="anchored" data-anchor-id="de-kennis-was-altijd-bedoeld-om-doorgegeven-te-worden">De kennis was altijd bedoeld om doorgegeven te worden</h2>
<p>De moderne landbouw — fruitteelt in het bijzonder — verliest iets wat niet gemakkelijk teruggewonnen kan worden: een verouderd personeelsbestand gaat met pensioen, en daarmee gaat tientallen jaren empirische kennis over microklimaten, plaagdruk en gewascycli verloren die nooit ergens anders was geformaliseerd dan in handgeschreven logboeken en mondelinge traditie. Die kennis was altijd bedoeld om over te dragen aan een opvolger. Het logboek was het overdrachtsm echanisme.</p>
<p>Tegelijkertijd staan boeren nu voor een genuanceerde afweging: toenemende druk richting biologische methoden en minder gebruik van chemicaliën, afgezet tegen de economische realiteit van het moeten beschermen van opbrengst en kwaliteit. Een general-purpose chatbot kan hier niet verantwoord helpen — een fout bestrijdingsmiddelenadvies kan gewasuitval, milieuschade of het verlies van biologische certificering betekenen, en generieke modellen getraind op het open internet hebben geen toegang tot wat er werkelijk gebeurde, en werkte, in <em>deze</em> boomgaard, onder <em>deze</em> omstandigheden.</p>
<p>De kennis die daadwerkelijk zou helpen bestaat al.&nbsp;Ze zit alleen in een vorm die gebouwd is voor een menselijke lezer, niet voor een machine.</p>
</section>
<section id="dezelfde-data-anders-gelezen" class="level2">
<h2 class="anchored" data-anchor-id="dezelfde-data-anders-gelezen">Dezelfde data, anders gelezen</h2>
<p>Hier is de herformulering die dit mogelijk maakt: elke invoer in een landbouwlogboek is al, structureel, een <strong>observatie → actie → gevolg</strong>-record. Bewolkt, geen wind, na de bloei (observatie) → ureum, borium, zink toegepast (actie) → maximale bladopname zonder verdamping (beoogd gevolg). Dat is geen toeval — het is hoe iemand een beslissing documenteert die hij wil dat een opvolger kan vertrouwen en herhalen. En een observatie-actie-gevolg-drieluik is, niet toevallig, precies de datastructuur waarop <em>reinforcement learning</em> is gebouwd: toestand, actie, beloning, volgende toestand. Het formaat dat een boer gebruikte om een menselijke leerling te onderwijzen, blijkt het formaat te zijn dat nodig is om een AI-agent te onderwijzen.</p>
<p>De praktische <em>pipeline</em> ziet er zo uit:</p>
<ol type="1">
<li><strong>Digitaliseren.</strong> <em>OCR</em> en multimodale modellen zetten handgeschreven pagina’s — datums, doseringen, weer, uitkomsten, allemaal in de eigen steno van een boer — om in machine-leesbare tekst.</li>
<li><strong>Structureren in JSON.</strong> Vrije-vorm, tabelmatige handschriften worden geserialiseerd in een consistent schema: datum, weersomstandigheden, toegepaste stof, hoeveelheid, timing en (waar geregistreerd) de uitkomst. Deze gestructureerde laag is waar elke downstream <em>training pipeline</em> op voortbouwt.</li>
<li><strong>Component-specifieke trainingsdata extraheren.</strong> Dit is het deel dat de moeite waard is om in detail door te lopen, omdat één logboekvermelding kan worden omgezet in verschillende soorten <em>training signal</em>, elk voedend aan een ander deel van een agentische architectuur:</li>
</ol>
</section>
<section id="één-logboekinvoer-vijf-verschillende-soorten-trainingsdata" class="level2">
<h2 class="anchored" data-anchor-id="één-logboekinvoer-vijf-verschillende-soorten-trainingsdata">Één logboekinvoer, vijf verschillende soorten trainingsdata</h2>
<p>Neem diezelfde aprilinvoer en zie wat het wordt voor elk component van een agent:</p>
<p><strong>Voor <em>retrieval</em> (RAG):</strong> de invoer wordt een semantisch gechunked feit dat de agent later kan opzoeken — “op deze boomgaard werd koperooxychloride op deze dosis toegepast onder deze specifieke weersomstandigheden” — <em>embedded</em> en opgeslagen zodat een toekomstige query het direct kan ophalen, met bronvermelding.</p>
<p><strong>Voor <em>reranking</em>:</strong> gecombineerd met de vraag die een boer in werkelijkheid zou stellen (“hoe behandel ik het risico op vruchtrot tijdens een natte koude lente”), wordt dezelfde invoer een query-antwoord-paar dat wordt gebruikt om een <em>reranker</em> te trainen om <em>deze</em> historische interventie te herkennen als de relevante, in plaats van een generiek vergelijkbaar maar fout resultaat — precies het “lost in the middle”-probleem oplossend waarbij een agent verdrinkt in twintig breed vergelijkbare opgehaalde passages en de ene mist die er werkelijk toe doet.</p>
<p><strong>Voor <em>instruction-following</em> (SFT):</strong> de ruwe invoer wordt herschreven als een gestructureerd instructie-respons-paar — <em>“Het is eind mei, lichte regen en de boomgaard loopt risico op vruchtrot. Wat is de historische interventie?”</em> → <em>“Historisch werd Signum (0,25 kg) gecombineerd met een bladmix toegepast om vruchtrot bij lichte regen te voorkomen.”</em> Dit is wat een model leert de terminologie, toon en redeneerst ijl van een echte agronoom aan te nemen in plaats van een generieke assistent.</p>
<p><strong>Voor <em>preference learning</em> (DPO):</strong> hetzelfde scenario, gecombineerd met een <em>afgewezen</em> alternatief — een zware chemische bespuiting die technisch zou werken maar de huidige biologische certificering schendt — leert het model dat niet elk feitelijk correct antwoord het <em>geprefereerde</em> is. Dit is waar een agent leert standaard naar de duurzame, conforme optie te gaan in plaats van naar wat het meest direct effectief lijkt.</p>
<p><strong>Voor planning en multi-hop-redenering:</strong> een meerweekse reeks uit het logboek — bloemrijpheid beoordelen, bijen bestellen, kasten op een specifieke datum plaatsen, kasten verwijderen voor het spuiten drie weken later — wordt een taakdecompositie-voorbeeld: hoe een enkel seizoensdoel (“bestuiving beheren”) uiteenvalt in een geordende reeks afhankelijke subtaken, elk met zijn eigen tijdsbeperking.</p>
<p>Één pagina handschrift, vijf verschillende downstream-capaciteiten — en niets ervan vereiste dat de oorspronkelijke boer ook maar aan AI dacht. Ze deden gewoon wat boeren altijd hebben gedaan: opschrijven wat er was gebeurd zodat iemand anders ervan kon leren.</p>
</section>
<section id="waarom-de-oudste-tekst-misschien-de-meest-waardevolle-is" class="level2">
<h2 class="anchored" data-anchor-id="waarom-de-oudste-tekst-misschien-de-meest-waardevolle-is">Waarom de oudste tekst misschien de meest waardevolle is</h2>
<p>Hier is een genuanceerd contra-intuïtief punt verborgen in deze aanpak: de meest nuttige historische documenten voor het bouwen van een <em>moderne, biologisch-gerichte</em> landbouwagent zijn misschien landbouwteksten uit <strong>1850 tot 1930</strong> — voordat synthetische pesticiden überhaupt bestonden. Deze archieven, gedigitaliseerd in collecties zoals Cornell’s Core Historical Literature of Agriculture en de National Agricultural Library van de USDA, beschrijven ecologisch plaagbeheer en bodembewerkingstechnieken die simpelweg vergeten werden nadat goedkope synthetische chemicaliën het grootste deel van de 20e eeuw overnamen. Nu de landbouw teruggaat naar biologische methoden, is die “verouderde” pre-chemische kennis plotseling weer direct relevant — en ze bestaat in precies dezelfde vorm als het persoonlijke logboek: tekst geschreven door één generatie beoefenaars voor het voordeel van de volgende, die toevallig een generatie of twee oversloeg voordat ze haar beoogde lezer vond.</p>
</section>
<section id="de-guardrails-moeten-van-dezelfde-plek-komen" class="level2">
<h2 class="anchored" data-anchor-id="de-guardrails-moeten-van-dezelfde-plek-komen">De <em>guardrails</em> moeten van dezelfde plek komen</h2>
<p>Niets hiervan werkt veilig zonder een even serieuze investering in wat <em>niet</em> te doen, en — passend — die data komt van dezelfde soort bron. Een “<em>critic agent</em>” die een conceptaanbeveling controleert, heeft concrete negatieve voorbeelden nodig: een logboekinvoer uit 2020 die een chemicalie noemt (zeg, Calypso) die toen legaal was maar nu beperkt is, gecombineerd met het gecorrigeerde, momenteel conforme alternatief, en — cruciaal — een vermelde redenering (“afgewezen: schendt EU Biologische Verordening 2018/848, artikel 9”). Die redenering is wat een <em>critic</em>-model leert niet alleen <em>dat</em> iets fout is, maar <em>waarom</em>, in een vorm waaruit het kan generaliseren. Historische logboeken en huidige wetgeving, kruiselings gerefereerd aan elkaar, worden het ruwe materiaal voor de veiligheidslaag net zo goed als voor de advieslaag.</p>
</section>
<section id="het-grotere-patroon" class="level2">
<h2 class="anchored" data-anchor-id="het-grotere-patroon">Het grotere patroon</h2>
<p>Stap terug van de boomgaard specifiek en het patroon generaliseert schoon, en het verbindt direct met iets wat eerder op deze site aan bod is gekomen: de interne handleidingen, standaard operationele procedures, incidentlogboeken en overdrachtsnota’s van elke organisatie werden altijd geschreven met een impliciete lezer in gedachten — de volgende persoon die het werk doet. Dat kader is stilletjes het hele punt geweest van werkplekdocumentatie zolang werkplekken bestaan. Wat er veranderd is, is wie die “volgende persoon” nu kan zijn. Dezelfde discipline die een goede logboekinvoer nuttig maakte voor een menselijke opvolger — concreet zijn over omstandigheden, acties en uitkomsten, in plaats van vaag — is precies wat het bruikbaar maakt als trainingsdata voor een agent. Goede documentatie ging nooit echt over naleving of registratie omwille van zichzelf. Het ging over het overdraagbaar maken van impliciete expertise. Het blijkt alleen dat de ontvanger niet langer menselijk hoeft te zijn.</p>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>Een logboekinvoer uit 2013, of een landbouwhandleiding uit 1890, werd nooit geschreven met een taalmodel in gedachten — en dat is precies waarom het zo goed werkt als trainingsdata. Het is eerlijk, concreet en verankerd in wat er werkelijk gebeurde, omdat het werd geschreven voor iemand die het zou moeten vertrouwen en herhalen. Die tekst omzetten in gestructureerde <em>retrieval</em>-data, <em>reranker</em>-paren, instructievoorbeelden, <em>preference pairs</em> en planningssjablonen is geen herinterpretatie van waar de kennis voor was — het is dezelfde overdracht van expertise van de ene beoefenaar naar de volgende, alleen met een nieuw soort opvolger aan het ontvangende einde.</p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Lewis et al.&nbsp;(2020), <em>Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks</em> — <a href="https://arxiv.org/abs/2005.11401">arXiv:2005.11401</a></li>
<li>Rafailov et al.&nbsp;(2023), <em>Direct Preference Optimization</em> — <a href="https://arxiv.org/abs/2305.18290">arXiv:2305.18290</a></li>
<li>Yao et al.&nbsp;(2022), <em>ReAct: Synergizing Reasoning and Acting in Language Models</em> — <a href="https://arxiv.org/abs/2210.03629">arXiv:2210.03629</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/van-tekst-naar-agentische-workflows.html">Van tekst naar actie</a> — de algemene <em>pipeline</em> waarvan dit agrarische voorbeeld een instantie is</li>
<li><a href="../blog/wat-is-een-ai-agent.html">Wat is een AI-agent?</a> — wat de getrainde agent waarvoor deze data bedoeld is eigenlijk is</li>
<li><a href="../blog/klein-gespecialiseerd-model-vs-frontier.html">David tegen Goliath: klein model versus frontier</a> — wat een domein-gespecialiseerd model gebouwd op dit soort data kan bereiken</li>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — waarom propriëtaire trainingsdata als deze het echte concurrentievoordeel is</li>
</ul>


</section>

 ]]></description>
  <category>tekst-naar-actie</category>
  <guid>https://trajectorium.ai/nl/blog/van-logboeken-naar-agent-trainingsdata.html</guid>
  <pubDate>Sat, 21 Nov 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Waarom NLP eindelijk werkt: wat transformers goed deden dat vijftig jaar grammatica’s, statistiek en RNN’s niet lukte</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/waarom-nlp-eindelijk-werkt.html</link>
  <description><![CDATA[ 




<p>Natural language processing is al ongeveer vijftig jaar “bijna klaar”. Elke generatie onderzoekers loste een echt probleem op en liep meteen tegen een nieuw aan. <em>Transformers</em> zijn de eerste architectuur die niet alleen het volgende probleem in de rij oplost — ze pakken eindelijk alle lagen van taal tegelijk aan, en leiden alles af uit blootstelling aan data in plaats van uit wat een mens opschrijft. Begrijpen waarom dat zo is, vereist dat je doorloopt wat er aan voorafging, want het contrast is het hele verhaal.</p>
<section id="het-probleem-dat-nooit-verdween-taal-volgt-regels-niet-netjes" class="level2">
<h2 class="anchored" data-anchor-id="het-probleem-dat-nooit-verdween-taal-volgt-regels-niet-netjes">Het probleem dat nooit verdween: taal volgt regels niet netjes</h2>
<p>Natuurlijke taal is op elk niveau ambigu. “Ik zag de man op de heuvel met een telescoop” heeft minstens vijf geldige lezingen, afhankelijk van wie de telescoop heeft en wie op de heuvel staat. Woorden als “lopen” dragen een dozijn gerelateerde betekenissen (<em>polysemy</em>); woorden als “bank” dragen twee volledig ongerelateerde (<em>homonymy</em>). Negatiebereik, pronomenresolutie, ironie, sarcasme, discoursstructuur — elk voegt een extra dimensie van ambiguïteit toe die moet worden opgelost met context, niet alleen met grammatica.</p>
<p>Onder dit alles ligt een nog moeilijker wiskundig feit: taal volgt de <em>Zipf’s Law</em>. Een klein aantal woorden en constructies komt extreem vaak voor, en dan is er een enorme, onvoorspelbare “lange staart” — idiomen, zeldzame vakterm, nieuwe formuleringen — die te zelden voorkomt om ooit volledig te worden opgesomd. Elk systeem gebouwd op een vaste set regels zal onvermijdelijk gevallen tegenkomen die de regels niet dekken, hoeveel regels je ook schrijft.</p>
<p>Dat ene feit — de lange staart is onoplosbaar met vaste regels — verklaart bijna de gehele vijftigjarige geschiedenis van het vakgebied.</p>
</section>
<section id="generatie-1-grammaticas-en-logica-het-regelgebaseerde-tijdperk" class="level2">
<h2 class="anchored" data-anchor-id="generatie-1-grammaticas-en-logica-het-regelgebaseerde-tijdperk">Generatie 1: Grammatica’s en logica (het regelgebaseerde tijdperk)</h2>
<p>De vroegste computationele aanpak van taal, teruggaand via Chomsky’s generatieve grammatica’s tot Aristoteles’ originele grammaticale categorieën, probeerde taal te formaliseren als een systeem van regels: woordsoortcategorieën, zinsstructuur, syntactische afleidingen. Dit geeft je precisie — een grammatica accepteert een zin of niet — maar het is fundamenteel kwetsbaar. Handgeschreven regels kunnen de lange staart niet omvatten, passen zich niet aan aan nieuwe woordenschat (een neologisme als “Zoomen” als werkwoord bestond gisteren niet en bestaat vandaag wel), en vereisen dat een taalkundige het systeem handmatig uitbreidt elke keer dat echte tekst het breekt.</p>
</section>
<section id="generatie-2-probabilistische-en-corpus-gebaseerde-modellen" class="level2">
<h2 class="anchored" data-anchor-id="generatie-2-probabilistische-en-corpus-gebaseerde-modellen">Generatie 2: Probabilistische en <em>corpus</em>-gebaseerde modellen</h2>
<p>De volgende generatie voegde kansen toe bovenop structuur: in plaats van een regel die wel of niet vuurt, ken je er een waarschijnlijkheid aan toe die geleerd is uit een <em>corpus</em> echte tekst. Dit was een echte stap vooruit — het liet systemen graceus omgaan met ambiguïteit in plaats van volledig te falen, en het leerde patronen direct uit geannoteerde data in plaats van ze handmatig te coderen. Maar probabilistische modellen werkten grotendeels nog steeds over vaste, ontworpen kenmerken (<em>n-grams</em>, handgebouwde lexicale bronnen zoals WordNet die synoniemen en hyponiemen met de hand coderen). Ze waren robuuster dan pure grammatica’s, maar ze leerden nog steeds niet de diepe structuur van taal — ze leerden statistieken <em>over</em> een structuur die iemand anders had gedefinieerd.</p>
</section>
<section id="generatie-3-neurale-netwerken-leren-sequentiële-afhankelijkheden-rnn-lstm" class="level2">
<h2 class="anchored" data-anchor-id="generatie-3-neurale-netwerken-leren-sequentiële-afhankelijkheden-rnn-lstm">Generatie 3: Neurale netwerken leren sequentiële afhankelijkheden (RNN, LSTM)</h2>
<p>Vroege kunstmatige neurale netwerken, en vervolgens recurrente neurale netwerken en LSTM’s, vertegenwoordigden een echte architectuursprong: in plaats van handgebouwde kenmerken leert het netwerk sequentiële afhankelijkheden direct uit data. Een RNN geeft een verborgen toestand door door een zin, wat betekent dat het in principe “wat er daarvoor was” kan gebruiken om “wat er nu is” te interpreteren — precies het soort contextresolutie dat ambiguïteit vereist. LSTM’s, geïntroduceerd in 1997, voegden een <em>gated</em> geheugenmechanisme toe om het netwerk te helpen informatie te bewaren over langere afstanden (“Ik groeide op in Frankrijk … ik spreek vloeiend Frans” vereist het verbinden van woorden die ver uit elkaar staan).</p>
<p>Hier verscheen de muur opnieuw, en het was een serieuze. RNN’s en LSTM’s verwerken een zin strikt sequentieel — <em>token</em> voor <em>token</em>, elke stap afhankelijk van de uitvoer van de vorige. Dat heeft twee gevolgen die fataal bleken op schaal: training kan niet worden geparalleliseerd (je kunt stap 10 niet berekenen voordat stap 9 klaar is), en de sequentiële keten van vermenigvuldigingen zorgt ervoor dat <em>gradients</em> vervagen of exploderen naarmate zinnen langer worden, waardoor het moeilijk is echte langeafstandsafhankelijkheden te leren, hoe slim het <em>gating</em>-mechanisme ook is. Bovendien moest de volledige betekenis van een invoerreeks worden gecomprimeerd in één enkel definitief verborgen-toestandsvector — vaak slechts een handvol dimensies — voordat die werd doorgegeven aan een decoder. Te veel relaties, te kleine <em>bottleneck</em>.</p>
<p>Halverwege de jaren 2010 had het vakgebied een echte diagnose: RNN’s en LSTM’s waren datahongerig, onstabiel, computationeel duur om te trainen, en structureel niet in staat parallel te draaien. Er was ruimte — eigenlijk een echte behoefte — aan iets fundamenteel anders.</p>
</section>
<section id="generatie-4-transformers-de-bottleneck-en-de-sequentiële-beperking-tegelijk-oplossen" class="level2">
<h2 class="anchored" data-anchor-id="generatie-4-transformers-de-bottleneck-en-de-sequentiële-beperking-tegelijk-oplossen">Generatie 4: <em>Transformers</em> — de <em>bottleneck</em> en de sequentiële beperking tegelijk oplossen</h2>
<p>Het paper “Attention Is All You Need” uit 2017 verving terugkoppeling volledig door <strong><em>self-attention</em></strong>: in plaats van informatie stap voor stap door een keten te sturen, wordt elk <em>token</em> in een reeks direct vergeleken met elk ander <em>token</em>, allemaal tegelijk, via matrixvermenigvuldiging. Die ene verandering lost beide RNN/LSTM-problemen tegelijkertijd op. Omdat er geen sequentiële afhankelijkheid tussen <em>tokens</em> is tijdens training, paralleliseert de volledige berekening — en matrixvermenigvuldiging is toevallig precies wat moderne GPU- en TPU-hardware met enorme snelheid uitvoert. En omdat <em>attention</em> direct wordt berekend tussen elk paar <em>tokens</em>, is er geen enkele <em>bottleneck</em>-vector meer die de betekenis van een volledige zin probeert vast te houden; het model kan direct naar elk eerder of later <em>token</em> kijken wanneer dat nodig is.</p>
<p>Maar het interessantere deel, voor iedereen die geeft om <em>waarom</em> dit specifiek voor taal werkt, is wat er gebeurt als je meerdere lagen <em>self-attention</em> op elkaar stapelt. Elke laag neemt de uitvoer van de laag ervoor en verfijnt die verder — en empirisch specialiseren de lagen zich in iets dat opvallend lijkt op de klassieke linguïstische <em>pipeline</em> die computationele taalkundigen al decennia handmatig aan het bouwen waren: de lagere lagen pikken relatief duidelijke relaties op zoals interpunctie en morfologie, de middelste lagen beginnen syntaxis en basale semantische relaties te vangen, en de bovenste lagen behandelen de echt moeilijke dingen — pronomen en co-referenties oplossen, langeafstandslogische relaties bijhouden, het soort discoursstructuur waarvoor vroeger speciale handgebouwde modules nodig waren.</p>
<p>Dit is het punt om bij stil te staan: de klassieke NLP-<em>pipeline</em> — <em>tokenization</em>, morfologie, syntaxis, semantiek, discours — verdwijnt niet in een <em>transformer</em>. Hij <strong>herrijst automatisch</strong>, laag voor laag, puur als gevolg van training op genoeg tekst, zonder dat iemand ook maar één grammaticaregel handmatig heeft gecodeerd. Vijftig jaar taalkunde probeerde die <em>pipeline</em> expliciet te specificeren, laag voor laag. <em>Transformers</em> leiden dezelfde structuur impliciet af, uit data, en — cruciaal — ze lopen niet vast op de manier waarop elke vorige generatie dat deed bij de lange staart, omdat het model niet vertrouwt op één vaste regel; het bouwt een probabilistische representatie die flexibel genoeg is om te generaliseren naar invoer die het nooit eerder heeft gezien.</p>
</section>
<section id="geluk-of-wisten-ze-precies-wat-ze-deden" class="level2">
<h2 class="anchored" data-anchor-id="geluk-of-wisten-ze-precies-wat-ze-deden">Geluk, of wisten ze precies wat ze deden?</h2>
<p>Hier is een genuanceerde historische vraag die gesteld wordt over de acht auteurs van “Attention Is All You Need”: was deze doorbraak een gelukkig architectuurongeluk, of begrepen de mensen die het bouwden daadwerkelijk de taalkunde die ze codeerden?</p>
<p>Het eerlijke antwoord neigt naar het laatste. Verschillende auteurs van het paper hadden echte, substantiële achtergronden in computationele taalkunde in plaats van puur in machine learning — met name Jakob Uszkoreit, wiens vader, Hans Uszkoreit, een bekende computationele taalkundige is. Opgroeien in dat vakgebied is geen kleine biografische details; het is een plausibele reden dat de architectuur werd gebouwd met een intuïtie voor hoe betekenis werkelijk gelaagd is in taal — morfologie, dan syntaxis, dan semantiek, dan discours — in plaats van puur een engineeringoefening in het schalen van matrixvermenigvuldigingen. Het is een zeldzaam geval waarbij de vraag “toeval versus bewust plan” geen voor de hand liggend antwoord heeft, en waarbij de bewust-plan-interpretatie werkelijk goed wordt ondersteund door wie er in de kamer was.</p>
</section>
<section id="waarom-eindelijk-werkt-de-juiste-formulering-is" class="level2">
<h2 class="anchored" data-anchor-id="waarom-eindelijk-werkt-de-juiste-formulering-is">Waarom “eindelijk werkt” de juiste formulering is</h2>
<p>Zet de volledige geschiedenis naast elkaar en het patroon is onmiskenbaar. Grammatica’s gaven precisie maar geen robuustheid voor de lange staart. Statistische modellen gaven robuustheid maar waren nog steeds gebouwd op vaste, handontworpen kenmerken. RNN’s en LSTM’s leerden eindelijk sequentiële structuur direct uit data, maar konden niet schalen — sequentiële verwerking begrenste zowel de trainingssnelheid als hoe ver terug ze daadwerkelijk konden “onthouden.” <em>Transformers</em> zijn de eerste architectuur die echte datagedreven lering van taalkundige structuur <em>op elk niveau</em> combineert — van morfologie tot discours — met een berekening die voldoende paralleliseert om te worden getraind op een schaal die geen eerdere architectuur kon bereiken. Die combinatie — niet één enkele truc — is waarom, na vijftig jaar van gedeeltelijke oplossingen, natural language processing eindelijk werkt.</p>
<p><em>Cursusmateriaal waarnaar wordt verwezen: Advanced NLP-collegereeks, Department of Advanced Computing Sciences.</em></p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Vaswani et al.&nbsp;(2017), <em>Attention Is All You Need</em> — <a href="https://arxiv.org/abs/1706.03762">arXiv:1706.03762</a></li>
<li>Hochreiter &amp; Schmidhuber (1997), <em>Long Short-Term Memory</em> — <a href="https://doi.org/10.1162/neco.1997.9.8.1735">Neural Computation</a></li>
<li>Devlin et al.&nbsp;(2018), <em>BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding</em> — <a href="https://arxiv.org/abs/1810.04805">arXiv:1810.04805</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/wat-is-een-ai-agent.html">Wat is een AI-agent?</a> — het op <em>transformers</em> gebaseerde taalmodel als de ontbrekende motor die agentische systemen laat werken</li>
<li><a href="../blog/klein-gespecialiseerd-model-vs-frontier.html">David tegen Goliath: klein model versus frontier</a> — wat er gebeurt als je een van deze architecturen specialiseert op één taak</li>
<li><a href="../blog/pruning-quantization-distillation.html">De gigant inkrimpen: <em>pruning</em>, <em>quantization</em> en <em>distillation</em></a> — hoe je comprimeert wat <em>transformers</em> hebben geleerd tot iets dat op bescheiden hardware draait</li>
<li><a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">Adversariale aanvallen: onzichtbare pixels en omgewisselde woorden</a> — de beveiligingskwetsbaarheden die voortkomen uit hoe deze modellen hun beslissingsgrenzen trekken</li>
</ul>


</section>

 ]]></description>
  <category>fundamenten</category>
  <guid>https://trajectorium.ai/nl/blog/waarom-nlp-eindelijk-werkt.html</guid>
  <pubDate>Sat, 07 Nov 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>David tegen Goliath: een fine-tuned 8B-model evenaart bijna een triljoen-parameter-gigant — op één taak</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/klein-gespecialiseerd-model-vs-frontier.html</link>
  <description><![CDATA[ 




<p>Hier is een getal om even bij stil te staan: een <em>fine-tuned</em> 8-miljard-parameter-model, klein genoeg om op een enkele consument-GPU te draaien, behaalde onlangs een resultaat binnen <strong>1,2 procentpunt</strong> van een frontier-basismodel op stap-validiteit, en binnen <strong>6,1 punten</strong> op taakvoltooiing — op een werkelijk moeilijke taak: het betrouwbaar van begin tot einde volgen van complexe, vertakkende procedures (denk aan standaard operationele procedures, reparatiehandleidingen, meerstaps-bedrijfsworkflows). Het basismodel waarmee het werd vergeleken, heeft een geschatte omvang van <strong>625 keer groter</strong>. Dit artikel loopt door wat er werkelijk werd gebouwd, wat de cijfers laten zien, en — het meest belangrijk — waarom dit resultaat geen toeval is. Het is een direct gevolg van wat specialisatie oplevert.</p>
<section id="het-probleem-ai-agents-zijn-slecht-in-het-volgen-van-instructies" class="level2">
<h2 class="anchored" data-anchor-id="het-probleem-ai-agents-zijn-slecht-in-het-volgen-van-instructies">Het probleem: AI-agents zijn slecht in het volgen van instructies</h2>
<p>Het is verleidelijk aan te nemen dat als een taalmodel een essay kan schrijven of code kan debuggen, het vanzelfsprekend een standaard operationele procedure van een bedrijf kan volgen. Recent benchmarkonderzoek zegt iets anders. Een onderzoek uit 2025 waarbij AI-agents werden ingezet om echte bedrijfsprocedures uit te voeren, vond dat het <em>beste</em> frontier-model slechts een <strong>succespercentage van 30,3%</strong> behaalde, terwijl open-source modellen onder de 8% vielen. Afzonderlijk werk dat frontier-modellen testte op meerstapsredenering in een klinische dossiercontext vond nauwkeurigheden <strong>onder de 11%</strong>. De rode draad: ongestructureerde proceduretekst — vol voorwaardelijke vertakkingen, lussen en ambigue formuleringen (“als de naam al in de database staat… start anders een registratieproces en voer stappen 1 tot 10 uit”) — is precies waar general-purpose modellen struikelen, omdat ze redeneren over vrije tekst in plaats van een gestructureerd begrip van waar ze zich in een proces bevinden en wat er daadwerkelijk nog geldig is om vervolgens te doen.</p>
</section>
<section id="de-aanpak-handleidingen-omzetten-in-trainingssignaal-niet-alleen-in-context" class="level2">
<h2 class="anchored" data-anchor-id="de-aanpak-handleidingen-omzetten-in-trainingssignaal-niet-alleen-in-context">De aanpak: handleidingen omzetten in trainingssignaal, niet alleen in context</h2>
<p>Het kernidee is te stoppen met het behandelen van een procedure als tekst om over te redeneren tijdens inferentie, en het in plaats daarvan te behandelen als een bron van <em>gestructureerde, stap-niveau trainingsdata</em> waarvan het model werkelijk kan leren. De pipeline loopt in vijf fasen:</p>
<ol type="1">
<li><strong>Extraheer de workflow als een <em>graph</em>.</strong> Een op LLM gebaseerde extractielus leest een proceduredocument en herstelt het als een gerichte <em>graph</em> — acties, beslissingspoorten, vertakkingsvoorwaarden — met een zelfcontrolerende verfijningslus (een structurele checker die verifieert dat elk knooppunt bereikbaar is en een pad van begin tot eind bestaat, plus een semantische checker die de geëxtraheerde <em>graph</em> vergelijkt met de originele tekst op gemiste stappen).</li>
<li><strong>Zet de <em>graph</em> om in een begrip van voortgang.</strong> Elk geldig pad door de <em>graph</em>, deterministisch opgesomd (via breedte- en diepte-eerst-zoeken), wordt een reeks toestanden: wat tot nu toe is gedaan, welke voorwaarden golden, en wat er vervolgens geldig beschikbaar is.</li>
<li><strong>Genereer zowel positieve als bijna-fout trainingssignalen.</strong> Naast de correcte volgende actie in elke toestand genereert de pipeline bewust <em>verkeerde</em> volgende acties — een overgeslagen stap, twee stappen in de verkeerde volgorde uitgevoerd, een herhaalde actie, een verkeerd startpunt — elk gelabeld met precies waarom het fout is.</li>
<li><strong>Train een klein, gespecialiseerd model op deze data</strong> — een Process Reward Model dat kandidaat-volgende-acties beoordeelt gegeven de huidige toestand, als een LoRA-adapter bovenop een klein open-gewicht basismodel (Llama 3.1 8B).</li>
<li><strong>Implementeer een agent die het kleine getrainde model combineert met de geëxtraheerde <em>graph</em> zelf</strong> als een realtime filter: wanneer het model onzeker is, beperkt het zijn kandidaatacties tot alleen wat de <em>graph</em> zegt dat op dat punt daadwerkelijk geldig is — zonder extra trainingskosten.</li>
</ol>
</section>
<section id="de-resultaten-elke-laag-verdient-zijn-plek" class="level2">
<h2 class="anchored" data-anchor-id="de-resultaten-elke-laag-verdient-zijn-plek">De resultaten: elke laag verdient zijn plek</h2>
<p>De stapsgewijze verbetering is het duidelijkste bewijs dat dit niet één slimme truc is maar een werkelijk samengestelde architectuur:</p>
<ul>
<li><strong>Een kaal, onverankerd klein model</strong> verzint acties die niet in de procedure bestaan ongeveer <strong>35% van de tijd</strong>, voltooit slechts <strong>10,2%</strong> van de procedures van begin tot eind, en produceert geldige vervolgstappen slechts <strong>56%</strong> van de tijd.</li>
<li><strong>Het eenvoudigweg verankeren in de geëxtraheerde actielijst</strong> (zonder training vereist) tilt de voltooiing al op naar <strong>36,7%</strong> en geldige stappen naar <strong>81%</strong>, en — cruciaal — elimineert gehallusineerde acties volledig, omdat het model nu alleen kan kiezen uit wat daadwerkelijk bestaat.</li>
<li><strong>Het toevoegen van het getrainde Process Reward Model</strong>, gemengd met het eigen oordeel van het basismodel, duwt de voltooiing naar <strong>51%</strong> en geldige stappen naar <strong>87%</strong>.</li>
<li><strong>Het toevoegen van de <em>graph</em> als een live veiligheidsnet voor onzekere momenten</strong> brengt de voltooiing naar <strong>55,1%</strong> en geldige stappen naar <strong>88,7%</strong> — met bijna geen extra kosten, omdat de graaf al in stap één was geëxtraheerd.</li>
</ul>
<p>En de clou: vergeleken met een frontier-basismodel (ook voorzien van de geëxtraheerde actielijst, zodat het niet op achterstand staat) — scoorde het frontier-model <strong>89,9%</strong> op geldige stappen en <strong>61,2%</strong> op voltooiing, versus <strong>88,7%</strong> en <strong>55,1%</strong> van het kleine systeem. Een kloof van ongeveer één en zes punten, tegenover een model dat geschat wordt op <strong>625 keer groter</strong>.</p>
<p>Nog een bevinding die het vermelden waard is: toen de <em>trainingsdata zelf</em> werd <em>deduplicated</em> en herbalanceerd — het verkleinen van de dataset met 43%, maar het verwijderen van redundante, bijna-identieke voorbeelden en het corrigeren van een scheefheid naar “correcte” labels — presteerde het resulterende model <em>beter</em> op sommige configuraties dan het model dat was getraind op de grotere, rommeligere dataset. Kwaliteit versloeg volume, niet alleen voor de basisarchitectuur, maar ook voor de trainingsdata die deze voedde.</p>
</section>
<section id="waarom-dit-resultaat-volledig-logisch-is" class="level2">
<h2 class="anchored" data-anchor-id="waarom-dit-resultaat-volledig-logisch-is">Waarom dit resultaat volledig logisch is</h2>
<p>Het is verleidelijk een resultaat als dit te lezen als “kleine modellen zijn stiekem even goed als grote” — dat is niet de juiste les, en het loont de moeite precies te zijn over waarom.</p>
<p>Een frontier-basismodel is een generalist. Het moet tegelijkertijd goed zijn in poëzie schrijven, Rust debuggen, kwantummechanica uitleggen, Portugees vertalen, en — slechts als één van duizenden competenties — het volgen van de specifieke leninggoedkeuringsprocedure van een bedrijf. Zijn capaciteit is verspreid over een enorme ruimte van mogelijke taken waarvoor het gevraagd kan worden. Dat is precies waarom het in de eerste plaats een 5-triljoen-parameter-klasse systeem is: breedte is duur.</p>
<p>Een gespecialiseerd model dat specifiek is getraind op stap-niveau, toestandsbewuste procedurele data heeft niets van die breedte nodig. Het moet exact één engere vraag extreem goed beantwoorden: <em>gegeven waar we zijn in dit specifieke proces, wat is de geldige volgende stap?</em> Al zijn (verhoudingsgewijs kleine) capaciteit wordt besteed aan die ene competentie, versterkt door duizenden concrete voorbeelden van wat correct is en — net zo belangrijk — gelabelde voorbeelden van wat <em>bijna</em> correct is maar op een specifieke, benoemde manier fout. Een generalistisch model heeft nooit dat soort dichte, gestructureerde, negatieve-voorbeeld-rijke trainingssignaal gezien voor jouw specifieke procedures, omdat het niet publiekelijk bestaat — het moet worden gebouwd uit de eigen handleidingen van een organisatie.</p>
<p>Dit is dezelfde logica die opduikt wanneer een nauwe specialist concurreert met een generalist: een schaakengine die alleen schaakt, verslaat een menselijke generalist bij schaken, niet omdat het over het algemeen intelligenter is, maar omdat het geen capaciteit besteedt aan iets anders. De 625x parameterkloof verdwijnt niet — hij is gewoon grotendeels irrelevant voor deze specifieke, nauwe taak, omdat het kleine model nooit werd gevraagd goed te zijn in al het andere waarvoor het grote model ook goed moet zijn.</p>
</section>
<section id="waarom-dit-er-praktisch-toe-doet" class="level2">
<h2 class="anchored" data-anchor-id="waarom-dit-er-praktisch-toe-doet">Waarom dit er praktisch toe doet</h2>
<p>De praktische implicaties reiken verder dan de ruwe cijfers:</p>
<ul>
<li><strong>Het draait lokaal, op een enkele consumentenkwaliteit GPU</strong> — geen data verlaat het gebouw, wat direct van belang is voor het soort <a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">institutionele en datasoevereiniteitszorgen dat eerder op deze site is behandeld</a>.</li>
<li><strong>Er hoeft geen propriëtaire procedurele data naar een externe API-aanbieder te worden gestuurd</strong> om dit prestatieniveau te bereiken — de specialisatie vindt volledig plaats op infrastructuur die de organisatie beheert.</li>
<li><strong>De kosten- en energievoetafdruk dalen met ordes van grootte</strong> ten opzichte van het herhaaldelijk bevragen van een frontier-model, zonder dat er veel taakspecifieke prestaties verloren gaan die ertoe doen.</li>
<li><strong>Het knelpunt dat overblijft is extractiekwaliteit, niet modelomvang</strong> — wanneer de onderliggende workflow-<em>graph</em> perfect is (gouden standaard), voltooit hetzelfde kleine model 98% van de procedures met 99,6% geldige stappen. Het verschil met frontier-modelprestaties in echte implementatie komt bijna volledig van onvolmaakte automatische extractie van de workflow-<em>graph</em> uit rommelige brontekst, niet van de redenercapaciteit van het kleine model zelf.</li>
</ul>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>Een handvol procentpunten dat een 8-miljard-parameter specialist scheidt van een multi-triljoen-parameter generalist, op een taak die er werkelijk toe doet voor de operaties van een organisatie, is geen toeval en geen truc — het is het directe, voorspelbare resultaat van het ruilen van breedte voor diepte. Basismodellen zijn gebouwd om goed te zijn in bijna alles; een <em>fine-tuned</em> klein model gebouwd op de eigen procedurele data van een organisatie hoeft slechts goed te zijn in één ding. Wanneer dat ene ding eng genoeg is en de trainingsdata goed genoeg, houdt de omvangskloof op de doorslaggevende factor te zijn. Dat is het volledige argument voor het bouwen van je eigen gespecialiseerde agentische componenten bovenop een gestandaardiseerd basismodel, in plaats van de volledige capaciteit te huren van iemand anders’ veel grotere, veel duurdere, veel minder beheersbare systeem.</p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Hu et al.&nbsp;(2022), <em>LoRA: Low-Rank Adaptation of Large Language Models</em> — <a href="https://arxiv.org/abs/2106.09685">arXiv:2106.09685</a></li>
<li>Sanh et al.&nbsp;(2019), <em>DistilBERT, a Distilled Version of BERT</em> — <a href="https://arxiv.org/abs/1910.01108">arXiv:1910.01108</a></li>
<li>Ouyang et al.&nbsp;(2022), <em>Training Language Models to Follow Instructions with Human Feedback</em> — <a href="https://arxiv.org/abs/2203.02155">arXiv:2203.02155</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/van-tekst-naar-agentische-workflows.html">Van tekst naar actie</a> — hoe je de trainingsdata <em>pipeline</em> bouwt die zo’n model oplevert</li>
<li><a href="../blog/van-logboeken-naar-agent-trainingsdata.html">Van logboeken naar agent-trainingsdata</a> — een concreet domeinvoorbeeld van precies dit soort gespecialiseerd trainingssignaal</li>
<li><a href="../blog/pruning-quantization-distillation.html">De gigant inkrimpen: <em>pruning</em>, <em>quantization</em> en <em>distillation</em></a> — de complementaire compressietechnieken die kleine modellen nog kleiner en goedkoper maken</li>
<li><a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">Waarom Europa eigen AI-modellen nodig heeft</a> — waarom dit model lokaal draaien op soevereine infrastructuur ertoe doet</li>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — de strategische case voor specialiseren in plaats van huren</li>
</ul>


</section>

 ]]></description>
  <category>tekst-naar-actie</category>
  <guid>https://trajectorium.ai/nl/blog/klein-gespecialiseerd-model-vs-frontier.html</guid>
  <pubDate>Sat, 31 Oct 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Hoe AI het onderwijs zal revolutioneren — en waar het dat echt niet zou moeten doen</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/hoe-ai-het-onderwijs-zal-revolutioneren.html</link>
  <description><![CDATA[ 




<p>“Sinds 1985 vraag ik me af hoe we computers kunnen leren menselijke taal te gebruiken. En nu, na al die jaren, werkt het eindelijk.” Dat is een eerlijke samenvatting van waar het hoger onderwijs zich bevindt met generatieve AI — de technologie werkt eindelijk, en de moeilijkere vraag is verschoven naar hoe we die verantwoord in onderwijs en leren integreren. Dit artikel loopt door beide kanten eerlijk: wat werkelijk transformatief is, en waar dezelfde technologie problemen schept die het onderwijs nog niet volledig heeft opgelost.</p>
<section id="de-waarschuwing-van-kissinger-toegepast-op-het-klaslokaal" class="level2">
<h2 class="anchored" data-anchor-id="de-waarschuwing-van-kissinger-toegepast-op-het-klaslokaal">De waarschuwing van Kissinger, toegepast op het klaslokaal</h2>
<p>Voordat we bij de opwindende toepassingen komen, is het de moeite waard stil te staan bij een ongemakkelijke observatie van Henry Kissinger, schrijvend over AI en schaken: <em>“AI zal waarschijnlijk elk spel winnen dat het wordt gegeven. Maar voor ons als mensen gaan de spelen niet alleen over winnen; ze gaan over denken… Door een wiskundig proces te behandelen alsof het een denkproces is, en ofwel te proberen dat proces zelf na te bootsen ofwel de resultaten gewoon te accepteren, lopen we het risico de capaciteit te verliezen die de kern van menselijke cognitie is geweest.”</em></p>
<p>Vervang “spelen” door “opdrachten” en de waarschuwing geldt direct voor onderwijs. Het doel van onderwijs was nooit alleen het halen van examens — het is leren denken. Toch heeft beoordeling historisch gezien vaak geheugenwerk boven redeneren beloond. Nu modellen als GPT in seconden een verzorgd essay kunnen produceren, is die mismatch niet langer te negeren. AI kan het onderwijs revolutioneren door te fungeren als een schaalbare, gepersonaliseerde onderwijsassistent — maar alleen als instellingen herdenken hoe ze lesgeven en beoordelen, in plaats van AI te plakken op een beoordelingsmodel dat gebouwd is voor een pre-AI-wereld.</p>
</section>
<section id="wat-generatieve-ai-werkelijk-goed-doet-in-de-klas" class="level2">
<h2 class="anchored" data-anchor-id="wat-generatieve-ai-werkelijk-goed-doet-in-de-klas">Wat generatieve AI werkelijk goed doet in de klas</h2>
<p>Zet de risico’s even opzij — de concrete toepassingen zijn werkelijk overtuigend, en de meeste zijn al getest in echte cursussen.</p>
<p><strong>Sokratische dialogen, op aanvraag gegenereerd.</strong> De sokratische methode — doorvragende vragen die aannames uitdagen en redeneren stimuleren in plaats van antwoorden te geven — is precies het soort interactie dat AI op schaal kan produceren. Vraag een model vijf sokratische dialogen te genereren over een onderwerp (wat een aanpak krachtig maakt, waar het faalt, wat de maatschappelijke risico’s zijn) en je krijgt kant-en-klaar lesmateriaal dat de ruimte verschuift van lezing naar dialoog, in minuten in plaats van uren voorbereiding.</p>
<p><strong>Een onderwijsassistent die 24/7 werkt.</strong> Studenten lopen tegen conceptuele muren aan om 2 uur ’s nachts voor een tentamen, niet tijdens spreekuren. Een AI-tutor met oneindig geduld — bereid een moeilijk concept zo vaak en op zo veel verschillende manieren opnieuw uit te leggen als een student nodig heeft — vult een gat dat geen menselijk onderwijspersoneel realistisch kan dekken.</p>
<p><strong>Oefeningen, readers en lesmateriaal, op schaal gegenereerd.</strong> Een concreet voorbeeld: een volledige 240-pagina’s tellende reader — hoofdstukken, oefeningen, antwoorden en programmeeropdrachten — gegenereerd uit 1.300 collegeslides in een paar avonden, hoofdstuk voor hoofdstuk. Dat is geen marginale efficiëntiewinst; het is werk dat anders weken zou kosten, waardoor de tijd van een docent vrijkomt voor de onderdelen van onderwijs die daadwerkelijk een mens vereisen — diepere interactie, begeleiding, oordeelsvermogen over waar een specifieke student vastloopt.</p>
<p><strong>Gepersonaliseerde uitleg en adaptieve inhoud.</strong> Hetzelfde onderliggende materiaal kan op verschillende complexiteitsniveaus opnieuw worden uitgelegd, afhankelijk van wat een specifieke student nodig heeft — iets wat een enkelvoudige lezing, eenmalig gegeven aan een zaal van 200 mensen, structureel niet kan doen.</p>
<p><strong>Directe feedback op je eigen lessen.</strong> Docenten kunnen dezelfde tools gebruiken om hun eigen lesmateriaal te beoordelen en concrete feedback te krijgen over duidelijkheid en structuur — een tweede paar ogen altijd beschikbaar.</p>
<p><strong>Geautomatiseerde gespreksbeoordeling.</strong> Vroeg onderzoek (waaronder lopend werk bij de DACS-groep van de Universiteit Maastricht) verkent gesprekagenten die de rubric van een docent, het inhoudsdocument en een dialoog met de student combineren om beoordelingsaanbevelingen te produceren — niet om het oordeel van de docent te vervangen, maar om een proces dat momenteel handmatig en traag is te structureren en te versnellen.</p>
</section>
<section id="de-wapenwedloop-die-niemand-wilde" class="level2">
<h2 class="anchored" data-anchor-id="de-wapenwedloop-die-niemand-wilde">De wapenwedloop die niemand wilde</h2>
<p>Hier wordt het eerlijke beeld ingewikkelder. Op het moment dat AI goed genoeg werd om een acceptabel essay te schrijven, verscheen er een complete contra-industrie. Er bestaan nu tools specifiek om AI-gegenereerde tekst te “humaniseren” zodat het detectiesoftware omzeilt — en in een vreemde wending laten studenten die hun <em>eigen</em> originele werk schrijven het nu ook door diezelfde detectoren lopen, bezorgd dat hun authentieke schrijven als AI-gegenereerd wordt gemarkeerd. Docenten gebruiken AI-detectietools om AI-geschreven inzendingen te betrappen; studenten gebruiken humaniseringstools om die detectoren te omzeilen; sommige studenten laten hun eigen echte schrijven defensief door detectoren lopen. Iedereen schrijft nu deels voor de detector, niet voor de lezer.</p>
<p>Dit is niet volledig nieuw — “huiswerkm achines” bestaan al decennia voor ChatGPT, en elke generatie technologie heeft vergelijkbare paniek veroorzaakt (dezelfde angst werd twee decennia geleden geuit over Google: “Is Google ons dom aan het maken?”). Maar de vloeiendheid van generatieve AI maakt de kat-en-muisdynamiek scherper en sneller bewegend dan ooit tevoren, en het zorgt voor werkelijk ongelukkige studenten en gefrustreerde docenten aan beide kanten van de detectiewapenwedloop.</p>
</section>
<section id="waarom-de-onderliggende-technologie-nog-steeds-guardrails-nodig-heeft" class="level2">
<h2 class="anchored" data-anchor-id="waarom-de-onderliggende-technologie-nog-steeds-guardrails-nodig-heeft">Waarom de onderliggende technologie nog steeds guardrails nodig heeft</h2>
<p>Het is de moeite waard precies te zijn over wat deze modellen werkelijk doen — en niet doen — omdat dat zowel hun bruikbaarheid als hun faalwijzen in een onderwijsomgeving verklaart. Een model als GPT is fundamenteel een volgende-token-voorspeller: gegeven een reeks woorden schat het de waarschijnlijkheid van wat er vervolgens komt, tekst autoregressief genererend, één token tegelijk. Het heeft geen ingebouwde feitelijkheidscontrole, geen persistent geheugen over sessies heen tenzij expliciet ontworpen, en geen echte-wereldverankering voor de woorden die het produceert — kritieken vaak samengevat als “stochastische papegaai”: vloeiende taalproductie zonder werkelijk begrip.</p>
<p>Dat heeft directe onderwijsgevolgen: hoe langer de gegenereerde tekst, hoe groter de kans op feitelijke afwijking of regelrechte hallucinatie — een ernstig probleem wanneer de inhoud een formule, een citaat, een historische datum of een stuk code is dat een student zal vertrouwen. De mitigatietechnieken die hier van belang zijn voor een onderwijsomgeving zijn dezelfde als bij elke serieuze implementatie: retrieval-augmented generation om antwoorden te verankeren in het daadwerkelijke cursusmateriaal in plaats van de algemene trainingsdata van het model, kennisgraaf-gebaseerde context-injectie voor gestructureerde feiten, en simpelweg het systeem instrueren om “ik weet het niet” te zeggen in plaats van zelfverzekerd een antwoord te verzinnen wanneer het vertrouwen laag is. Niets hiervan is optionele afwerking — het is het verschil tussen een tutor die soms fout zit op een manier die studenten kunnen opmerken, en een die zelfverzekerd fout zit op een manier die ze niet kunnen.</p>
</section>
<section id="de-echte-herontwerpvraag" class="level2">
<h2 class="anchored" data-anchor-id="de-echte-herontwerpvraag">De echte herontwerpvraag</h2>
<p>De meest productieve formulering is niet “moeten we dit verbieden” of “moeten we dit kritiekloos omarmen” — het is “wat moet beoordeling worden nu dit bestaat.” Een paar concrete richtingen die serieus genomen verdienen te worden:</p>
<ul>
<li><strong>Herontwerp opdrachten rondom begrip, niet rondom uitvoer.</strong> Laat studenten GenAI gebruiken om hun eigen werk te bekritiseren en te verbeteren, en begrijpen <em>waarom</em> iets verbeterd kan worden — waardoor de AI een teamgenoot wordt in plaats van een snelkoppeling.</li>
<li><strong>Overweeg de klas om te draaien.</strong> Als het overbrengen van informatie een opgelost probleem is dat AI redelijk goed kan doen, kan lestijd verschuiven naar sokratische dialoog en toegepast redeneren — hoewel dit een echte verschuiving vereist in wat er van studenten wordt verwacht, niet alleen van docenten.</li>
<li><strong>Houd werkelijk AI-vrije beoordeling waar het ertoe doet.</strong> Sommige eindbeoordelingen moeten “doe het zelf” blijven, zonder AI-tooling, specifiek om de redeneervaardigen te verifiëren waarnaar de AI-ondersteunde werkzaamheden toe bedoeld waren te leiden.</li>
<li><strong>Vermijd “AI-vriendelijke opdrachten”</strong> — taken die in de eerste plaats geen kritische analyse vereisen zijn precies de taken die AI niet te onderscheiden van een mens zal voltooien, zonder je iets te vertellen over wat de student werkelijk heeft geleerd.</li>
</ul>
<p>Er is ook een stiller risico dat benoemd verdient te worden: als een AI-beoordelings- of tutorassistent 49 keer achter elkaar gelijk heeft, zal een docent dan nog zorgvuldig de 50e controleren? Automatiseringsgemakzucht is een echte faalwijze, geen hypothetische, en dat pleit ervoor om een mens werkelijk in de lus te houden in plaats van AI-uitvoer rubber te stempelen omdat die tot nu toe betrouwbaar is geweest.</p>
</section>
<section id="eerlijk-afwegen" class="level2">
<h2 class="anchored" data-anchor-id="eerlijk-afwegen">Eerlijk afwegen</h2>
<p><strong>Het argument voor:</strong> 24/7 toegang tot uitleg, werkelijk gepersonaliseerd tempo, ondersteuning voor moeilijke onderwerpen, efficiënte tutorondersteuning op een schaal dat geen instelling met mensen alleen kon bemensen, lagere drempels voor studenten in ondervoorziene situaties, en taalondersteuning voor niet-moedertaalsprekers.</p>
<p><strong>Het argument voor voorzichtigheid:</strong> overafhankelijkheid die precies de vaardigen uitholt die onderwijs bedoeld is te bouwen, het risico dat zelfverzekerd onjuiste informatie studenten bereikt die het verschil nog niet kunnen zien, ongelijke toegang als tools kostbaar zijn, en de zeer reële mogelijkheid dat opdrachten worden uitbesteed in plaats van begrepen.</p>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>De technologie werkt nu werkelijk, na decennia van onderzoek — dat deel staat niet ter discussie. Wat nog wordt uitgewerkt, in real time, in echte klaslokalen, is hoe docenten verschuiven van informatieverstrekkers naar facilitators van kritisch denken, en hoe beoordeling verschuift van het belonen van geheugen naar het belonen van redenering en toepassing. Goed gebruikt ziet AI in het onderwijs eruit als een onvermoeibare, geduldige, altijd beschikbare onderwijsassistent die menselijke docenten vrijmaakt voor de onderdelen van onderwijs die machines nog steeds niet kunnen doen. Onzorgvuldig gebruikt ziet het eruit als een wapenwedloop tussen detectietools en humaniseringstools die iedereen voor het algoritme laat schrijven in plaats van voor begrip. De technologie bepaalt niet welke van die toekomsten we krijgen — het herontwerp van beoordeling en pedagogiek eromheen doet dat.</p>
<p><em>Gebaseerd op “Exploring the Potential of AI Tutors in Higher Education” (Prof.&nbsp;dr. ir. Jan Scholtes, UM Education Day, juni 2025).</em></p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Kasneci et al.&nbsp;(2023), <em>ChatGPT for Good? On Opportunities and Challenges of LLMs for Education</em> — <a href="https://doi.org/10.1016/j.lindif.2023.102274">Learning and Individual Differences</a></li>
<li>Bender et al.&nbsp;(2021), <em>On the Dangers of Stochastic Parrots</em> — <a href="https://doi.org/10.1145/3442188.3445922">ACM FAccT 2021</a></li>
<li>Mollick &amp; Mollick (2023), <em>Assigning AI: Seven Approaches for Students, With Prompts</em> — <a href="https://ssrn.com/abstract=4391243">SSRN</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/wat-is-een-ai-agent.html">Wat is een AI-agent?</a> — de architectuur achter de AI-tutors en beoordelingsagenten hier besproken</li>
<li><a href="../blog/waarom-nlp-eindelijk-werkt.html">Waarom NLP eindelijk werkt</a> — de <em>transformer</em>-architectuur die generatieve AI in het onderwijs mogelijk maakte</li>
<li><a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">Adversariale aanvallen: onzichtbare pixels en omgewisselde woorden</a> — waarom AI-systemen <em>guardrails</em> nodig hebben, ook in onderwijscontexten</li>
<li><a href="../blog/van-tekst-naar-agentische-workflows.html">Van tekst naar actie</a> — hoe cursusmateriaal en correcties trainingsdata kunnen worden voor een gespecialiseerde onderwijsagent</li>
</ul>


</section>

 ]]></description>
  <category>onderwijs</category>
  <guid>https://trajectorium.ai/nl/blog/hoe-ai-het-onderwijs-zal-revolutioneren.html</guid>
  <pubDate>Sat, 24 Oct 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Het autonome bedrijf besturen: wie is verantwoordelijk als AI beslist?</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/het-autonome-bedrijf-besturen.html</link>
  <description><![CDATA[ 




<p>Na ongeveer veertig jaar “AI is er bijna” is het er eindelijk. Schaken in 1997, Jeopardy in 2011, Go in 2016, poker en DOTA 2 kort daarna, transformers in 2017, en nu agentische systemen die niet alleen vragen beantwoorden maar er ook op handelen. De technische vraag — kunnen we het laten werken? — is grotendeels beantwoord. De vraag die overblijft, en het is de moeilijkere, is organisatorisch: <strong>hoe bestuur je een instelling waarin AI analyseert, adviseert en handelt, terwijl de eindverantwoordelijkheid nog steeds bij een mens ligt?</strong></p>
<p>Dit is geen hypothetisch scenario voor een toekomstige bestuursvergadering. Het is al de operationele werkelijkheid op plaatsen die het verst zijn gegaan met agentische AI — waaronder, misschien verrassend, de Amerikaanse marine.</p>
<section id="het-bestuursraamwerk-dat-niemand-heeft-opgeschreven-tot-nu" class="level2">
<h2 class="anchored" data-anchor-id="het-bestuursraamwerk-dat-niemand-heeft-opgeschreven-tot-nu">Het bestuursraamwerk dat niemand heeft opgeschreven (tot nu)</h2>
<p>Een nuttige manier om na te denken over het besturen van een AI-agent is de levenscyclus in vier fasen in te delen, elk met een eigen bestuursvraag — en elk met een bijbehorende evaluatiestandaard, zoals Stanford’s HELM-benchmarksuite, die je iets concreets geeft om te meten in plaats van een vaag vertrouwensgevoel.</p>
<p><strong>1. Training — is de basis solide?</strong> Dit is de fase van pre-training en instructie-afstemming waarin het model patronen, taal en basistaken leert. De bestuursvraag hier is eenvoudig maar fundamenteel: heeft dit systeem voldoende nauwkeurigheid en kenniskwaliteit voor de scenario’s die het daadwerkelijk zal tegenkomen? Als de basis zwak is, zal niets wat erop wordt gebouwd betrouwbaar zijn, hoe geavanceerd de toezichtlagen ook zijn.</p>
<p><strong>2. Validatie — gedraagt het zich consistent onder druk?</strong> Een agent testen in gesimuleerde omgevingen — kan het betrouwbaar API’s aanroepen en code uitvoeren zonder te breken? — onthult twee governance-kritieke eigenschappen: robuustheid (veroorzaakt een kleine variatie in invoer een grote variatie in gedrag?) en kalibratie (weet het systeem hoe zeker het zou moeten zijn?). Een model dat tegelijkertijd fout en zelfverzekerd is, is veel gevaarlijker te besturen dan een model dat fout is maar dat ook zegt.</p>
<p><strong>3. Reflectie — onderschept het zijn eigen fouten?</strong> Agentische raamwerken zoals ReAct en Reflexion geven een systeem de mogelijkheid om naar de uitkomst van zijn eigen handeling te kijken — een foutmelding van een tool, een onverwacht resultaat — erover na te denken en zijn eigen plan te corrigeren. Vanuit een bestuursperspectief beoordeel je hier de aanpassingsvermogen: blijft de agent een logische, verdedigbare reeks stappen volgen, of ontspoort het onder onzekerheid? Dit is de laag die problemen opvangt voordat een mens dat ooit hoeft te doen.</p>
<p><strong>4. Uitleg — kan het zijn werk laten zien?</strong> Dit is Explainable AI (XAI): waarom koos de agent actie A in plaats van actie B? Een bestuurde agent moet zijn interne beslissingsboom blootleggen, het gewicht dat het aan concurrerende overwegingen gaf, of op zijn minst een duidelijk logboek — aan de menselijke toezichthouder die verantwoordelijk blijft voor de uitkomst. Dit is ook waar eerlijkheid en vermindering van vooringenomenheid in de praktijk worden afgedwongen, want je kunt niet controleren wat je niet kunt zien. Zonder deze laag is “de AI heeft besloten” geen antwoord — het is een uitvlucht.</p>
<p>Samen zijn deze vier fasen niet alleen een engineeringpijplijn. Ze vormen een bestuursraamwerk: elke fase beantwoordt een specifieke vraag die een raad van bestuur, een toezichthouder of een auditor uiteindelijk zal stellen, en elke fase heeft een meetbare standaard achter zich in plaats van een handgebaar.</p>
</section>
<section id="hoe-dit-er-in-de-praktijk-uitziet-de-amerikaanse-marine" class="level2">
<h2 class="anchored" data-anchor-id="hoe-dit-er-in-de-praktijk-uitziet-de-amerikaanse-marine">Hoe dit er in de praktijk uitziet: de Amerikaanse marine</h2>
<p>Abstracte raamwerken zijn gemakkelijker te vertrouwen als je kunt aantonen dat ze werken onder echte operationele druk. De recente agentische AI-implementaties van de Amerikaanse marine zijn instructief, precies omdat de inzet — veiligheid, kosten, inzetbereidheid van de missie — geen ruimte laat voor governance als bijzaak.</p>
<p><strong>MyNavy HR: bureaucratie elimineren, niet alleen automatiseren.</strong> Interne administratie was een van de grootste bronnen van verspilde tijd en frustratie voor matrozen, wat direct bijdroeg aan lagere retentie. Het antwoord van de marine was AI-agents te plaatsen als een onzichtbare vertaler tussen de matroos en de logge ERP-systemen van de marine — een matroos dient een HR-, salaris- of verlofwijziging in via een radicaal eenvoudige interface, en de agent werkt de backendsystemen autonoom bij. Het resultaat: honderdduizenden bespaarde arbeidsuren per jaar, een verminderd HR-personeelsbestand en operationele bemanningen bevrijd van papierwerk. De bestuursles hier is dat de matroos de AI nooit direct hoeft te begrijpen of te vertrouwen — ze vertrouwen erop dat de uitkomst correct is, omdat de governance één laag verder terug zit, in hoe de acties van de agent worden gevalideerd tegen HR-beleid.</p>
<p><strong>Condition-Based Maintenance Plus (CBM+): soevereiniteit als bestuurseis, niet als voorkeur.</strong> De marine stapt af van reactief of puur op kalender gebaseerd onderhoud op schepen en onderzeeërs, met behulp van wat zij Sovereign Edge AI noemen — modellen die fysiek en lokaal op het schip draaien, onafhankelijk van een satellietverbinding. Sensoren voeden een lokaal model; wanneer het een abnormaal patroon detecteert, genereert de agent niet alleen een rapport — het bestelt autonoom het benodigde reserveonderdeel en plant de reparatie voor de volgende havenbezoek. Het resultaat: enorme besparingen door het minimaliseren van “Wachten op onderdelen”-stilstand — een miljardenschip staat niet langer stil omdat een klep van honderd dollar ontbreekt. Let op wat hier het bestuurswerk doet: de AI is gemachtigd om te <em>handelen</em> (onderdelen bestellen, reparaties plannen) precies omdat het draait op infrastructuur die de marine volledig beheert, met een begrensd, goed getest actiebereik. Autonomie en soevereiniteit zijn geen afzonderlijke zorgen — de eerste hangt af van de tweede.</p>
<p><strong>NAVSUP: predictieve logistiek die behoeften anticipeert.</strong> Het Naval Supply Systems Command beheert wereldwijde depots en moet vloten op zee bevoorraden, waar bureaucratische vertraging daadwerkelijk gevaarlijk kan zijn. De AI koppelt een missieprofiel aan logistiek: als een vloot opereert in zwaar weer, berekent het systeem proactief verhoogde slijtage en positioneert de benodigde onderdelen vooruit in het dichtstbijzijnde depot — voordat de bemanning er zelfs om vraagt. Het resultaat is een bijna-eliminatie van dure noodlogistiekvluchten en een scherpe verlaging van overtollige “dode” voorraad die in havens ligt.</p>
<p>Bij alle drie is het patroon hetzelfde: AI krijgt echte besluitvormings- en handelingsbevoegdheid, maar alleen binnen een strak bestuurde envelop — begrensde acties, lokale/soevereine infrastructuur waar de inzet dat vereist, en een duidelijke keten terug naar een mens die verantwoordelijk is voor de uitkomst.</p>
</section>
<section id="digitale-soevereiniteit-is-onderdeel-van-governance-geen-apart-onderwerp" class="level2">
<h2 class="anchored" data-anchor-id="digitale-soevereiniteit-is-onderdeel-van-governance-geen-apart-onderwerp">Digitale soevereiniteit is onderdeel van governance, geen apart onderwerp</h2>
<p>Het is verleidelijk om “wie de beslissingen van de AI bestiert” en “wie de infrastructuur beheert waarop de AI draait” als twee verschillende gesprekken te behandelen. De CBM+-casus van de marine laat zien waarom het hetzelfde gesprek is. <a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">Soevereiniteit en governance zijn dezelfde vraag — zoals het vijf-dimensies-kader uitvoerig behandeld in het begeleidende artikel laat zien.</a> Het besturen van een autonoom besluitvormingssysteem vereist controle over:</p>
<ul>
<li><strong>Trainingsinfrastructuur</strong> — wie bepaalt wat het model leert</li>
<li><strong>Inferentie-infrastructuur</strong>, inclusief edge-implementatie — waar en hoe het model werkelijk draait wanneer het een beslissing neemt</li>
<li><strong>Betrouwbare, vaak kleinere modellen</strong> die je volledig kunt valideren, in plaats van een ondoorzichtig general-purpose model dat je alleen kunt aansturen via prompts</li>
<li><strong>Fine-tuning, RAG, RLHF en reflectie</strong> — de mechanismen waarmee je gedrag daadwerkelijk kunt vormgeven in plaats van er alleen maar op te hopen</li>
<li><strong>Compressie, pruning en distillatie</strong> — de technieken die het haalbaar maken om een bestuurbaar model lokaal, aan de edge, te draaien in plaats van afhankelijk te zijn van een externe API die je niet beheert</li>
</ul>
<p>Een organisatie die alleen de promptlaag bestiert, terwijl elke daadwerkelijke inferentie-aanroep naar infrastructuur gaat die ze niet beheert, heeft het governanceprobleem niet echt opgelost — ze heeft een deel ervan uitbesteed aan een partij buiten de verantwoordingsketen.</p>
</section>
<section id="de-open-vraag-gecentraliseerde-of-gedecentraliseerde-governance" class="level2">
<h2 class="anchored" data-anchor-id="de-open-vraag-gecentraliseerde-of-gedecentraliseerde-governance">De open vraag: gecentraliseerde of gedecentraliseerde governance?</h2>
<p>Dit is waar het raamwerk geen gemakkelijke antwoorden meer heeft, en dat is eerlijk gezegd ook terecht. Moet AI-governance in een grote organisatie gecentraliseerd zijn — één orgaan dat standaarden, validatiedrempels en uitlegbaarheidsvereisten stelt voor elk AI-systeem in de organisatie — of gedecentraliseerd, waarbij elke afdeling of elk schip, in het geval van de marine, zijn eigen agents bestiert aan de hand van een gedeelde basislijn?</p>
<p>Er valt voor beide een redelijk argument te maken. Gecentraliseerde governance geeft je consistentie, een enkel auditiepunt en schaalvoordelen in validatie- en XAI-tooling. Gedecentraliseerde governance geeft je snelheid en domeinspecifiek oordeel — het team dat AI voor scheepsonderhoud beheert begrijpt storingscondities die een centrale AI-ethietraad nooit in dezelfde diepte zal begrijpen. De meeste organisaties die het verst zijn gegaan met agentische AI lijken te convergeren op een hybride: centraal gedefinieerde <em>standaarden</em> (het vierfasenraamwerk hierboven, minimale XAI-vereisten, escalatiedrempels voor menselijke goedkeuring) gecombineerd met gedecentraliseerde <em>implementatie en monitoring</em> dicht bij waar de beslissingen daadwerkelijk worden genomen. Soevereiniteit en verantwoordelijkheid worden centraal vastgesteld; dagelijks oordeel blijft lokaal.</p>
</section>
<section id="waar-te-beginnen-hr-juridisch-en-financiën" class="level2">
<h2 class="anchored" data-anchor-id="waar-te-beginnen-hr-juridisch-en-financiën">Waar te beginnen: HR, juridisch en financiën</h2>
<p>Als het besturen van agentische AI over een hele organisatie ontmoedigend aanvoelt, is er een gevestigde plek om de capaciteit op te bouwen voordat je die uitbreidt naar domeinen met hogere inzet: HR, interne juridische zaken en financiën. Deze functies opereren bijna volledig in een digitale en papieren realiteit — geen onvoorspelbare fysieke wereld van slecht weer, kapotte pompen of fysieke afstand om mee om te gaan. Ze werken met tekst en cijfers in kantoorbestanden, volgen strikte regels en protocollen, en vertegenwoordigen doorgaans een trage, dure flessenhals voor de rest van de organisatie. Die combinatie — hoge regeldichtheid, hoog volume, lage fysieke onvoorspelbaarheid — maakt ze de ideale laagrisico-proeflocatie voor het bovenstaande bestuursraamwerk: je kunt de vier fasen valideren, je uitlegbaarheidstooling testen en je escalatiedrempels vaststellen op een plek waar de kosten van een vroege fout een vertraagde factuur zijn, niet een gestrand schip.</p>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>De technologievraag — werkt agentische AI daadwerkelijk? — ligt achter ons. Wat overblijft is de bestuursvraag, en die heeft nog geen enkel vaststaand antwoord, maar wel een werkbare vorm: train en valideer aan de hand van meetbare standaarden, bouw reflectie in zodat het systeem zijn eigen fouten onderschept, eis echte uitlegbaarheid zodat een mens de beslissing daadwerkelijk kan controleren, beheers de infrastructuur waarop de beslissingen worden genomen, en besluit bewust — niet per ongeluk — hoeveel ervan centraal staat versus dicht bij waar het werk plaatsvindt. Organisaties die dit behandelen als een engineeringbijzaak, zullen op de harde manier ontdekken dat “de AI heeft besloten” geen aanvaardbaar antwoord is voor een raad van bestuur, een toezichthouder of een matroos wiens schip in de haven staat.</p>
<p><em>Gebaseerd op “AI en Bestuurlijke Besluitvorming” (Prof.&nbsp;dr. ir. J.C. Scholtes, rondetafelsessie, augustus 2026).</em></p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Jobin et al.&nbsp;(2019), <em>The Global Landscape of AI Ethics Guidelines</em> — <a href="https://doi.org/10.1038/s42256-019-0088-2">Nature Machine Intelligence</a></li>
<li>Doshi-Velez &amp; Kim (2017), <em>Towards a Rigorous Science of Interpretable Machine Learning</em> — <a href="https://arxiv.org/abs/1702.08608">arXiv:1702.08608</a></li>
<li>Cath (2018), <em>Governing Artificial Intelligence: Ethical, Legal and Technical Opportunities and Challenges</em> — <a href="https://doi.org/10.1098/rsta.2018.0080">Phil. Trans. R. Soc. A</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — de architectuurlaag waarop governance rust</li>
<li><a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">Waarom Europa eigen AI-modellen nodig heeft</a> — soevereiniteit als infrastructuurvoorwaarde voor echte governance</li>
<li><a href="../blog/wat-is-een-ai-agent.html">Wat is een AI-agent?</a> — wat het systeem dat wordt bestuurd eigenlijk is</li>
<li><a href="../blog/een-soevereine-ai-agent-bouwen.html">Wat er nodig is om een soevereine AI-agent te bouwen</a> — de end-to-end praktische gids die dit governance-raamwerk toepast</li>
<li><a href="../blog/bias-analyse-in-de-praktijk.html">Bias-analyse in de praktijk</a> — hoe je de vereiste bias-analyse, rechtvaardigingstoets en ethische wenselijkheidstoets uitvoert</li>
</ul>


</section>

 ]]></description>
  <category>governance</category>
  <guid>https://trajectorium.ai/nl/blog/het-autonome-bedrijf-besturen.html</guid>
  <pubDate>Sat, 17 Oct 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>De institutionele slotgracht: waarom CTO’s niet kunnen stoppen bij prompts en skill files</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/de-institutionele-slotgracht.html</link>
  <description><![CDATA[ 




<p>De meeste enterprise “AI-strategieën” zien er vandaag hetzelfde uit: kies een basismodel — Claude, GPT, Gemini — schrijf een systeem-prompt, wikkel het in een paar skill files, koppel wat function calling en noem het een agent. Het werkt, het demonstreert goed en het wordt snel geleverd. Maar het is op zichzelf geen slotgracht. Als jouw CTO-briefing daarbij stopt, is dit artikel voor jou.</p>
<section id="de-sandbox-waar-je-werkelijk-in-bouwt" class="level2">
<h2 class="anchored" data-anchor-id="de-sandbox-waar-je-werkelijk-in-bouwt">De sandbox waar je werkelijk in bouwt</h2>
<p>Aanbieders van basismodellen verschepen niet langer alleen slimmere chatbots — ze bouwen volledig geïntegreerde, gesloten agentische ecosystemen: meerstapsredeneerketens, native tool-integratie, propriëtaire kennisgrafen, neurale rerankers getraind op miljarden queries en toenemend recursieve zelfverbetering. Wat ze externe ontwikkelaars geven, is daarentegen een gecontroleerde sandbox: systeem-prompts (oppervlakkige controle), function calling om tools te activeren, standaard RAG (basis vectorzoekopdracht) en kant-en-klare sjablonen. Je krijgt geen toegang tot hun RLHF-lagen, hun modelgewichten of hun interne herrangschikking. Je mag <em>op</em> het platform bouwen — niet <em>erin</em>.</p>
<p>Die kloof doet er meer toe dan op het eerste gezicht lijkt. Een systeem-prompt, hoe zorgvuldig ook ontworpen, behandelt het model als een black box. Als je volledige “agent” een Markdown-bestand is dat over een general-purpose LLM is gelegd, heb je geen propriëtair systeem gebouwd — je hebt een configuratie van iemand anders’ product gebouwd. Dat is de val: <strong>je bouwt uiteindelijk een afhankelijkheid, geen bedrijf.</strong></p>
</section>
<section id="waarom-de-volgende-modelversie-lost-het-op-een-fatale-strategie-is" class="level2">
<h2 class="anchored" data-anchor-id="waarom-de-volgende-modelversie-lost-het-op-een-fatale-strategie-is">Waarom “de volgende modelversie lost het op” een fatale strategie is</h2>
<p>Het is verleidelijk om uit te stellen. Basismodellen verbeteren elke paar maanden, dus waarom nu investeren in een eigen architectuur? Omdat volledig vertrouwen op het voortdurend verbeterende basismodel je bedrijf omzet in een tijdelijke functie op iemand anders’ roadmap. Klantloyaliteit gebouwd op “goed genoeg” is een illusie, met name in conservatieve markten — op het moment dat een aanbieder van basismodellen een superieure geïntegreerde capaciteit in jouw exacte niche uitbrengt, verdwijnt die loyaliteit van de ene dag op de andere. Zonder je eigen geheugenlaag, je eigen redeneerlogica en je eigen verificatielussen ben je geen bedrijf met een AI-product. Je bent een wrapper die wacht om geabsorbeerd te worden.</p>
<p>De ongemakkelijke vraag die elke CTO zou moeten stellen, is niet <em>of</em> de platforms jouw niche zullen overnemen — maar of jouw organisatie zich eerder kan specialiseren dan zij dat doen.</p>
</section>
<section id="waar-de-echte-slotgracht-zich-werkelijk-bevindt" class="level2">
<h2 class="anchored" data-anchor-id="waar-de-echte-slotgracht-zich-werkelijk-bevindt">Waar de echte slotgracht zich werkelijk bevindt</h2>
<p>De toegevoegde waarde is verschoven. Het zit niet meer in welk basismodel je aanroept — dat is steeds meer een vervangbare, gestandaardiseerde keuze tussen Claude, GPT, Gemini of een open-gewicht model zoals Llama. De slotgracht zit in de <strong>propriëtaire architectuur en datasoevereiniteit die je eromheen bouwt.</strong> Vier componenten doen het zware werk.</p>
<section id="rag-neurale-herrangschikking-jouw-bedrijfsgeheugen" class="level3">
<h3 class="anchored" data-anchor-id="rag-neurale-herrangschikking-jouw-bedrijfsgeheugen">1. RAG + neurale herrangschikking — jouw bedrijfsgeheugen</h3>
<p>Basis vectorzoekopdracht is nu een minimumvereiste, geen onderscheidend kenmerk. Je handleidingen, projecten en institutionele expertise opsplitsen in semantische secties en indexeren (Pinecone, pgvector) levert je standaard retrieval-augmented generation op — nuttig, maar generiek. De echte slotgracht is een <strong>neurale reranker</strong>: een cross-encoder specifiek getraind op je eigen query-en-beste-antwoord-paren, die de top 50-100 kandidaten die een gewone vectorzoekopdracht oplevert opnieuw bekijkt en de nuance begrijpt die een generalistische model niet kan — het verschil tussen “Marktrisico” en “Operationeel risico” in jouw specifieke domein, bijvoorbeeld. Vectorzoekopdrachten vinden dingen die vergelijkbaar zijn. Een reranker vindt het ding dat correct is. Dat onderscheid is waar hallucinaties drastisch worden verminderd.</p>
</section>
<section id="een-fine-tuned-critic-model-jouw-digitale-peer-reviewer" class="level3">
<h3 class="anchored" data-anchor-id="een-fine-tuned-critic-model-jouw-digitale-peer-reviewer">2. Een <em>fine-tuned</em> Critic-model — jouw digitale peer reviewer</h3>
<p>Een groot basismodel is snel en breed onderlegd, maar het is een generalist. Combineer het met een klein, gespecialiseerd, <em>fine-tuned</em> “Critic”-model dat is getraind op de eigen correcties van jouw organisatie — geen statisch regelboek, maar adaptieve intelligentie die concepten beoordeelt, afwijst of terugstuur met specifieke feedback. De trainingsdata hiervoor is concreet en vanaf vandaag verzamelbaar: afgewezen of bewerkte AI-uitvoer van je eigen medewerkers, de door experts gecorrigeerde versie, de reden voor de correctie (“schendt artikel 4.2”), en eventuele harde compliance-grenzen. Als ruwe richtlijn: 50-100 gecureerde voorbeelden leveren een werkend prototype op; 500-1.000 bereikt productiestandaard; 2.000+ benadert echte domeinexpertise. Geen enkele aanbieder van basismodellen heeft toegang tot deze data — die is van jou door constructie.</p>
</section>
<section id="planning-en-multi-hop-redenering-navigeren-door-echte-informatieketens" class="level3">
<h3 class="anchored" data-anchor-id="planning-en-multi-hop-redenering-navigeren-door-echte-informatieketens">3. Planning en multi-hop-redenering — navigeren door echte informatieketens</h3>
<p>Complexe professionele taken worden nooit in één stap opgelost. Een nuttige architectuur voert een OODA-stijllus uit — waarnemen, oriënteren, beslissen, handelen — waarbij intentie wordt geparsed, opgesplitst in subdoelen met afhankelijkheden, de volgende tool of redenerstap wordt geselecteerd, uitgevoerd, geverifieerd en herhaald totdat de taak daadwerkelijk is opgelost. Raamwerken zoals LangGraph (besturingslussen), DSPy (automatische prompt-optimalisatie) en CrewAI (rolgebaseerde multi-agent-orkestratie) bestaan precies voor dit doel; Chain-of-Thought, Tree-of-Thought en Skeleton-of-Thought geven de redenering zelf ruimte om zich over meerdere stappen te ontvouwen in plaats van in één doorgang te worden samengeperst.</p>
</section>
<section id="guardrails-de-grootste-drempel-voor-adoptie-oplossen" class="level3">
<h3 class="anchored" data-anchor-id="guardrails-de-grootste-drempel-voor-adoptie-oplossen">4. Guardrails — de grootste drempel voor adoptie oplossen</h3>
<p>Hallucinatierisico is de grootste reden waarom institutionele AI-adoptie stokt. De oplossing is geen groter model — het zijn onafhankelijke verificatieagenten rondom de kern-LLM: elke versie controleren tegen jouw RAG-waarheidsbron, veiligheidsfilters die juridische en compliance-grenzen handhaven, en zelfconsistentiecontroles die dezelfde query via meerdere redeneerroutes uitvoeren en antwoorden verwerpen die het niet met elkaar eens zijn. Niets hiervan mag worden overgelaten aan hetzelfde model dat zichzelf bewaakt. Voor een volledige behandeling van de specifieke aanvalstypen waartegen deze <em>guardrails</em> verdedigen, zie het <a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">artikel over adversariale aanvallen</a> in deze reeks.</p>
</section>
</section>
<section id="het-samengestelde-voordeel-redeneerdrieluiken" class="level2">
<h2 class="anchored" data-anchor-id="het-samengestelde-voordeel-redeneerdrieluiken">Het samengestelde voordeel: redeneerdrieluiken</h2>
<p>Zet deze vier samen en er begint iets samen te stellen. Elke echte interactie genereert een <strong>redeneerdrieluik</strong>: de observatie die het systeem zag, de actie of tool-aanroep die het koos, en de consequentie — succes of mislukking. Die data verfijnt je reranker, je critic en je planner, wat betere uitkomsten oplevert, wat meer gebruik stimuleert, wat meer data oplevert. Dit is het vliegwiel dat een eenmalig integratieproject omzet in een werkelijk verdedigbaar bedrijfsmiddel — en het is precies het soort propriëtaire dataset waarmee je later kunt fijnregelen rondom elke nieuwe generatie basismodellen, in plaats van erdoor vervangen te worden.</p>
</section>
<section id="wat-je-maandagochtend-kunt-doen" class="level2">
<h2 class="anchored" data-anchor-id="wat-je-maandagochtend-kunt-doen">Wat je maandagochtend kunt doen</h2>
<p>Als je als CTO of CIO dit leest en je eigen stack herkent, vereist de oplossing geen maanlandingsproject:</p>
<ol type="1">
<li><strong>Auditeer je AI-stack.</strong> Als het prompts plus API-aanroepen zijn en verder niets, heb je momenteel geen slotgracht.</li>
<li><strong>Begin vandaag met het verzamelen van redeneerdrieluiken</strong>, vanuit elke expertinteractie — deze data bestaat alleen vooruitgaand, niet retroactief.</li>
<li><strong>Implementeer een neurale reranker op je domeindata.</strong> Dit is doorgaans de eerste stap met de hoogste ROI.</li>
<li><strong>Bouw je eerste Critic-agent.</strong> Vijftig gecureerde voorbeelden zijn voldoende voor een werkend prototype.</li>
<li><strong>Ontkoppel je architectuur in modulaire, onafhankelijk upgradeable componenten</strong> — reranker, critic, planner en guardrails moeten elk vervangbaar zijn zonder het hele systeem te herbouwen.</li>
</ol>
</section>
<section id="de-eu-hoek-waarom-dit-hier-niet-optioneel-is" class="level2">
<h2 class="anchored" data-anchor-id="de-eu-hoek-waarom-dit-hier-niet-optioneel-is">De EU-hoek: waarom dit hier niet optioneel is</h2>
<p>Alles hierboven geldt wereldwijd. Maar Europese CTO’s en CIO’s hebben een extra, zeer concrete reden om dit niet als een nice-to-have te behandelen: <strong>bijna alle architectuur staat momenteel bovenop Amerikaanse infrastructuur en Amerikaanse basismodellen — en die afhankelijkheid heeft al eens zijn kwetsbaarheid bewezen.</strong> Dit is de dimensie die <a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">uitvoerig wordt behandeld in het begeleidende artikel over AI-soevereiniteit</a> op deze site.</p>
<p>Half 2026 schortte Anthropic de toegang tot zijn nieuw uitgebrachte Fable- en Mythos-modeltiers gedurende enkele weken op om te voldoen aan exportcontroles van het Amerikaanse Ministerie van Handel, voordat het Ministerie die beperkingen ophief en de toegang werd hersteld. Wat de specifieke details van dat voorval ook zijn, het is een concreet, recent en praktijkgericht bewijs van precies het risico waar dit artikel over gaat: als je volledige operatie draait op een dunne laag prompts over een in het buitenland gehost model, kan een exportcontrolebeslissing, een prijswijziging of een beleidswijziging gemaakt in Washington — niet in Brussel, en niet door jou — je kernkapaciteit met onmiddellijke ingang opschorten of duurder maken, zonder voorafgaande kennisgeving en zonder verhaal.</p>
<p>Dit is precies waarom Stanford’s AI Index 2026 AI-soevereiniteit omschrijft over vijf dimensies — infrastructuur, data, model, applicatie en talent — en waarom het rapport laat zien dat Europa zwaar investeert maar nog steeds achterblijft in ruwe rekenkracht en modelproductie. Een organisatie die niets heeft gebouwd behalve een promptlaag op een Amerikaans model heeft in dat scenario nul onafhankelijke invloed. Een organisatie die haar eigen RAG-en-herrangschikking-geheugen heeft gebouwd, haar eigen <em>fine-tuned</em> critics, haar eigen planningslogica en haar eigen guardrails — allemaal getraind op propriëtaire Europese data — kan een modelwissel overleven. Het basismodel wordt wat het altijd had moeten zijn: een vervangbaar component, niet het hele bedrijf.</p>
<p>Voor Europese instellingen specifiek — ziekenhuizen, juridische kantoren, financiële diensten, publieke instellingen gebonden aan de AVG en sectorspecifieke regelgeving — is dit geen abstracte risicomanagement. Het is het verschil tussen een AI-capaciteit die je beheert en een die je slechts huurt, tegen een prijs en op voorwaarden die iemand anders op elk moment kan wijzigen.</p>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>De vraag waarop elke CTO en CIO een eerlijk antwoord nodig heeft, is niet of ze Claude, GPT of Gemini moeten gebruiken — het is wat je <em>eromheen</em> hebt gebouwd. Als het antwoord “een systeem-prompt en wat function calling” is, heb je een sandbox, geen slotgracht, en een enkel punt van buitenlandse afhankelijkheid dat onder je volledige operatie ligt. Bouw de architectuur — geheugen, tools, planning, critics, guardrails — en het basismodel eronder wordt precies wat het zou moeten zijn: inwisselbaar, gestandaardiseerd en niet langer het ding waarvan je bedrijf afhankelijk is voor zijn voortbestaan.</p>
<p><em>Dit artikel put uit “The Institutional Moat: Beyond the Big Tech AI Trap” (Prof.&nbsp;dr. ir. J.C. Scholtes, Endeit Capital, maart 2026).</em></p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Bommasani et al.&nbsp;(2021), <em>On the Opportunities and Risks of Foundation Models</em> — <a href="https://arxiv.org/abs/2108.07258">arXiv:2108.07258</a></li>
<li>Brown et al.&nbsp;(2020), <em>Language Models are Few-Shot Learners</em> (GPT-3) — <a href="https://arxiv.org/abs/2005.14165">arXiv:2005.14165</a></li>
<li>Ouyang et al.&nbsp;(2022), <em>Training Language Models to Follow Instructions with Human Feedback</em> — <a href="https://arxiv.org/abs/2203.02155">arXiv:2203.02155</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/wat-is-een-ai-agent.html">Wat is een AI-agent?</a> — wat de zeven agentische componenten die je bouwt eigenlijk zijn</li>
<li><a href="../blog/van-tekst-naar-agentische-workflows.html">Van tekst naar actie</a> — de concrete <em>pipeline</em> voor het bouwen van de propriëtaire architectuur beschreven hier</li>
<li><a href="../blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html">Waarom Europa eigen AI-modellen nodig heeft</a> — de geopolitieke dimensie van waarom deze architectuur niet op buitenlandse infrastructuur kan rusten</li>
<li><a href="../blog/het-autonome-bedrijf-besturen.html">Het autonome bedrijf besturen</a> — de governance-laag die er bovenop zit</li>
<li><a href="../blog/een-soevereine-ai-agent-bouwen.html">Wat er nodig is om een soevereine AI-agent te bouwen</a> — de stapsgewijze gids die alles uit dit artikel in de praktijk brengt</li>
</ul>


</section>

 ]]></description>
  <category>enterprise-strategie</category>
  <guid>https://trajectorium.ai/nl/blog/de-institutionele-slotgracht.html</guid>
  <pubDate>Sat, 10 Oct 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Waarom Europa eigen AI-modellen nodig heeft op eigen AI-infrastructuur</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html</link>
  <description><![CDATA[ 




<p>Jarenlang was “gewoon de API aanroepen” een volkomen redelijke AI-strategie. Het <em>Stanford AI Index Report 2026</em> suggereert dat dat tijdperk ten einde loopt — niet omdat de API’s slechter zijn geworden, maar omdat overheden en organisaties steeds meer inzien dat afhankelijkheid van iemand anders’ model, draaiend op iemand anders’ infrastructuur, een strategisch risico is. Het rapport wijdt een volledig hoofdstuk aan wat het <strong>AI-soevereiniteit</strong> noemt, en de data daarin maakt een ongewoon concreet geval voor waarom Europa — in het bijzonder — zijn eigen modellen op eigen infrastructuur moet draaien, tot aan de edge.</p>
<section id="wat-ai-soevereiniteit-werkelijk-betekent" class="level2">
<h2 class="anchored" data-anchor-id="wat-ai-soevereiniteit-werkelijk-betekent">Wat “AI-soevereiniteit” werkelijk betekent</h2>
<p>De Index definieert AI-soevereiniteit als het vermogen van een staat — of, in bredere zin, een organisatie — om “bewust te handelen en onafhankelijke beslissingen te nemen over de ontwikkeling, het gebruik en het beheer van AI-systemen”, in plaats van voor kritieke capaciteit afhankelijk te zijn van externe partijen. Het rapport splitst dit op in vijf afzonderlijke lagen, en elke laag komt direct overeen met een beslissing die jouw eigen organisatie moet nemen, niet alleen een overheid:</p>
<ul>
<li><strong>Infrastructuursoevereiniteit</strong> — wie de rekenkracht beheert waarop jouw modellen draaien</li>
<li><strong>Datasoevereiniteit</strong> — waar jouw data zich bevindt en wie er toegang toe heeft</li>
<li><strong>Modelsoevereiniteit</strong> — of je de modellen zelf kunt bouwen, aanpassen en beheren</li>
<li><strong>Applicatiesoevereiniteit</strong> — hoeveel controle je hebt over de systemen die bovenop zijn gebouwd</li>
<li><strong>Talentsoevereiniteit</strong> — of je de mensen hebt om dit alles te realiseren</li>
</ul>
<p>Laten we doornemen wat de data over elk ervan zegt — en waar edge computing een rol speelt.</p>
</section>
<section id="infrastructuursoevereiniteit-europa-investeert-maar-de-kloof-is-reëel" class="level2">
<h2 class="anchored" data-anchor-id="infrastructuursoevereiniteit-europa-investeert-maar-de-kloof-is-reëel">Infrastructuursoevereiniteit: Europa investeert, maar de kloof is reëel</h2>
<p>Binnenlandse rekenkracht wordt “in toenemende mate gebruikt als indicator van compute-soevereiniteit” — een manier om de afhankelijkheid van buitenlandse aanbieders te verminderen en de continuïteit van toegang te waarborgen bij exportcontroles of geopolitieke verstoringen. De cijfers laten zien dat Europa snel beweegt, maar vanuit een achterstandspositie: door de staat gesteunde AI-supercomputerclusters in Europa en Centraal-Azië groeiden van <strong>3 naar 44 tussen 2018 en 2025</strong> — de scherpste versnelling van alle regio’s, grotendeels aangedreven door gecoördineerde inspanningen zoals de European High Performance Computing Joint Undertaking (EuroHPC JU). Dat is echte voortgang. Maar China loopt nog steeds voorop met 85 clusters, en Noord-Amerika groeide bijna zevenvoudig tot 41 in dezelfde periode.</p>
<p>Hier is de directe link met edge computing: infrastructuursoevereiniteit gaat niet alleen over wie de grootste trainingssupercomputer bezit. Het gaat evenzeer over <em>waar inferentie plaatsvindt</em> — het dagelijkse gebruik van modellen nadat ze zijn gebouwd. Een organisatie die een model traint op soevereine Europese infrastructuur, maar vervolgens elke query door een buitenlandse cloud-API moet sturen, heeft slechts de helft van het probleem opgelost. Edge- en on-premise-implementatie — modellen lokaal draaien, dicht bij waar de data wordt gegenereerd en gebruikt — is hoe infrastructuursoevereiniteit de dagelijkse operaties daadwerkelijk bereikt in plaats van een beleidsterm te blijven.</p>
</section>
<section id="datasoevereiniteit-europa-stelde-al-de-wereldstandaard" class="level2">
<h2 class="anchored" data-anchor-id="datasoevereiniteit-europa-stelde-al-de-wereldstandaard">Datasoevereiniteit: Europa stelde al de wereldstandaard</h2>
<p>Dit is het gebied waar Europa’s positie werkelijk sterk is, en de Index bevestigt dat met harde cijfers. Datalocalisatiemaatregelen — wettelijke vereisten dat data binnen de grenzen van een land wordt opgeslagen of verwerkt — zijn wereldwijd sterk gestegen sinds 2016, “samenvallend met de implementatie van de AVG in Europa en het daaropvolgende Brussels Effect, waarbij andere landen soortgelijke kaders overnamen.” Europa en Centraal-Azië hebben nu <strong>66 dergelijke maatregelen</strong>, onderdeel van wat het rapport een hoog-lokalisatiecluster noemt, samen met Oost-Azië (77) en sub-Sahara Afrika (71). Noord-Amerika staat daarentegen op slechts 3 maatregelen.</p>
<p>Dat regelgevingskader is in de praktijk alleen zinvol als de infrastructuur bestaat om het te ondersteunen. AVG-niveau databeheer en edge computing zijn natuurlijke partners: gevoelige data — medische dossiers, juridische documenten, landbouwsensordata — fysiek binnen een binnenlandse of zelfs on-premise omgeving houden is veel eenvoudiger wanneer het model dat de verwerking uitvoert lokaal draait in plaats van elke query te versturen naar infrastructuur buiten de jurisdictie.</p>
</section>
<section id="modelsoevereiniteit-het-concentratieprobleem" class="level2">
<h2 class="anchored" data-anchor-id="modelsoevereiniteit-het-concentratieprobleem">Modelsoevereiniteit: het concentratieprobleem</h2>
<p>Modelproductie blijft sterk geconcentreerd. De data van het rapport over openbaar gepubliceerde modellen laat zien dat de Verenigde Staten in 2025 <strong>1.618 cumulatieve modelreleases</strong> bereikten, China <strong>849</strong>, en Europa en Centraal-Azië <strong>666</strong> — met het VK (229) en Frankrijk (141) als de voornaamste Europese bijdragers. Europa staat wereldwijd op een verre derde plaats, hoewel de trajectorie stabiel is in plaats van stagnerend.</p>
<p>Dit doet er toe omdat modelsoevereiniteit bepaalt of een organisatie een model werkelijk kan <em>aanpassen</em> aan het eigen domein — fijnregelen op propriëtaire juridische, medische of landbouwdata, bijvoorbeeld — in plaats van beperkt te zijn tot wat een buitenlands general-purpose model toevallig ondersteunt. Open-source raamwerken hebben de drempel verlaagd, en dat is precies waarom kleinere, gespecialiseerde modellen — het soort dat realistisch aan de edge kan draaien, op bescheiden hardware, dicht bij de data — een levensvatbare Europese strategie worden in plaats van een bijzaak.</p>
</section>
<section id="applicatiesoevereiniteit-hier-heeft-europa-echte-ruimte-om-te-concurreren" class="level2">
<h2 class="anchored" data-anchor-id="applicatiesoevereiniteit-hier-heeft-europa-echte-ruimte-om-te-concurreren">Applicatiesoevereiniteit: hier heeft Europa echte ruimte om te concurreren</h2>
<p>Opvallend genoeg merkt het rapport op dat de applicatielaag — hoe AI daadwerkelijk wordt ingezet binnen specifieke sectoren zoals gezondheidszorg, financiën of landbouw — “minder geconcentreerd is dan de model- of rekenlaag,” waardoor landen “meer ruimte hebben… om niche-specialisaties te ontwikkelen.” Duitslands kracht ligt in industriële en productietoepassingen; Estlands in onderwijstechnologie. Dit is precies de laag waarop een kleinere, soevereiniteitsbewuste Europese organisatie kan concurreren op domeindiepte in plaats van op ruwe modelschaal — wat opnieuw een voordeel is voor een edge-geschikte, domeinspecifieke implementatie boven een one-size-fits-all cloud-API.</p>
</section>
<section id="talentsoevereiniteit-een-stille-waarschuwing" class="level2">
<h2 class="anchored" data-anchor-id="talentsoevereiniteit-een-stille-waarschuwing">Talentsoevereiniteit: een stille waarschuwing</h2>
<p>De vijfde dimensie — het vermogen om AI-talent te ontwikkelen en te behouden — laat een minder zichtbare maar structureel belangrijke trend zien: grensoverschrijdende AI-talentcirculatie is wereldwijd vertraagd, waarbij zowel in- als uitstroom afnemen, wat betekent dat talent steeds meer binnen nationale of regionale systemen blijft. Voor Europa snijdt dit aan twee kanten — behouden talent is talent dat niet verloren gaat aan de VS, maar het betekent ook dat de regio er niet simpelweg van uit kan gaan dat ze zich een weg uit een capaciteitskloof kan importeren. Het opbouwen van de binnenlandse expertise om soevereine AI-infrastructuur te ontwerpen, te implementeren en te onderhouden maakt zelf deel uit van de soevereiniteitsversterking.</p>
</section>
<section id="waarom-dit-leidt-tot-draai-het-zelf-dicht-bij-huis" class="level2">
<h2 class="anchored" data-anchor-id="waarom-dit-leidt-tot-draai-het-zelf-dicht-bij-huis">Waarom dit leidt tot “draai het zelf, dicht bij huis”</h2>
<p>Zet deze vijf dimensies samen en er ontstaat een helder strategisch beeld voor Europese organisaties, niet alleen Europese overheden:</p>
<ol type="1">
<li><strong>Je opereert al onder enkele van de strengste gegevensbeschermingsvereisten ter wereld</strong> (datasoevereiniteit) — maar dat kader bijt pas als jouw infrastructuurkeuzes de verwerking daadwerkelijk lokaal houden.</li>
<li><strong>De rekenkracht wordt gebouwd</strong> (infrastructuursoevereiniteit) — Europese supercomputercapaciteit groeide sneller dan in enige andere regio tussen 2018 en 2025 — maar trainingscapaciteit alleen helpt niet als elke inferentie-aanroep de regio nog steeds verlaat.</li>
<li><strong>Open-source modellen hebben de drempel voor modelsoevereiniteit verlaagd</strong> — wat betekent dat kleinere, gespecialiseerde, fijn-afstembare modellen realistisch zijn, zelfs voor organisaties ver onder de staatsschaal.</li>
<li><strong>De applicatielaag is waar Europa echt kan winnen</strong> — domeinspecifieke implementatie, niet algemene schaal, is de concurrentieopening waar de data op wijst.</li>
</ol>
<p>Edge computing is het praktische mechanisme dat alle vier samenvoegt. Het is wat een compliance-gevoelige sector — gezondheidszorg, juridische dienstverlening, landbouw — in staat stelt daadwerkelijk te profiteren van Europa’s regulatoire kracht in plaats van erdoor ondermijnd te worden, omdat de data en het model nooit het gebouw hoeven te verlaten, laat staan de jurisdictie.</p>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>De Stanford AI Index gebruikt de term “edge computing” niet, maar zijn eigen soevereiniteitskader maakt er impliciet en herhaaldelijk het geval voor: soevereiniteit is alleen reëel wanneer die helemaal doorloopt tot waar inferentie daadwerkelijk plaatsvindt. Voor Europa specifiek — met werkelijk sterke gegevensbeschermingswetgeving, snel groeiende maar nog steeds tweede-tier rekenkracht, een groeiende basis van open, aanpasbare modellen, en een echte opening op de applicatielaag — is het draaien van eigen modellen op eigen infrastructuur, zo dicht bij de edge als de use case vraagt, geen defensieve of nostalgische keuze. Het is de versie van de strategie die de data daadwerkelijk ondersteunt.</p>
<p><em>Bron: Stanford HAI, <a href="https://hai.stanford.edu/ai-index">2026 AI Index Report</a>, hoofdstuk 8.3, “AI Sovereignty.”</em></p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Stanford HAI (2026), <em>AI Index Report</em> — <a href="https://hai.stanford.edu/ai-index">hai.stanford.edu/ai-index</a></li>
<li>Bommasani et al.&nbsp;(2021), <em>On the Opportunities and Risks of Foundation Models</em> — <a href="https://arxiv.org/abs/2108.07258">arXiv:2108.07258</a></li>
<li>European Commission (2024), <em>EU Artificial Intelligence Act</em> — <a href="https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32024R1689">eur-lex.europa.eu</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — hoe je architectuur bouwt die een modelwissel of exportcontrolebeslissing overleeft</li>
<li><a href="../blog/het-autonome-bedrijf-besturen.html">Het autonome bedrijf besturen</a> — soevereiniteit en governance als één vraag, niet twee</li>
<li><a href="../blog/klein-gespecialiseerd-model-vs-frontier.html">David tegen Goliath: klein model versus frontier</a> — het bewijs dat kleine, lokale modellen bijna frontier-prestaties kunnen halen op specifieke taken</li>
<li><a href="../blog/een-soevereine-ai-agent-bouwen.html">Wat er nodig is om een soevereine AI-agent te bouwen</a> — de praktische achtstapdsgids voor het bouwen van een systeem dat jouw organisatie werkelijk bezit</li>
</ul>


</section>

 ]]></description>
  <category>soevereiniteit-edge</category>
  <guid>https://trajectorium.ai/nl/blog/waarom-europa-eigen-ai-modellen-nodig-heeft.html</guid>
  <pubDate>Sat, 03 Oct 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Van tekst naar actie: NLP-pipelines omzetten in agentische workflows</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/van-tekst-naar-agentische-workflows.html</link>
  <description><![CDATA[ 




<p>De meeste organisaties beschikken al over een enorme hoeveelheid ongestructureerde tekst: handleidingen, dossiers, logboeken, contracten, jaren aan interne correspondentie. De vraag die dit artikel beantwoordt is heel praktisch: hoe zet je die ruwe tekst om in de daadwerkelijke trainingsdata die het geheugen, de tools, de redenering en de veiligheidscontroles van een agent aandrijft? En waarom doet die conversiepipeline er meer toe dan welk basismodel je er achter hangt?</p>
<section id="waarom-het-model-niet-jouw-slotgracht-is" class="level2">
<h2 class="anchored" data-anchor-id="waarom-het-model-niet-jouw-slotgracht-is">Waarom het model niet jouw slotgracht is</h2>
<p>Het is verleidelijk te denken dat een sterk LLM koppelen aan een systeem-prompt <em>bouwen</em> aan een agent is. Dat is het niet. Volledig vertrouwen op systeem-prompts en Markdown-“skill files” geeft je slechts oppervlakkige controle — je behandelt het model als een black box en bouwt, nog belangrijker, een afhankelijkheid op van iemand anders’ roadmap in plaats van van een eigen systeem. Veel teams die beweren een agent te hebben “gebouwd”, hebben in werkelijkheid alleen instructietekst over een general-purpose model gelegd. Dat is de <strong>God-Prompt-val</strong>, en die is kwetsbaar: rigide als-dan-regels kunnen de oneindige lange staart van uitzonderingen die echte tekstmining en operaties bevatten, niet omvatten.</p>
<p>Het echte concurrentievoordeel — de slotgracht — zit helemaal niet in het onderliggende LLM. Big Tech-modellen zijn generalisten: ze beheersen meerstapsredeneerketens, native tool-integratie en recursieve zelfverbetering, maar wat je via hun API’s krijgt, is grotendeels een sandbox — systeem-prompts, function calling en standaard vectorzoekopdrachten. Als de waarde van jouw bedrijf puur gebonden is aan welk model je ook aanroept, sta je in de weg van een vloedgolf: de volgende modelupdate kan simpelweg absorberen wat jij hebt gebouwd. De slotgracht zit in de <strong>architectuur rondom het model</strong> — en die architectuur moet getraind zijn op <em>jouw</em> tekst.</p>
</section>
<section id="stap-1-van-ruwe-tekst-naar-gestructureerde-json" class="level2">
<h2 class="anchored" data-anchor-id="stap-1-van-ruwe-tekst-naar-gestructureerde-json">Stap 1: Van ruwe tekst naar gestructureerde JSON</h2>
<p>Ruwe tekst — zeker uit PDF’s — is gebouwd voor menselijke ogen, niet voor machineredenering. Een LLM dat een vlakke tekstdump leest, kan niet betrouwbaar een hoofdstuktitel onderscheiden van een technische definitie, of een waarschuwingslabel van een procedurestap. Die ambiguïteit is precies wat downstream agentische componenten laat breken, dus de eerste echte engineeringstap is het omzetten van ongestructureerde tekst in een hiërarchisch, machine-leesbaar <strong>JSON-schema</strong> — een “foundationele ontologie” die expliciet hoofdstukken koppelt aan subonderwerpen, definities en procedures.</p>
<p>Deze stap doet er meer toe dan het lijkt, omdat fouten zich voorplanten. Als de JSON-conversie de hiërarchie platslaat of niet-gerelateerde alinea’s samenvoegt:</p>
<ul>
<li><strong>RAG-chunks verliezen hun bovenliggende context</strong> — een opgehaalde procedure zoals “beëindig het kwaadaardige proces” kan stilzwijgend het feit verliezen dat deze alleen op één specifiek scenario van toepassing is, en de reranker downstream kan het juiste antwoord niet naar boven halen.</li>
<li><strong>Sequentiële workflows worden in de verkeerde volgorde aangeleerd</strong> — als de Fase 1/2/3-structuur niet behouden blijft, kan de <em>fine-tuned</em> planningslaag van een agent leren stap 3 vóór stap 1 uit te voeren.</li>
<li><strong>Kennisgrafen verliezen hun verbindingen</strong> — entiteitsrelaties die niet hiërarchisch zijn vastgelegd, kunnen later geen multi-hop-redenering ondersteunen.</li>
<li><strong>RLHF-voorkeursparingen verliezen hun rechtvaardiging</strong> — zonder de omringende context kan een Critic-agent niet beoordelen of een actie daadwerkelijk een regel heeft geschonden.</li>
</ul>
<p>Zorg één keer, vroeg in het proces, voor de juiste structuur, en elke downstream trainingspipeline profiteert ervan. Doe het fout, en elk downstream component erft de fout.</p>
</section>
<section id="stap-2-geheugen-rag-en-neurale-herrangschikking-als-bedrijfsgeheugen" class="level2">
<h2 class="anchored" data-anchor-id="stap-2-geheugen-rag-en-neurale-herrangschikking-als-bedrijfsgeheugen">Stap 2: Geheugen — RAG en neurale herrangschikking als bedrijfsgeheugen</h2>
<p>Zodra je tekst gestructureerd is, wordt die de ruggengraat van het geheugen van de agent. De mechanismen zijn bekend, maar het loont de moeite er precies over te zijn:</p>
<ol type="1">
<li><strong>Chunking</strong> — splits lange documenten op in semantisch samenhangende secties (circa 500 woorden is een veelgebruikt doel), geen willekeurige stukken van vaste lengte.</li>
<li><strong>Indexering</strong> — zet chunks om in vectoren en sla ze op in een vectordatabase (Pinecone, pgvector, Azure AI Search).</li>
<li><strong>Retrieval</strong> — haal bij een query de meest relevante chunks op.</li>
<li><strong>Augmentatie</strong> — instrueer het model om <em>uitsluitend</em> die opgehaalde bronnen te gebruiken.</li>
<li><strong>Generatie</strong> — produceer een geciteerd, feitelijk antwoord.</li>
</ol>
<p>Een gewone vectorzoekopdracht vindt dingen die <em>gelijkaardig</em> zijn; het vindt niet betrouwbaar het ding dat <em>correct</em> is. Dat is de taak van een <strong>neurale reranker</strong> — een <em>fine-tuned</em> cross-encoder getraind op je eigen query/beste-antwoord-paren, die de top 50-100 kandidaten opnieuw bekijkt en het werkelijke “doorslaggevende” antwoord naar positie één duwt. Dit vermindert hallucinaties drastisch en lost het “lost in the middle”-probleem op waarbij een model dat begraven is in twintig vergelijkbare chunks het ene relevante chunk mist. Dit goed opbouwen vereist echte infrastructuurkeuzes: een sterk embeddingmodel (bezuinig hier niet op — een slechte vertaler levert slechte zoekopdrachten op), een orkestratieraamwerk zoals LlamaIndex of LangChain om bestanden, database en model te verbinden, en een betrouwbare documentparser voor de rommelige PDF’s waarmee je begint.</p>
</section>
<section id="stap-3-tools-tekst-omzetten-in-operationele-ledematen" class="level2">
<h2 class="anchored" data-anchor-id="stap-3-tools-tekst-omzetten-in-operationele-ledematen">Stap 3: Tools — tekst omzetten in operationele ledematen</h2>
<p>Skills en tools zijn de “ledematen” van een agentische architectuur — gestructureerde definities (API-schema’s, JSON-functies, SQL-interfaces) waarmee een model kan handelen in plaats van alleen praten. Propriëtaire interne API’s zijn waar dit een echte bedrijfsslotgracht wordt: een general-purpose model van een grote aanbieder is juridisch en technisch geblokkeerd van het aanraken van jouw interne systemen, hoe slim het ook is. Een agent die is aangesloten op jouw eigen elektronisch patiëntendossier, CRM of monitoringtools kan echte historische waarden ophalen, ze kruislings raadplegen en handelen op basis van live context in plaats van te gokken vanuit voorgetrainde gewichten.</p>
<p>Dit is ook waar multi-hop-orkestratie noodzakelijk wordt in plaats van optioneel. Complexe professionele taken lossen zelden op in één zoekopdracht — een agent die een HR-database (wie heeft dienst), een monitoringtool (huidige belasting) en een uitvoeringstool (herstart de service) aan elkaar koppelt, voert een <strong>OODA-lus</strong> uit: waarnemen, oriënteren, beslissen, handelen, en herhalen totdat het doel bereikt is, waarbij het plan wordt aangepast naarmate elke tool-aanroep nieuwe informatie teruggeeft.</p>
</section>
<section id="stap-4-redenering-en-een-digitale-peer-reviewer" class="level2">
<h2 class="anchored" data-anchor-id="stap-4-redenering-en-een-digitale-peer-reviewer">Stap 4: Redenering en een digitale peer reviewer</h2>
<p>Planningsraamwerken zoals Chain-of-Thought, Tree-of-Thought en Skeleton-of-Thought geven een groot model ruimte om een taak op te splitsen in subdoelen met afhankelijkheden in plaats van in één stap te antwoorden. Maar een groot, algemeen model dat een eerste versie genereert, profiteert nog steeds van een tweede, veel kleiner en gespecialiseerder model dat het beoordeelt — een <strong>Critic</strong> — <em>fine-tuned</em> specifiek op de correcties van jouw eigen organisatie.</p>
<p>De trainingsdata voor die critic is concreet en verzamelbaar: de afgewezen of bewerkte ruwe uitvoer, de door experts gecorrigeerde versie, de reden voor de correctie (“schendt artikel 4.2”), en eventuele harde negatieve beperkingen of compliance-grenzen. Als ruwe schaalrichtlijn: 50-100 voorbeelden levert een prototype op, 500-1.000 een productiewaardige critic, en 2.000+ begint echte domeinexpertise te benaderen. Dit is precies het soort propriëtaire, praktijkgerichte correctiedata waartoe een general-purpose LLM-aanbieder nooit toegang zal hebben — en dat is precies waarom het een duurzaam voordeel is in plaats van een tijdelijk.</p>
</section>
<section id="stap-5-guardrails-waar-institutioneel-vertrouwen-werkelijk-vandaan-komt" class="level2">
<h2 class="anchored" data-anchor-id="stap-5-guardrails-waar-institutioneel-vertrouwen-werkelijk-vandaan-komt">Stap 5: Guardrails — waar institutioneel vertrouwen werkelijk vandaan komt</h2>
<p>Hallucinatie- en compliancerisico is de grootste enkelvoudige drempel voor echte institutionele AI-adoptie, dus de architectuur heeft onafhankelijke verificatielagen nodig rondom het kernmodel, niet daarin ingebakken:</p>
<ul>
<li><strong>Feitencontrole</strong> — vergelijk elk concept met de RAG-waarheidsbron; elke bewering moet citeerbaar zijn.</li>
<li><strong>Veiligheidsfilters</strong> — handhaving van juridische, ethische en compliance-beperkingen, waarbij uitvoer die gedefinieerde grenzen overschrijdt, wordt geblokkeerd.</li>
<li><strong>Zelfconsistentiecontroles</strong> — voer dezelfde query uit via meerdere redeneerroutes en verwerp antwoorden die het niet met elkaar eens zijn.</li>
</ul>
<p>Niets hiervan mag volledig worden gedelegeerd aan een andere instantie van hetzelfde probabilistische model dat zichzelf bewaakt. Deterministische, hardgecodeerde controles — invoerbeveiliging voordat een prompt de hoofdagent ook maar bereikt, strikte schema-handhaving op uitvoer — bieden het vangnet dat een puur LLM-gebaseerde critic niet kan garanderen.</p>
</section>
<section id="het-vliegwiel" class="level2">
<h2 class="anchored" data-anchor-id="het-vliegwiel">Het vliegwiel</h2>
<p>Zet deze onderdelen samen en er gebeurt iets samengesteld. Elke echte interactie genereert een <strong>redeneerdrieluik</strong>: de observatie die het systeem zag, de actie of tool-aanroep die het koos, en de consequentie — succes of mislukking. Die data blijft niet liggen; ze verfijnt je rerankers, je critics en je planners, wat betere uitkomsten oplevert, wat meer gebruik stimuleert, wat meer data oplevert. Dit is het vliegwiel dat een eenmalig tekstminingproject omzet in een samengesteld, verdedigbaar bedrijfsmiddel — en het is precies de dataset die je later in staat stelt om te fijnregelen rondom elke nieuwe generatie basismodellen, in plaats van erdoor vervangen te worden.</p>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>Tekst omzetten in agentische trainingsdata is geen enkele technische truc — het is een pipeline: structureer de tekst in een getrouwe JSON-hiërarchie, gebruik die hiërarchie om een echte geheugenlaag te bouwen (RAG plus herrangschikking), extraheer de API-definities die de agent handen geven, verzamel de correctiedata die een critic traint, en omhul dat alles met deterministische guardrails. Doe dit goed met je eigen propriëtaire tekst, en je huurt geen intelligentie van een basismodelleverancier — je bouwt een architectuur, en een dataset, die waardevoller wordt elke keer dat die wordt gebruikt.</p>
<p><em>Voor een concreet domeinvoorbeeld van deze exacte </em>pipeline* toegepast op agrarische logboeken en institutionele kennis, zie <a href="../blog/van-logboeken-naar-agent-trainingsdata.html">Van de volgende boerenknecht naar de volgende AI-agent</a>.*</p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Lewis et al.&nbsp;(2020), <em>Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks</em> — <a href="https://arxiv.org/abs/2005.11401">arXiv:2005.11401</a></li>
<li>Ouyang et al.&nbsp;(2022), <em>Training Language Models to Follow Instructions with Human Feedback</em> (InstructGPT) — <a href="https://arxiv.org/abs/2203.02155">arXiv:2203.02155</a></li>
<li>Rafailov et al.&nbsp;(2023), <em>Direct Preference Optimization</em> — <a href="https://arxiv.org/abs/2305.18290">arXiv:2305.18290</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/wat-is-een-ai-agent.html">Wat is een AI-agent?</a> — wat de zeven componenten die hier worden getraind eigenlijk zijn</li>
<li><a href="../blog/van-logboeken-naar-agent-trainingsdata.html">Van logboeken naar agent-trainingsdata</a> — dezelfde <em>pipeline</em> toegepast op een echte agrarische kennisbase</li>
<li><a href="../blog/klein-gespecialiseerd-model-vs-frontier.html">David tegen Goliath: klein model versus frontier</a> — wat een goed getraind gespecialiseerd model zo gebouwd kan bereiken</li>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — waarom het bouwen van deze propriëtaire architectuur er strategisch toe doet</li>
</ul>


</section>

 ]]></description>
  <category>tekst-naar-actie</category>
  <guid>https://trajectorium.ai/nl/blog/van-tekst-naar-agentische-workflows.html</guid>
  <pubDate>Sat, 26 Sep 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Wat is een AI-agent? Van chatbot naar autonoom systeem</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/wat-is-een-ai-agent.html</link>
  <description><![CDATA[ 




<p>Vraag tien mensen wat een “AI-agent” is en je krijgt tien verschillende antwoorden — sommige zelfverzekerd onjuist. Een deel van de verwarring is dat het woord niet nieuw is. Een ander deel is dat “agent” stilletjes een marketinglabel is geworden dat op alles met een chatinterface wordt geplakt. Dit artikel snijdt daar doorheen: wat een agent feitelijk is, waarom het idee in de jaren negentig mislukte, waarom het nu werkt, en wat er eigenlijk in zo’n systeem zit.</p>
<section id="agents-bestaan-al-langer-dan-je-denkt" class="level2">
<h2 class="anchored" data-anchor-id="agents-bestaan-al-langer-dan-je-denkt">Agents bestaan al langer dan je denkt</h2>
<p>Nog voor ChatGPT definieerde <em>Artificial Intelligence: A Modern Approach</em> (Russell &amp; Norvig, 1995) een agent als alles wat:</p>
<ol type="1">
<li>zijn omgeving waarneemt,</li>
<li>invoer uit die omgeving percipieert,</li>
<li>over die invoer redeneert, en</li>
<li>via acties op de omgeving inwerkt.</li>
</ol>
<p>Die definitie vermeldt taalmodellen niet — ze omvat thermostaten, robots, webcrawlers en zelfrijdende auto’s. Wat een gewoon “computerprogramma” onderscheidt van een agent, is dat een agent <em>autonoom</em> opereert, voortduurt in de tijd, zich aanpast aan verandering en doelen nastreeft in plaats van simpelweg één instructie uit te voeren en te stoppen.</p>
<p>In de late jaren negentig was “agent” overal — intelligente agents, software-agents, persoonlijke digitale assistenten. Ze werden gebouwd op symbolische AI, expertsystemen en regelgebaseerde redenering. En ze slaagden er grotendeels niet in de hype waar te maken. API’s waren primitief, het web was nauwelijks programmatisch toegankelijk, geheugen was statisch en taalbegrip beperkte zich tot het herkennen van trefwoorden. De concepten — geheugen, doelen, planning, een interface met de wereld — waren solide. De technologie om ze te laten werken was er simpelweg nog niet.</p>
</section>
<section id="wat-er-veranderde-het-llm-is-de-ontbrekende-motor" class="level2">
<h2 class="anchored" data-anchor-id="wat-er-veranderde-het-llm-is-de-ontbrekende-motor">Wat er veranderde: het LLM is de ontbrekende motor</h2>
<p>Een handig mentaal model: <strong>denk aan een losstaand LLM als een hersenen in een pot.</strong> Het kan redeneren in taal, maar heeft geen lichaam, geen zintuigen buiten de tekst die je het geeft, en geen geheugen zodra het gesprek eindigt. Een agent geeft dat brein:</p>
<ul>
<li>een <strong>lichaam</strong> — tools die het kan aanroepen om in de wereld te handelen,</li>
<li><strong>zintuigen</strong> — retrievalsystemen en API’s die verse informatie aanleveren,</li>
<li><strong>geheugen</strong> — contextvensters en externe databases, en</li>
<li><strong>doelen</strong> — een planner die bepaalt wat er als volgende moet gebeuren.</li>
</ul>
<p>Dat is het moment waarop een taalmodel ophoudt een welbespraakte autocomplete te zijn en iets wordt dat kan handelen.</p>
<p>Dit is belangrijk omdat losstaande LLM’s reële, goed gedocumenteerde beperkingen hebben: ze hallucineren zelfverzekerd, hun kennis heeft een afkapdatum, hun contextvenster is eindig, ze kunnen niet zelfstandig het web raadplegen of een API aanroepen, ze redeneren slecht in één stap over meerstapsproblemen, en ze hebben geen ingebouwde manier om hun eigen fouten op te merken of te corrigeren. Agentische architectuur elimineert deze beperkingen niet — maar geeft je wel het raamwerk om ermee om te gaan.</p>
</section>
<section id="de-zeven-dingen-die-een-agentarchitectuur-nodig-heeft" class="level2">
<h2 class="anchored" data-anchor-id="de-zeven-dingen-die-een-agentarchitectuur-nodig-heeft">De zeven dingen die een agentarchitectuur nodig heeft</h2>
<p>Of je nu naar een symbolisch systeem uit de jaren negentig kijkt of een LLM-gebaseerd systeem uit 2026, een werkende agentarchitectuur heeft steeds dezelfde zeven ingrediënten nodig:</p>
<ul>
<li><strong>Geheugen</strong> (kort- en langetermijn)</li>
<li><strong>Toegang tot kennis</strong></li>
<li><strong>Gebruik van tools / uitvoering van acties</strong></li>
<li><strong>Planning &amp; besturingslus</strong></li>
<li><strong>Doelbeheer</strong></li>
<li><strong>Verificatie &amp; guardrails</strong></li>
<li><strong>Een gebruikers-/systeeminterface</strong></li>
</ul>
<p>Wat er veranderd is, is niet de lijst — maar de kracht achter elk onderdeel. Laten we de onderdelen doorlopen die er in de praktijk het meest toe doen.</p>
<section id="geheugen-meer-dan-een-chatgeschiedenis" class="level3">
<h3 class="anchored" data-anchor-id="geheugen-meer-dan-een-chatgeschiedenis">Geheugen: meer dan een chatgeschiedenis</h3>
<p>Een losstaand LLM is stateloos — zodra de prompt eindigt, vergeet het alles. Een werkende agent heeft meerdere <em>soorten</em> geheugen nodig: kortetermijn (de gespreksgeschiedenis in het contextvenster), langetermijn (externe vectordatabases en kennisbanken), episodisch (logboeken van eerdere interacties) en semantisch (kennis opgehaald via RAG). Retrieval-Augmented Generation fungeert in het bijzonder als het feitelijke anker van de agent — het is de geverifieerde database die de redeneermotor wordt gedwongen te raadplegen in plaats van te gokken.</p>
<p>Dit onderscheid is belangrijker dan het klinkt: het neurale netwerk van een LLM is uitstekend in het <em>generaliseren</em> van patronen om situaties aan te pakken die het nooit expliciet heeft gezien. Maar je wilt niet dat het generaliseert — dat wil zeggen: gokt — over een specifiek feit. Een gehallucinereerd IP-adres, een juridische clausule of een medische dosering is geen eigenzinnige fout; in een professionele context is het een ernstige tekortkoming. RAG, en de neurale herrangschikking die daarmee gepaard gaat, bestaat precies om generalisatie en feitelijke precisie in balans te houden: herrangschikking werkt als een senior medewerker die 50–100 opgehaalde kandidaten beoordeelt en het enig juiste antwoord naar boven dwingt, in plaats van het model te laten verdrinken in “lost in the middle”-ruis.</p>
</section>
<section id="actie-interface-doen-niet-alleen-praten" class="level3">
<h3 class="anchored" data-anchor-id="actie-interface-doen-niet-alleen-praten">Actie-interface: doen, niet alleen praten</h3>
<p>Het bepalende verschil tussen een LLM en een agent is dat een agent <em>dingen doet</em>. Zonder toegang tot tools kan een LLM alleen reageren op “annuleer mijn bestelling #99887” met “Dat kan ik niet doen, neem contact op met de klantenservice.” Met een tool-interface — API-aanroepen, function calling, databasequery’s, code-uitvoering — kan hetzelfde model de bestelling daadwerkelijk annuleren.</p>
<p>Dit volgt doorgaans het <strong>ReAct</strong>-patroon: het model redeneert over wat het moet doen, doet vervolgens een tool-aanroep, wacht op het werkelijke resultaat en zet dan de volgende stap. Dat wachten is onvermijdelijk — een LLM kan geen API-aanroep uitvoeren en het resultaat gebruiken binnen één ononderbroken tekststroom. Complexe taken zijn daardoor inherent <strong>meerstapsprocessen</strong>: plannen, handelen, waarnemen, reflecteren, opnieuw handelen, telkens dichter bij een oplossing.</p>
</section>
<section id="doelbeheer-moeilijker-dan-het-lijkt" class="level3">
<h3 class="anchored" data-anchor-id="doelbeheer-moeilijker-dan-het-lijkt">Doelbeheer: moeilijker dan het lijkt</h3>
<p>LLM-gebaseerde agents laten gebruikers doelen in gewone taal uitdrukken (“plan mijn reis voor onder de €500”) en splitsen dat op in subdoelen — budget, vluchten, hotels, activiteiten. Sommige frameworks evalueren prioriteiten dynamisch opnieuw bij elke iteratie van de lus, waarbij harde regelgebaseerde beperkingen worden gecombineerd met scoringsfuncties en, wanneer doelen onduidelijk zijn, een mens in de lus.</p>
<p>Zelfs met dat alles blijft doelbeheer moeilijk. Modellen zijn van nature niet goed in het oplossen van afwegingen zonder expliciete scoresystemen. Agents kunnen een doel halverwege loslaten als het niet wordt versterkt. En een vaag doel (“maak me succesvol”) zorgt er eerder voor dat een agent rondjes draait dan dat het handelt.</p>
</section>
<section id="critics-reflectie-en-guardrails-twijfel-inbouwen" class="level3">
<h3 class="anchored" data-anchor-id="critics-reflectie-en-guardrails-twijfel-inbouwen">Critics, reflectie en guardrails: twijfel inbouwen</h3>
<p>Hier is een onderschat probleem: LLM’s zijn sycofantisch. Omdat ze via RLHF zijn <em>fine-tuned</em> om vriendelijk en behulpzaam te zijn, neigen ze ernaar te zeggen wat je wilt horen — inclusief over hun eigen plannen. Zonder ingreep maakt dit een agent overmoedig in zijn eigen slechte ideën.</p>
<p>De oplossing is architecturaal, niet motivationeel: geef een <strong>Critic-agent</strong> een apart, adversarieel mandaat — zoek de zwakke punten, speel de advocaat van de duivel, weiger vriendelijk te zijn. Combineer dat met een <strong>Reflectie-agent</strong> die periodiek stopt en vraagt: “lost deze stap nog het oorspronkelijke probleem op, of zijn we het spoor kwijt?” Samen maken deze van een lineaire, foutgevoelige pijplijn een zichzelf corrigerende lus: een Actor stelt voor, een Critic breekt het af, een Reflector synthetiseert concrete aanpassingen, en de Actor probeert het opnieuw — totdat de Critic tevreden is.</p>
<p>Daar bovenop zit een laag <strong>guardrails</strong> die nooit volledig aan een ander LLM mag worden overgelaten, omdat probabilistische systemen uiteindelijk op probabilistische wijze falen. Deterministische, hardgecodeerde controles — semantische routering om jailbreaks en injecties te onderscheppen voordat ze de hoofdagent bereiken, strikte uitvoerparsers die misvormde reacties afwijzen — bieden een ononderhandelbaar vangnet. Sommige teams voegen een “grondwet” toe: een set onveranderlijke principes die een apart model controleert in de uiteindelijke uitvoer, volledig losgekoppeld van de taakuitvoeringslogica.</p>
</section>
</section>
<section id="waarom-dit-er-nu-toe-doet" class="level2">
<h2 class="anchored" data-anchor-id="waarom-dit-er-nu-toe-doet">Waarom dit er nu toe doet</h2>
<p>Niets hiervan is bereikbaar met alleen eenvoudige retrieval. Overweeg vier voorbeelden van wat agentische architecturen mogelijk maken die gewone RAG niet kan:</p>
<ul>
<li><strong>Autonoom onderzoek en synthese</strong> — het plannen van meerstapsquery’s over medische, juridische en financiële domeinen, het identificeren van conflicterende studies, en het produceren van een gestructureerd rapport zonder dat een mens elke stap aanstuurt.</li>
<li><strong>End-to-end probleemoplossing</strong> — een probleem diagnosticeren via gesprek, diagnostische API’s aanroepen om systeemlogboeken te controleren, en autonoom een oplossing uitvoeren.</li>
<li><strong>Strategische beslissingsondersteuning</strong> — een brede vraag zoals “analyseer ons marktuitbreidingsrisico” opsplitsen in subquery’s, live concurrentiedata ophalen, berekeningen uitvoeren en strategie aanpassen naarmate bevindingen binnenkomen.</li>
<li><strong>Forensics en compliancemonitoring</strong> — continu logboeken of communicatie bewaken op patronen van zorgelijk gedrag en escalatie activeren wanneer drempelwaarden worden overschreden.</li>
</ul>
<p>Geen van deze taken is eenmalige tekstgeneratie. Ze vereisen geheugen over stappen heen, tools die de echte wereld bereiken, een plan dat kan worden herzien, en een mechanisme om de eigen fouten van het systeem op te vangen voordat ze andermans probleem worden.</p>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>Een AI-agent is geen chatbot met een langer geheugen, en het is ook geen rebrand van een regelgebaseerd systeem uit de jaren negentig. Het is wat er gebeurt wanneer een taalmodel — voor het eerst werkelijk in staat tot open-ended redenering — wordt gewikkeld in dezelfde zeven componenten die AI-onderzoekers dertig jaar geleden al identificeerden: geheugen, kennistoegang, gebruik van tools, planning, doelbeheer, verificatie en een interface om door te handelen. De concepten zijn niet veranderd. Wat veranderde, is dat we eindelijk een motor hebben die krachtig genoeg is om ze te laten werken.</p>
<p><em>Dit artikel is een overzicht op hoog niveau. Latere artikelen in deze reeks gaan dieper in op specifieke componenten — <a href="../blog/van-tekst-naar-agentische-workflows.html">RAG-architecturen en neurale herrangschikking</a>, <a href="../blog/het-autonome-bedrijf-besturen.html">multi-agent-orkestratie en governance</a> en <a href="../blog/van-logboeken-naar-agent-trainingsdata.html">de trainingsdata die nodig is om deze componenten te specialiseren</a>.</em></p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Russell &amp; Norvig (2020), <em>Artificial Intelligence: A Modern Approach</em> (4e druk) — <a href="http://norvig.com/aima.html">norvig.com/aima.html</a></li>
<li>Yao et al.&nbsp;(2022), <em>ReAct: Synergizing Reasoning and Acting in Language Models</em> — <a href="https://arxiv.org/abs/2210.03629">arXiv:2210.03629</a></li>
<li>Wang et al.&nbsp;(2023), <em>A Survey on Large Language Model Based Autonomous Agents</em> — <a href="https://arxiv.org/abs/2308.11432">arXiv:2308.11432</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/van-tekst-naar-agentische-workflows.html">Van tekst naar actie: NLP-pipelines omzetten in agentische workflows</a> — hoe je de trainingsdata bouwt achter elk van deze componenten</li>
<li><a href="../blog/het-autonome-bedrijf-besturen.html">Het autonome bedrijf besturen</a> — wie verantwoordelijk is als de agent handelt</li>
<li><a href="../blog/waarom-nlp-eindelijk-werkt.html">Waarom NLP eindelijk werkt</a> — de <em>transformer</em>-architectuur die agents mogelijk maakte</li>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — waarom de architectuur rondom het model er meer toe doet dan het model zelf</li>
</ul>


</section>

 ]]></description>
  <category>fundamenten</category>
  <guid>https://trajectorium.ai/nl/blog/wat-is-een-ai-agent.html</guid>
  <pubDate>Sat, 12 Sep 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Adversariale aanvallen: hoe een paar onzichtbare pixels of één omgewisseld woord een AI kan misleiden</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/adversariale-aanvallen-afbeeldingen-en-tekst.html</link>
  <description><![CDATA[ 




<p>Een afbeelding van een panda, correct geclassificeerd door een neuraal netwerk met 57% zekerheid, krijgt een kleine hoeveelheid zorgvuldig berekend ruis toegevoegd — onzichtbaar voor het menselijk oog, de afbeelding ziet er nog precies uit als een panda — en hetzelfde netwerk classificeert het nu als een gibbon met meer dan 99% zekerheid. Dit is geen hypothetisch scenario; het is een van de grondleggende demonstraties van wat een <strong><em>adversarial attack</em></strong> wordt genoemd, en de onderliggende kwetsbaarheid blijkt tekstmodellen net zo goed te treffen als beeldmodellen, als je weet waar je moet duwen. Dit artikel behandelt hoe deze aanvallen er daadwerkelijk uitzien in beide domeinen, en wat werkelijk werkt als verdediging — voortbouwend op het <a href="../blog/pruning-quantization-distillation.html">eerdere artikel over modelcompressie</a>, dat deel van het antwoord blijkt te zijn, maar lang niet alles.</p>
<section id="waarom-dit-überhaupt-mogelijk-is" class="level2">
<h2 class="anchored" data-anchor-id="waarom-dit-überhaupt-mogelijk-is">Waarom dit überhaupt mogelijk is</h2>
<p>Elk getraind model trekt een beslissingsgrens door een extreem hoog-dimensionale ruimte, die “panda” scheidt van “gibbon,” of “positieve recensie” van “negatieve recensie.” Die grens wordt geleerd uit data en wordt gevormd door welke correlaties er toevallig bestaan in de trainingsset — niet noodzakelijk door dezelfde kenmerken die een mens zou gebruiken om hetzelfde onderscheid te maken. Een <em>adversarial attack</em> werkt door het kortste mogelijke pad over die grens te vinden: een kleine, bewust berekende verstoring van de invoer die die net voorbij de andere kant duwt, zonder iets te veranderen wat een mens zou opmerken. De kwetsbaarheid is geen bug in één bepaald model — het is een structureel gevolg van hoe deze beslissingsgrenzen in de eerste plaats worden geleerd, wat verklaart waarom het probleem opduikt in verschillende modeltypes en domeinen.</p>
</section>
<section id="adversariale-aanvallen-op-afbeeldingen" class="level2">
<h2 class="anchored" data-anchor-id="adversariale-aanvallen-op-afbeeldingen">Adversariale aanvallen op afbeeldingen</h2>
<p><strong><em>Gradient</em>-gebaseerde perturbatieaanvallen.</strong> De klassieke aanpak — de Fast Gradient Sign Method en zijn meer iteratieve opvolger, Projected Gradient Descent — berekent de <em>gradient</em> van het verlies van het model ten opzichte van de <em>invoerpixels</em> in plaats van de gewichten van het model, en stuurt elke pixel een kleine hoeveelheid in de richting die het verlies het snelst verhoogt (d.w.z. het model het meest fout maakt). Omdat de verstoring over de hele afbeelding is verspreid en binnen een kleine grens blijft, is het onwaarneembaar voor een menselijke toeschouwer terwijl het precies is afgesteld om de beslissingsgrens van het model te overschrijden.</p>
<p><strong><em>Patch</em>-aanvallen.</strong> In plaats van een hele afbeelding subtiel te verstoren, plaatst een <em>patch</em>-aanval één kleine, goed zichtbare, vaak vreemd uitziende sticker of regio ergens in het beeld — op een stopbord, op een kledingstuk, in de hoek van een foto — die betrouwbaar een gerichte misclassificatie veroorzaakt, ongeacht al het andere in de afbeelding. In tegenstelling tot <em>gradient</em>-gebaseerde verstoringen zijn deze vaak robuust tegen gefotografeerd worden vanuit verschillende hoeken en afstanden, wat ze tot een praktisch probleem maakt in de fysieke wereld (een gewijzigd stopbord dat een zelfrijdend systeem leest als een snelheidsbord) in plaats van alleen een digitale curiositeit.</p>
<p><strong><em>Black-box</em> en transfer-aanvallen.</strong> Beide aanvalsfamilies hierboven gaan ervan uit dat de aanvaller toegang heeft tot de interne werking van het model om <em>gradients</em> te berekenen. In de praktijk hebben veel echte aanvallen dat niet nodig: adversariale voorbeelden gemaakt tegen één model <strong>transferren</strong> regelmatig en misleiden een ander model getraind op vergelijkbare data, zelfs zonder toegang tot de gewichten van dat tweede model. Dit is wat de dreiging praktisch maakt in plaats van puur academisch — een aanvaller hoeft je exacte model niet te stelen om het aan te vallen.</p>
</section>
<section id="adversariale-aanvallen-op-tekst" class="level2">
<h2 class="anchored" data-anchor-id="adversariale-aanvallen-op-tekst">Adversariale aanvallen op tekst</h2>
<p>Tekst is discreet — je kunt een woord niet met 0,1% aanpassen zoals je de helderheid van een pixel kunt aanpassen — dus <em>text-based adversarial attacks</em> zien er structureel anders uit, maar het onderliggende doel is identiek: verander de invoer zo weinig en zo onopvallend mogelijk terwijl de uitvoer van het model wordt omgekeerd.</p>
<p><strong>Verstoringen op tekenniveau.</strong> Het verwisselen van visueel vergelijkbare tekens, het invoegen of verwijderen van een teken, of het introduceren van veelvoorkomende typefouten kan de uitvoer van een classifier omgooien terwijl het perfect leesbaar blijft voor een mens — “excellent” wordt “excel1ent” of “exceellent,” en het vertrouwen van een sentimentclassifier stort in hoewel geen redelijke lezer het woord verkeerd zou lezen.</p>
<p><strong><em>Word-level</em> substitutieaanvallen.</strong> Een geavanceerdere familie van aanvallen vervangt afzonderlijke woorden door nauwe synoniemen — specifiek gekozen om de werkelijke betekenis van de zin voor een menselijke lezer te bewaren, terwijl die net genoeg verschuift in de <em>embedding</em>-ruimte van het model om een beslissingsgrens te overschrijden. Omdat de vervanging semantisch getrouw is, zijn deze moeilijker te onderscheppen met een eenvoudig spellingfilter.</p>
<p><strong><em>Universal adversarial triggers</em>.</strong> In plaats van voor elke individuele invoer een maatwerk-verstoring te maken, ontdekken sommige aanvallen een korte reeks woorden of <em>tokens</em> die, wanneer toegevoegd aan <em>bijna elke</em> invoer, het model betrouwbaar naar een specifieke verkeerde uitvoer duwt — een soort herbruikbare “skeletsleutel” voor een bepaald model, in plaats van een eenmalige aanval op één zin.</p>
<p><strong><em>Prompt injection</em> (de LLM-specifieke variant).</strong> In agentische systemen is een toenemend relevante variant <em>prompt injection</em>: tekst ingebed in een document, webpagina of tool-uitvoer die een taalmodel leest als onderdeel van zijn context — niet iets wat de eigenlijke gebruiker heeft getypt — maar die is opgesteld om te lijken op een instructie die het model moet opvolgen. Dit is structureel dezelfde onderliggende kwetsbaarheid als klassieke adversariale tekstaaanvallen (een zorgvuldig gekozen invoer duwt het model ergens heen waar het niet zou moeten zijn), toegepast op de specifieke zwakte van een systeem dat niet altijd onderscheid kan maken tussen “data die ik lees” en “instructies die ik moet opvolgen.”</p>
</section>
<section id="wat-werkelijk-werkt-als-verdediging" class="level2">
<h2 class="anchored" data-anchor-id="wat-werkelijk-werkt-als-verdediging">Wat werkelijk werkt als verdediging</h2>
<p>Geen enkele techniek lost dit volledig op, wat verklaart waarom echte implementaties er meerdere combineren:</p>
<p><strong><em>Adversarial training</em>.</strong> De meest directe verdediging: bewust adversariale voorbeelden genereren tijdens training en deze in de trainingsset opnemen, zodat het model een beslissingsgrens leert die niet zo gemakkelijk te overschrijden is door kleine verstoringen. Dit kan worden uitgebreid met bredere data-augmentatie — willekeurig ruis, handgemaakte negaties, synonymvervanging en algemene diversiteit van de trainingsset — zodat het model niet overfit aan een smal, kwetsbaar begrip van hoe “normale” invoer eruitziet.</p>
<p><strong><em>Defensive distillation</em> en <em>feature squeezing</em>.</strong> Een kleinere studentmodel trainen op de <em>softened</em> uitvoerdistributie van een docent heeft de neiging een vloeiendere, minder strak gevouwen beslissingsgrens te produceren die moeilijker te benutten is met een kleine, precies berekende druk. <em>Feature squeezing</em> werkt op een verwante maar directere manier: het reduceert de vrijheidsgraden van de invoer voordat het model die ooit ziet — voor afbeeldingen kan dit betekenen dat de kleurdiepte wordt verlaagd of milde afvlakking wordt toegepast; voor tekst, het normaliseren van spellingvarianten en tekenvervangingen vóór classificatie — specifiek om de fijnmazige ruimte in te krimpen die een aanvaller nodig heeft.</p>
<p><strong>Invoertransformaties en randomisatie.</strong> Technieken zoals lichte beeldcompressie, bijsnijden of aanpassen van de grootte vóór classificatie kunnen de zeer precieze pixelberekeningen verstoren waarvan een adversariale verstoring afhankelijk is, zonder een echte afbeelding zinvol te beïnvloeden. Aan de tekstkant dient spelling-normalisatie een vergelijkbaar doel tegen aanvallen op tekenniveau.</p>
<p><strong><em>Ensembles</em>.</strong> Dezelfde invoer door meerdere onafhankelijk getrainde modellen sturen en overeenstemming vereisen (of gebrek daaraan markeren) verhoogt de drempel voor een aanvaller aanzienlijk, omdat een verstoring gemaakt om één specifiek model te misleiden vaak niet schoon transfert naar een anders getraind model met een andere grens.</p>
<p><strong>Detectie in plaats van pure preventie.</strong> In plaats van te proberen een model onvoorwaardelijk robuust te maken voor elke mogelijke verstoring, kan een aparte detectielaag invoer markeren die statistisch ongewoon lijkt — eigenaardige hoog-frequente ruispatronen in een afbeelding, ongewone tekstreeksen — en deze doorsturen voor aanvullend onderzoek voordat ze ooit een beslissing bereiken.</p>
<p><strong>Voor agentische systemen specifiek: invoerbewaking en deterministische <em>guardrails</em>.</strong> Omdat <em>prompt injection</em> de grens tussen “data” en “instructies” benut, is de meest effectieve verdediging niet het taalmodel vragen om zichzelf te bewaken — het is het routeren van niet-vertrouwde invoer (documenten, webinhoud, tool-uitvoer) door een aparte, deterministische controle <em>vóór</em> die de hoofd-redeneermotor bereikt, en alles wat eruitziet als een ingebedde instructie standaard als verdacht behandelen in plaats van als een legitiem commando.</p>
</section>
<section id="de-rode-draad" class="level2">
<h2 class="anchored" data-anchor-id="de-rode-draad">De rode draad</h2>
<p>Elke verdediging doet eigenlijk hetzelfde: de beslissingsgrens van het model soepeler maken, minder gevoelig voor kleine of nauwkeurig gerichte veranderingen, en minder vertrouwend op een enkel niet-geverifieerd signaal. Geen van hen maakt een model perfect onbreekbaar — dit blijft een genuanceerd actieve wapenwedloop tussen aanvals- en verdedigingsonderzoek, op zowel afbeeldingen als tekst — maar het combineren van meerdere van deze technieken (adversariale training plus <em>distillation</em> plus invoernormalisatie plus detectie) verhoogt de kosten en moeilijkheid van een succesvolle aanval zinvol, wat in de meeste echte implementaties precies het praktische doel is.</p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Goodfellow et al.&nbsp;(2014), <em>Explaining and Harnessing Adversarial Examples</em> (FGSM) — <a href="https://arxiv.org/abs/1412.6572">arXiv:1412.6572</a></li>
<li>Madry et al.&nbsp;(2017), <em>Towards Deep Learning Models Resistant to Adversarial Attacks</em> (PGD) — <a href="https://arxiv.org/abs/1706.06083">arXiv:1706.06083</a></li>
<li>Wallace et al.&nbsp;(2019), <em>Universal Adversarial Triggers for Attacking and Analyzing NLP</em> — <a href="https://arxiv.org/abs/1908.07125">arXiv:1908.07125</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/pruning-quantization-distillation.html">De gigant inkrimpen: <em>pruning</em>, <em>quantization</em> en <em>distillation</em></a> — hoe modelcompressie als neveneffect een hele klasse <em>adversarial attacks</em> buitensluit</li>
<li><a href="../blog/xai-voor-fine-tuned-modellen.html">Waarom je een model niet kunt fine-tunen of destilleren zonder XAI</a> — hoe LIME-gebaseerde vóór/ná-testen adversariale kwetsbaarheid detecteert die door <em>fine-tuning</em> is geïntroduceerd</li>
<li><a href="../blog/het-autonome-bedrijf-besturen.html">Het autonome bedrijf besturen</a> — de governance-laag die beveiligingsdreigingen in institutionele AI-implementaties aanpakt</li>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — waarom deterministische <em>guardrails</em> rondom een model er meer toe doen dan een model vragen zichzelf te bewaken</li>
<li><a href="../blog/wat-is-een-ai-agent.html">Wat is een AI-agent?</a> — de agentische architectuur waar <em>prompt injection</em> specifiek een bedreiging wordt</li>
</ul>


</section>

 ]]></description>
  <category>fundamenten</category>
  <category>efficiëntie</category>
  <guid>https://trajectorium.ai/nl/blog/adversariale-aanvallen-afbeeldingen-en-tekst.html</guid>
  <pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Waarom je een model niet kunt fine-tunen, trainen of destilleren zonder XAI</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/xai-voor-fine-tuned-modellen.html</link>
  <description><![CDATA[ 




<p>Als je de API van een basismodel aanroept, leen je iemand anders’ redenering en iemand anders’ verantwoordelijkheid. Op het moment dat je het <em>fine-tunet</em> op je eigen data, het destilleert in een kleiner studentmodel, of een gespecialiseerd component helemaal opnieuw traint — zoals behandeld in de eerdere artikelen op deze site over <a href="../blog/een-soevereine-ai-agent-bouwen.html">soevereine agents bouwen</a> en <a href="../blog/pruning-quantization-distillation.html">modellen comprimeren voor lokale implementatie</a> — verdwijnt die geleende verantwoordelijkheid. Het gedrag van het model is nu <em>jouw</em> gedrag. En een model dat goed presteert op je validatieset kan nog steeds redeneren op manieren die je nooit zou goedkeuren als je ze werkelijk kon zien. Dit artikel behandelt wat XAI (<em>eXplainable AI</em>) eigenlijk is, de concrete gereedschapskist om in een model te kijken, en waarom dit niet langer optioneel is op het moment dat jij degene bent die het traint.</p>
<section id="drie-woorden-die-geen-synoniemen-zijn" class="level2">
<h2 class="anchored" data-anchor-id="drie-woorden-die-geen-synoniemen-zijn">Drie woorden die geen synoniemen zijn</h2>
<p>Beoefenaars gebruiken “transparantie”, “interpreteerbaarheid” en “uitlegbaarheid” vaak door elkaar, maar ze betekenen werkelijk verschillende dingen:</p>
<ul>
<li><strong>Transparantie</strong> bestaat wanneer het proces dat modelparameters extraheert uit trainingsdata, en labels genereert uit testdata, kan worden beschreven en gerechtvaardigd door de persoon die de aanpak ontwierp.</li>
<li><strong>Interpreteerbaarheid</strong> is het vermogen het model te begrijpen en de basis voor zijn besluitvorming te presenteren op een manier die een mens werkelijk kan volgen.</li>
<li><strong>Uitlegbaarheid</strong> — een term waarover nog geen volledige consensus bestaat in het vakgebied — is het best te begrijpen als de set kenmerken uit een interpreteerbaar domein die bijdroegen aan een specifieke beslissing voor een specifiek voorbeeld.</li>
</ul>
<p>Het onderscheid doet er praktisch toe: je kunt een transparant proces hebben (je weet precies welk algoritme je gebruikte en waarom) zonder een interpreteerbaar model te hebben (je kunt nog steeds geen enkele individuele beslissing uitleggen).</p>
</section>
<section id="wat-telt-werkelijk-als-een-geldige-uitleg" class="level2">
<h2 class="anchored" data-anchor-id="wat-telt-werkelijk-als-een-geldige-uitleg">Wat telt werkelijk als een geldige uitleg?</h2>
<p>Dit verdient serieuze aandacht als een werkelijk menselijke, sociale vraag, niet alleen een technische. Een geldige uitleg is onderdeel van een sociale interactie — die moet deugdelijk, overtuigend en begrijpelijk zijn, en vertrouwen wekken bij de ontvanger, gegeven als een stapsgewijze overdracht van kennis die ze werkelijk kunnen volgen. Daarnaast moet een goede uitleg het verschil laten zien tussen mogelijke uitkomsten (waarom <em>dit</em> antwoord in plaats van dat), relevant zijn voor wat de persoon werkelijk wil weten, en — belangrijk — mag onvolledig zijn. Het benadrukken van een paar relevante voorbeelden is vaak voldoende; een uitleg hoeft niet volledig uitputtend te zijn om nuttig te zijn.</p>
</section>
<section id="de-fundamentele-afruil-nauwkeurigheid-versus-uitlegbaarheid" class="level2">
<h2 class="anchored" data-anchor-id="de-fundamentele-afruil-nauwkeurigheid-versus-uitlegbaarheid">De fundamentele afruil: nauwkeurigheid versus uitlegbaarheid</h2>
<p>Er bestaat een bekende, ruwe hiërarchie van modelfamilies, van sterk interpreteerbaar maar vaak minder krachtig (beslisbomen, lineaire/logistische modellen, eenvoudige statistische modellen) tot sterk nauwkeurig maar veel moeilijker te interpreteren (deep learning, ensemblemethoden, grote neurale netwerken). Drie brede strategieën bestaan om met deze afruil om te gaan:</p>
<ol type="1">
<li><strong>Interpreteerbare modellen</strong> — technieken die inherent gestructureerde, causale, interpreteerbare modellen leren.</li>
<li><strong>Diepe uitleg</strong> — aangepaste <em>deep learning</em>-technieken die specifiek ontworpen zijn om uitlegbare kenmerken te leren als onderdeel van training.</li>
<li><strong><em>Model induction</em></strong> — technieken die een uitlegbaar model afleiden van elk ander model, puur behandeld als een <em>black box</em>.</li>
</ol>
<p>De meeste praktische tools hieronder vallen in de derde categorie — ze vereisen niet dat je je architectuur wijzigt, alleen dat je die achteraf ondervraagt.</p>
</section>
<section id="de-praktische-xai-gereedschapskist" class="level2">
<h2 class="anchored" data-anchor-id="de-praktische-xai-gereedschapskist">De praktische XAI-gereedschapskist</h2>
<section id="attention-visualisatie-bertviz-en-exbert" class="level3">
<h3 class="anchored" data-anchor-id="attention-visualisatie-bertviz-en-exbert"><em>Attention</em>-visualisatie: BERTViz en exBERT</h3>
<p><strong>BERTViz</strong> biedt een interactieve manier om <em>attention</em>-gewichten te visualiseren in <em>transformer</em>-modellen (BERT, GPT-2, T5 en de meeste Huggingface-modellen). De <strong><em>head view</em></strong> toont <em>attention</em> van het ene <em>token</em> naar het andere binnen één laag, waarbij lijngewicht de <em>attention</em>-sterkte weergeeft en kleur de <em>head</em> identificeert. De <strong><em>model view</em></strong> geeft een overzicht over het hele model — elke laag en elke <em>head</em> tegelijk. <strong>exBERT</strong> gaat verder door <em>attention</em>-visualisatie te combineren met contextueel <em>embedding</em>-zoeken, waarmee je andere contexten in een <em>corpus</em> kunt vinden die vergelijkbare <em>embeddings</em> produceerden voor een gegeven <em>token</em>.</p>
</section>
<section id="kenmerktoeschrijving-gradient-gebaseerde-saliency-en-integrated-gradients" class="level3">
<h3 class="anchored" data-anchor-id="kenmerktoeschrijving-gradient-gebaseerde-saliency-en-integrated-gradients">Kenmerktoeschrijving: <em>gradient</em>-gebaseerde <em>saliency</em> en Integrated Gradients</h3>
<p><em>Saliency</em>-methoden scoren hoe belangrijk elk invoer-<em>token</em> was voor een specifieke uitvoer. Het mechanisme: de uiteindelijke verborgen toestand van het model wordt geprojecteerd op zijn woordenschat, waardoor een score per mogelijk volgend <em>token</em> ontstaat; na het selecteren van het gegenereerde <em>token</em> bereken je de <em>gradient</em> van dat geselecteerde logit ten opzichte van elk invoer-<em>token</em>, terugpropagerend tot aan de invoer.</p>
<p>In de praktijk, met een bibliotheek zoals <strong>Inseq</strong> met Integrated Gradients, kun je dit letterlijk zien werken: GPT-2 vragen “Heathrow airport is located in the city of” te voltooien en zien op welke invoer-<em>tokens</em> het model daadwerkelijk steunde om “London” te produceren. Een opvallende demonstratie: het verwisselen van één woord kan de sentimentvoorspelling van het model volledig omdraaien, wat precies het soort kwetsbaarheid is dat <em>saliency</em>-analyse blootlegt maar een eenvoudig nauwkeurigheidsgetal nooit zou onthullen.</p>
</section>
<section id="perturbatiemethoden-lime-en-shap" class="level3">
<h3 class="anchored" data-anchor-id="perturbatiemethoden-lime-en-shap">Perturbatiemethoden: LIME en SHAP</h3>
<p><strong>LIME</strong> (Local Interpretable Model-agnostic Explanations, Ribeiro, Singh &amp; Guestrin, 2016) behandelt het model als een <em>black box</em> en vraagt: wat gebeurt er met de voorspelling als ik de invoer verstoor? Het genereert een nieuwe dataset van verstoorde samples plus de voorspellingen van het <em>black box</em>-model erop, en traint vervolgens een eenvoudig, interpreteerbaar lokaal model gewogen naar nabijheid bij de oorspronkelijke instantie. De echte zwakheden zijn het vermelden waard: het definiëren van de juiste “buurt” voor verstoring is een onopgelost probleem, uitleggen kunnen instabiel zijn, en — het meest zorgwekkend voor alles wat compliance-gerelateerd is — LIME-uitleggen kunnen opzettelijk gemanipuleerd worden om <em>bias</em> te verbergen.</p>
<p><strong>SHAP</strong> (SHapley Additive exPlanations) neemt een wiskundig meer gefundeerde route, waarbij Shapley-waarden uit de coöperatieve speltheorie worden geleend: elk kenmerk wordt behandeld als een “speler” en zijn bijdrage is zijn gemiddeld marginaal effect over elke mogelijke combinatie van kenmerken. Een SHAP-plot toont typisch de gemiddelde voorspelling van het model over een dataset als basislijn, waarna precies wordt getoond hoeveel elk individueel kenmerk de voorspelling omhoog of omlaag duwde. De eerlijke afruil ten opzichte van LIME: SHAP is veel computationeel duurder, maar heeft een veel sterkere theoretische garantie van consistentie.</p>
</section>
<section id="verder-kijken-dan-attention-neuronactivaties-en-de-straatlantaarnfout" class="level3">
<h3 class="anchored" data-anchor-id="verder-kijken-dan-attention-neuronactivaties-en-de-straatlantaarnfout">Verder kijken dan <em>attention</em>: neuronactivaties en de straatlantaarnfout</h3>
<p>Hier is een werkelijk belangrijk en ondergewaardeerd punt. Het <em>feed-forward</em>-netwerk (FFN) boven het <em>self-attention</em>-blok in een <em>transformer</em> bevat ruwweg <strong>twee derde van alle parameters van het model</strong> — het is de primaire opslag van de geleerde capaciteit van het model. Toch richten de overgrote meerderheid van populaire NLP-uitlegbaarheidshulpmiddelen (BERTViz, <em>self-attention</em>-warmtekaarten) zich bijna uitsluitend op het <em>attention</em>-mechanisme, grotendeels omdat <em>attention</em>-gewichten gemakkelijk te visualiseren zijn als lijnen die woorden verbinden. Dat is de moeite waard te benoemen voor wat het werkelijk is: een versie van de straatlantaarnfout — zoeken waar het licht gemakkelijk schijnt, in plaats van waar de berekening daadwerkelijk plaatsvindt.</p>
</section>
</section>
<section id="waarom-dit-niet-langer-optioneel-is-als-je-zelf-het-model-traint" class="level2">
<h2 class="anchored" data-anchor-id="waarom-dit-niet-langer-optioneel-is-als-je-zelf-het-model-traint">Waarom dit niet langer optioneel is als je zelf het model traint</h2>
<p>Alles hierboven is nuttig voor het begrijpen van elk model, inclusief een model dat je alleen via een API aanroept. Het wordt een werkelijke vereiste — geen nice-to-have — op het moment dat je zelf <em>fine-tunet</em>, destilleert of een component traint, om meerdere concrete redenen.</p>
<p><strong><em>Fine-tuning</em> en <em>distillation</em> kunnen veranderen <em>hoe</em> een model beslist zonder te veranderen <em>of</em> het het juiste antwoord geeft.</strong> Zoals behandeld in het <a href="../blog/pruning-quantization-distillation.html">eerdere artikel over <em>pruning</em>, <em>quantization</em> en <em>distillation</em></a>, is een gedestilleerd studentmodel getraind om de verzachte uitvoerdistributie van een <em>teacher</em> te matchen — maar het matchen van de uitvoerdistributie garandeert niet dat de student via dezelfde redeneerroute aankwam. Een validatienauwkeurigheidsscore die identiek lijkt voor en na <em>distillation</em> kan een werkelijk ander — en mogelijk minder betrouwbaar — beslissingsproces verbergen. XAI-tools zijn hoe je dit daadwerkelijk controleert.</p>
<p><strong>Dit verbindt direct met de “getrouwheid versus plausibiliteit”-val.</strong> Een methode als LIME is specifiek gebouwd om een vereenvoudigde, voor mensen aangenaam lokale benadering te produceren. Dat roept een ongemakkelijke vraag op: als je de uitleggen van je <em>fine-tuned</em> model controleert en ze redelijk lijken, verifieer je dan dat het model werkelijk op die manier redeneerde, of genereer je gewoon een geruststellende post-hoc rationalisatie? Dit is precies waarom een serieus verificatieproces voor een zelf-getraind model meer dan één XAI-methode nodig heeft.</p>
<p><strong><em>Fine-tuning</em> kan nieuwe adversariale kwetsbaarheid introduceren die een schone validatieset niet zal onthullen.</strong> Zoals behandeld in het <a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">eerdere artikel over adversariale aanvallen</a>, kan een model dat <em>fine-tuned</em> is op een engere dataset gevoeliger worden voor kleine, betekenisbehoudende verstoringen. Er is een concrete detectiemethode die het waard is als standaardstap te adopteren: voer LIME uit op een voorbeeld vóór een adversariale verstoring, pas de verstoring toe, voer dan LIME opnieuw uit. Als de uitleg sterk verschuift, is dat een direct signaal van adversariale gevoeligheid.</p>
<p><strong>Regelgevings- en governance-kaders vereisen dit expliciet.</strong> Zoals behandeld in de eerdere artikelen over <a href="../blog/het-autonome-bedrijf-besturen.html">AI-governance</a> en <a href="../blog/bias-analyse-in-de-praktijk.html">bias-analyse onder het Algoritmekader</a>, is het kunnen tonen <em>waarom</em> een specifieke beslissing werd genomen — niet alleen dat het systeem gemiddeld goed presteert — vaak een wettelijke vereiste. Een <em>fine-tuned</em> of gedestilleerd model dat wordt ingezet in een publieke-sector-, medische of financiële context moet precies dit soort per-beslissing-uitleg ondersteunen.</p>
</section>
<section id="een-praktische-checklist-voor-wie-zelf-fine-tunet-of-destilleert" class="level2">
<h2 class="anchored" data-anchor-id="een-praktische-checklist-voor-wie-zelf-fine-tunet-of-destilleert">Een praktische checklist voor wie zelf <em>fine-tunet</em> of destilleert</h2>
<ol type="1">
<li><strong>Voer <em>attention</em>-visualisatie (BERTViz) uit vóór en ná <em>fine-tuning</em></strong> op een vaste set representatieve voorbeelden.</li>
<li><strong>Voer SHAP of LIME uit op dezelfde validatievoorbeelden vóór en ná <em>distillation</em></strong>, en vergelijk niet alleen het voorspelde label maar welke kenmerken het aandreven.</li>
<li><strong>Gebruik <em>saliency</em> of Integrated Gradients om kwetsbaarheid te spotten</strong>, met name enkelvoudige woordvervangingen die een voorspelling omdraaien.</li>
<li><strong>Test expliciet op adversariale gevoeligheid geïntroduceerd door training</strong>, met de vóór/ná LIME-vergelijkingsmethode.</li>
<li><strong>Kijk verder dan <em>attention</em> naar neuronactivaties en verborgen-toestandsevolutie</strong>, aangezien twee derde van de capaciteit van een <em>transformer</em> zit in de <em>feed-forward</em>-lagen die de meeste standaardtools negeren.</li>
<li><strong>Documenteer dit alles</strong>, op dezelfde manier als de eerdere artikelen over <a href="../blog/het-autonome-bedrijf-besturen.html">governance</a> en <a href="../blog/bias-analyse-in-de-praktijk.html">bias-analyse</a> pleiten voor het documenteren van eerlijkheidstests.</li>
</ol>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p>Een basismodel via een API lenen betekent iemand anders’ uitlegbaarheidsverplichtingen lenen samen met zijn capaciteit. Op het moment dat je het <em>fine-tunet</em>, destilleert of een gespecialiseerd component zelf traint — precies het pad dat deze site herhaaldelijk heeft bepleit als de route naar echte soevereiniteit en specialisatie — gaat die verplichting volledig op jou over. Een model dat goed scoort op een gehouden testset heeft je verteld <em>wat</em> het doet. Alleen XAI vertelt je <em>hoe</em> — en zonder dat implementeer je een systeem dat je hebt gebouwd maar werkelijk niet kunt verantwoorden.</p>
<p><em>Gebaseerd op “XAI for NLP” (Advanced Natural Language Processing-cursus, Department of Advanced Computing Sciences).</em></p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Ribeiro et al.&nbsp;(2016), <em>“Why Should I Trust You?”: Explaining the Predictions of Any Classifier</em> (LIME) — <a href="https://arxiv.org/abs/1602.04938">arXiv:1602.04938</a></li>
<li>Lundberg &amp; Lee (2017), <em>A Unified Approach to Interpreting Model Predictions</em> (SHAP) — <a href="https://arxiv.org/abs/1705.07874">arXiv:1705.07874</a></li>
<li>Sundararajan et al.&nbsp;(2017), <em>Axiomatic Attribution for Deep Networks</em> (Integrated Gradients) — <a href="https://arxiv.org/abs/1703.01365">arXiv:1703.01365</a></li>
<li>Vig (2019), <em>A Multiscale Visualization of Attention in the Transformer Model</em> (BERTViz) — <a href="https://arxiv.org/abs/1906.05714">arXiv:1906.05714</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/waarom-nlp-eindelijk-werkt.html">Waarom NLP eindelijk werkt</a> — de <em>transformer</em>-architectuur waarvan XAI-tools de interne werking openen</li>
<li><a href="../blog/pruning-quantization-distillation.html">De gigant inkrimpen: <em>pruning</em>, <em>quantization</em> en <em>distillation</em></a> — waar de behoefte aan XAI tijdens <em>distillation</em> vandaan komt</li>
<li><a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">Adversariale aanvallen: onzichtbare pixels en omgewisselde woorden</a> — de kwetsbaarheid die LIME-gebaseerde adversariale testen detecteert</li>
<li><a href="../blog/het-autonome-bedrijf-besturen.html">Het autonome bedrijf besturen</a> — het governance-raamwerk dat uitlegbaarheid een wettelijke vereiste maakt</li>
<li><a href="../blog/bias-analyse-in-de-praktijk.html">Bias-analyse in de praktijk</a> — de complementaire eerlijkheidstests die XAI mogelijk maakt</li>
<li><a href="../blog/een-soevereine-ai-agent-bouwen.html">Wat er nodig is om een soevereine AI-agent te bouwen</a> — stap 7 (validatie) is waar de XAI-checklist in dit artikel thuishoort</li>
</ul>


</section>

 ]]></description>
  <category>fundamenten</category>
  <category>governance</category>
  <guid>https://trajectorium.ai/nl/blog/xai-voor-fine-tuned-modellen.html</guid>
  <pubDate>Sat, 22 Aug 2026 00:00:00 GMT</pubDate>
</item>
<item>
  <title>Bias-analyse in de praktijk: hoe test je een algoritme eigenlijk op discriminatie?</title>
  <dc:creator>Jan Scholtes</dc:creator>
  <link>https://trajectorium.ai/nl/blog/bias-analyse-in-de-praktijk.html</link>
  <description><![CDATA[ 




<p>Elk algoritme dat mensen of bedrijven anders behandelt, brengt een risico op discriminatie met zich mee — soms flagrant, vaker verborgen in een ogenschijnlijk neutraal variabele zoals een postcode. Het Algoritmekader van de Nederlandse overheid (maatregel VER-03) vereist een gestructureerde bias-analyse voor elk algoritme dat natuurlijke personen raakt. Dit is geen papieren exercitie — het is een concrete, technische en juridische toets die je stap voor stap kunt doorlopen. Dit artikel behandelt de drie vereiste stappen — bias-analyse, rechtvaardigingstoets, ethische wenselijkheidstoets — met praktische tools, echte Nederlandse casussen en de wetenschap erachter.</p>
<section id="waarom-dit-meer-is-dan-een-compliance-vinkje" class="level2">
<h2 class="anchored" data-anchor-id="waarom-dit-meer-is-dan-een-compliance-vinkje">Waarom dit meer is dan een compliance-vinkje</h2>
<p>Het Algoritmekader koppelt dit aan een verplichting vanuit de Autoriteit Persoonsgegevens rond geautomatiseerde besluitvorming: het risico op discriminerende verwerking moet worden onderzocht <em>en</em> gemitigeerd. Twee recente Nederlandse casussen laten zien wat er misgaat als dit niet gebeurt:</p>
<ul>
<li><strong>DUO / controle studentenbeurs uitwonenden</strong>: tussen 2010 en 2023 gebruikte DUO een risicoprofiel om misbruik van de uitwonendenbeurs op te sporen. Een onderzoek van Algorithm Audit constateerde onvoldoende statistische onderbouwing voor meerdere selectiecriteria — het profiel werd stopgezet.</li>
<li><strong>Ministerie van Buitenlandse Zaken / visumaanvragen</strong>: het Rijks ICT Gilde voerde een kwantitatieve bias-test uit op de beoordeling van kort-verblijf-visumaanvragen en vond een significant verschil op basis van nationaliteit — met als aanbeveling het gebruik van profielscores en risicogroepen geheel te beëindigen.</li>
</ul>
<p>Beide casussen illustreren dezelfde les: bias zit zelden in een expliciete variabele “ras” of “nationaliteit”. Het zit in de patronen die een model destilleert uit data.</p>
</section>
<section id="stap-1-analyseer-of-bias-aanwezig-is" class="level2">
<h2 class="anchored" data-anchor-id="stap-1-analyseer-of-bias-aanwezig-is">Stap 1: Analyseer of bias aanwezig is</h2>
<section id="directe-discriminatie-de-relatief-eenvoudige-check" class="level3">
<h3 class="anchored" data-anchor-id="directe-discriminatie-de-relatief-eenvoudige-check">Directe discriminatie: de relatief eenvoudige check</h3>
<p>Controleer simpelweg of je invoervariabelen direct verwijzen naar een beschermd kenmerk: godsdienst, levensovertuiging, politieke gezindheid, ras, geslacht, nationaliteit, seksuele geaardheid of burgerlijke staat. Let op: veel proxy-termen tellen ook als “ras” op grond van jurisprudentie — huidskleur, andere geracialiseerde fysieke kenmerken, migratieachtergrond, een “niet-Westers klinkende naam,” of verwijzingen naar specifieke afkomst. Als jouw model dergelijke variabelen direct gebruikt (of een variabele die functioneel één-op-één daarmee overeenkomt), is dat verboden directe discriminatie — punt.</p>
</section>
<section id="indirecte-discriminatie-waar-het-echte-werk-zit" class="level3">
<h3 class="anchored" data-anchor-id="indirecte-discriminatie-waar-het-echte-werk-zit">Indirecte discriminatie: waar het echte werk zit</h3>
<p>Hier verbergt de meeste bias zich: ogenschijnlijk neutrale variabelen zoals postcode, inkomensniveau, kenteken of laaggeletterdheid die sterk correleren met een beschermd kenmerk. Het Algoritmekader beschrijft hiervoor vijf concrete stappen:</p>
<p><strong>1. Identificeer de kwetsbare groepen.</strong> Baseer dit op de in de wet gedefinieerde discriminatiegronden, eventueel aangevuld met groepen waarvoor ongelijke behandeling in jouw specifieke context ethisch gevoelig is.</p>
<p><strong>2. Definieer wat “verschil in behandeling” betekent voor jouw algoritme.</strong> Dit vereist een keuze tussen (minimaal) twee families van <em>fairness</em>-definities — en dit is precies waar veel projecten vastlopen, omdat ze deze keuze nooit expliciet maken:</p>
<ul>
<li><strong>Gelijke uitkomsten (representatie)</strong>: hebben verschillende groepen een gelijke kans om geselecteerd te worden? Dit correspondeert met wat in de <em>fairness</em>-literatuur <em>demographic parity</em> of <em>statistical parity</em> heet.</li>
<li><strong>Gelijke prestaties (fouten)</strong>: presteert het algoritme even goed voor verschillende groepen? Dit vereist het bouwen van een <em>confusion matrix</em> per groep, en correspondeert met concepten als <em>equalized odds</em> en <em>equal opportunity</em> — maatstaven die kijken naar fout-positieven en fout-negatieven, niet alleen naar de eindscore.</li>
</ul>
<p>Een bekend en praktisch startpunt voor de keuze welke maatstaf past bij jouw situatie is de <strong>Fairness Tree</strong> (een beslisboom die vraagt naar de aard van jouw beslissing en de gevolgen van fout-positieven versus fout-negatieven) — het Algoritmekader zelf verwijst hiernaar. Belangrijk te weten: verschillende <em>fairness</em>-maatstaven kunnen <em>wiskundig tegenstrijdig</em> zijn — in de meeste realistische situaties kun je niet tegelijkertijd <em>demographic parity</em> en gelijke foutenpercentages garanderen. Dit is geen implementatiefout; het is een bewezen wiskundig feit in de <em>fairness</em>-literatuur. Je moet daarom van tevoren, samen met stakeholders, prioriteren welk <em>fairness</em>-begrip het meest telt in jouw context.</p>
<p><strong>3. Verzamel de data die nodig is om deze groepen te meten.</strong> Dit botst vaak direct met de privacywetgeving — je hebt gevoelige data (etniciteit, geslacht, etc.) nodig om precies op die gronden op discriminatie te kunnen testen. De EU AI Act voorziet hierin expliciet een uitzondering (artikel 10.5) voor hoog-risico AI-systemen: bijzondere categorieën persoonsgegevens mogen worden verwerkt specifiek voor het doel van het monitoren, detecteren en corrigeren van <em>bias</em>. Zorg dat deze verwerking goed gedocumenteerd en strikt tot dat doel beperkt is.</p>
<p>Let ook op de kwaliteit van deze testdata zelf: als je testdata al historische <em>bias</em> of representatie-<em>bias</em> bevat, meet je mogelijk de <em>bias</em> van je meetinstrument in plaats van de daadwerkelijke <em>bias</em> die je probeert te detecteren.</p>
<p><strong>4. Bereken de verschillen.</strong> Dit is de stap waarbij je daadwerkelijk meet, met open-source tools die specifiek hiervoor zijn gebouwd:</p>
<ul>
<li><strong>Fairlearn</strong> (Microsoft) — meet en beperkt oneerlijkheid, met directe ondersteuning voor <em>demographic parity</em>- en <em>equalized odds</em>-beperkingen tijdens training.</li>
<li><strong>Aequitas</strong> — een <em>bias</em>-audit-toolkit specifiek gericht op beleids- en overheidscontexten, gebouwd om meerdere <em>fairness</em>-maatstaven naast elkaar per groep te rapporteren.</li>
<li><strong>AI Fairness 360 (IBM)</strong> — een brede toolkit met tientallen <em>fairness</em>-maatstaven en <em>bias</em>-mitigatietechnieken (pre-processing, in-processing, post-processing).</li>
<li><strong>FairML</strong> — gericht op het traceren welke invoervariabelen het meest bijdragen aan een waargenomen verschil.</li>
</ul>
<p>In de praktijk: bouw de <em>confusion matrix</em> per groep, bereken de relevante maatstaven (selectieverhouding, verschil in fout-positiefpercentage, verschil in fout-negatiefpercentage), en toets of het verschil statistisch significant is.</p>
<p><strong>5. Verklaar hoe het verschil is ontstaan.</strong> Als je een significant verschil vindt, spoor na waar het vandaan komt: - <strong>Historische <em>bias</em></strong> — beschrijft de data nog de huidige situatie, of weerspiegelt die verouderde patronen? - <strong><em>Bias</em> in representatie</strong> — is de trainingsdata representatief voor de volledige doelpopulatie? - <strong>Meetbias</strong> — meten jouw invoervariabelen werkelijk wat ze beweren te meten, of zijn het ruwe proxies? - <strong>Automatiseringsbias of bevestigingsbias</strong> — ontstaat de <em>bias</em> pas in de menselijke reviewstap die op het algoritme volgt?</p>
<p>Deze stap vereist uitdrukkelijk het betrekken van een brede groep stakeholders — de oorzaken van <em>bias</em> zijn zelden puur technisch; ze leven in de sociale en historische werkelijkheid die de data weerspiegelt.</p>
</section>
</section>
<section id="stap-2-voer-een-rechtvaardigingstoets-uit" class="level2">
<h2 class="anchored" data-anchor-id="stap-2-voer-een-rechtvaardigingstoets-uit">Stap 2: Voer een rechtvaardigingstoets uit</h2>
<p>Een waargenomen verschil is niet automatisch verboden — maar het vereist altijd een expliciete toets aan vier deelvragen:</p>
<ol type="1">
<li><strong>Streeft het algoritme een legitiem doel na?</strong></li>
<li><strong>Is het algoritme geschikt om dat doel te bereiken?</strong></li>
<li><strong>Is het noodzakelijk</strong> — zijn er geen redelijke, minder ingrijpende alternatieven?</li>
<li><strong>Is het, alles afwegend, proportioneel?</strong></li>
</ol>
<p>Bij directe discriminatie is er alleen ruimte voor een uitzondering als de wet die uitdrukkelijk biedt. Bij indirecte discriminatie kan ook een objectieve rechtvaardiging volstaan — maar alleen als alle vier bovenstaande vragen bevestigend worden beantwoord. Zonder geldige rechtvaardiging is een waargenomen verschil per definitie verboden discriminatie en mag het algoritme niet worden gebruikt. Het College voor de Rechten van de Mens heeft een gedetailleerd Toetsingskader Risicoprofilering gepubliceerd dat specifiek ingaat op discriminatie op grond van ras en nationaliteit.</p>
</section>
<section id="stap-3-voer-een-ethische-wenselijkheidstoets-uit" class="level2">
<h2 class="anchored" data-anchor-id="stap-3-voer-een-ethische-wenselijkheidstoets-uit">Stap 3: Voer een ethische wenselijkheidstoets uit</h2>
<p>Dit is de stap die verder gaat dan de juridische vraag. Zelfs met een geldige, objectieve rechtvaardiging kan een waargenomen verschil ethisch onwenselijk zijn. Betrek hier bewust een brede groep stakeholders — niet alleen juristen en datawetenschappers, maar ook de mensen die het algoritme daadwerkelijk raakt — en bespreek expliciet: wat zijn de mogelijke nadelige effecten, vinden we dit eerlijk en zijn er alternatieven? Zoals het Algoritmekader zelf opmerkt, kan deze afweging uiteindelijk een politiek-bestuurlijke vraag worden — zorg dat die verantwoordelijkheid dan ook expliciet daar wordt belegd.</p>
</section>
<section id="een-concreet-voorbeeld-bias-zit-al-ingebakken-in-de-bouwstenen-word2vec" class="level2">
<h2 class="anchored" data-anchor-id="een-concreet-voorbeeld-bias-zit-al-ingebakken-in-de-bouwstenen-word2vec">Een concreet voorbeeld: <em>bias</em> zit al ingebakken in de bouwstenen (Word2Vec)</h2>
<p>Alles hierboven gaat over hoe je <em>bias</em> <em>meet</em> in de uitvoer van een algoritme. Maar <em>bias</em> sluipt er vaak veel eerder in — in de taalrepresentaties waarop een model is gebouwd. Een tastbare, praktische illustratie hiervan komt uit een tutorial over documentrepresentatie, en het laat precies zien waarom “meetbias” en “historische <em>bias</em>” (genoemd in stap 1) niet abstract zijn — ze zijn letterlijk zichtbaar in de getallen van een woordvector.</p>
<p><strong>Word2Vec en GloVe</strong> leren dichte woordvectoren op basis van de distributionele hypothese: een woord wordt gekarakteriseerd door het gezelschap dat het houdt (Firth, 1957). Semantisch vergelijkbare woorden belanden dicht bij elkaar in vectorruimte — wat opvallend goed werkt voor analogieën als <em>king - man + woman ≈ queen</em>. Maar hetzelfde mechanisme pikt ook maatschappelijke stereotypen op uit het trainings-<em>corpus</em>, met concrete en herkenbare gevolgen:</p>
<pre><code>man : programmer :: woman : ?</code></pre>
<p>Query een GloVe-model (getraind op Wikipedia plus nieuwsartikelen) hiermee, en de termen die verschijnen weerspiegelen duidelijk een genderstereotype in plaats van een neutrale vertaling van het beroep. Hetzelfde geldt voor <code>man:doctor :: woman:?</code> en <code>father:doctor :: mother:?</code> — het model heeft niet geleerd wat een dokter <em>is</em>; het heeft geleerd welke woorden samen voorkomen in tekst die al doordrenkt is van maatschappelijke aannames.</p>
<p>Waarom dit er niet alleen insluipt maar ook blijft: deze <em>embeddings</em> zijn getraind op enorme hoeveelheden webtekst, nieuwsartikelen en boeken — bronnen die historische en maatschappelijke vooroordelen weerspiegelen. Als zulke <em>embeddings</em> vervolgens terechtkomen in een downstream-toepassing — een cv-screeningstool, een chatbot, een risico-inschattingsinstrument — kunnen ze die discriminatie <strong>doorgeven en versterken</strong>. Een cv-screener die draait op GloVe-<em>embeddings</em> die “programmeur” sterker associeert met “man” dan met “vrouw”, zal mannelijke kandidaten systematisch hoger rangschikken, zonder dat “geslacht” ooit als expliciete invoervariabele is gebruikt. Dit is precies het type indirecte discriminatie beschreven in stap 1 — alleen ontstaat het op het representatieniveau, dieper in de <em>pipeline</em> dan de meeste <em>bias</em>-audits doorgaans kijken.</p>
<section id="bias-meetbaar-en-corrigeerbaar-maken-projectie-gebaseerd-ontbevooroordeeld-maken" class="level3">
<h3 class="anchored" data-anchor-id="bias-meetbaar-en-corrigeerbaar-maken-projectie-gebaseerd-ontbevooroordeeld-maken"><em>Bias</em> meetbaar en corrigeerbaar maken: projectie-gebaseerd ontbevooroordeeld maken</h3>
<p>De meest invloedrijke techniek hiervoor (Bolukbasi et al., 2016) laat zien dat dit soort <em>bias</em> niet alleen kan worden aangetoond, maar ook — gedeeltelijk — kan worden gecorrigeerd, in drie stappen:</p>
<ol type="1">
<li><strong>Bepaal de <em>bias</em>-richting</strong>: bereken een “genderrichting” als het gemiddelde verschil tussen gendergepaard woorden (<em>he/she</em>, <em>man/woman</em>, <em>king/queen</em>, <em>father/mother</em>, enzovoort).</li>
<li><strong>Projecteer die richting eruit</strong>: voor neutrale beroepswoorden (<em>programmer</em>, <em>nurse</em>, <em>engineer</em>) verwijder je het component van de vector dat langs die genderrichting ligt — wiskundig een orthogonale projectie.</li>
<li><strong>Verifieer</strong>: bevestig dat de ontbevooroordeelde vectoren geen genderassociatie meer vertonen, terwijl de werkelijke betekenis van het woord (het beroep zelf) behouden blijft.</li>
</ol>
<p>Dit is concreet meetbaar: bereken een “<em>bias</em>-score” voor een set neutrale beroepswoorden (hoe sterk de woordvector in de genderrichting wijst) vóór en ná deze projectie — de score daalt voor bijna elk woord na ontbevooroordeeld maken tot bijna nul, terwijl het woord zijn oorspronkelijke betekenis behoudt.</p>
</section>
<section id="de-beperkingen-een-eerlijke-analyse-moet-deze-ook-benoemen" class="level3">
<h3 class="anchored" data-anchor-id="de-beperkingen-een-eerlijke-analyse-moet-deze-ook-benoemen">De beperkingen — een eerlijke analyse moet deze ook benoemen</h3>
<p>Belangrijk om niet te verzwijgen: deze techniek lost het probleem niet volledig op.</p>
<ul>
<li><strong>Het adresseert slechts één as tegelijk.</strong> Ontbevooroordeeld maken voor gender lost etniciteit, leeftijd of andere <em>bias</em> niet op.</li>
<li><strong><em>Intersectionele bias</em></strong> (bijvoorbeeld de combinatie van gender en etniciteit) vereist aanzienlijk geavanceerdere benaderingen dan een enkelvoudige projectie.</li>
<li><strong><em>Bias</em> kan voortbestaan in hogere-orde statistieken</strong> die een eenvoudige lineaire projectie niet verwijdert (Gonen &amp; Goldberg, 2019) — de directe associatie is weg, maar clusterstructuren in de vectorruimte kunnen nog steeds gegenderd blijven.</li>
<li><strong>Contextuele modellen (BERT, GPT) vereisen andere technieken.</strong> Word2Vec en GloVe geven elk woord exact één vaste vector; een contextueel model geeft “bank” een andere vector afhankelijk van de zin. Dat verandert niet <em>of</em> <em>bias</em> kan optreden, maar wel <em>hoe</em> je die moet detecteren en corrigeren.</li>
</ul>
<p>De les hier voor een bias-analyse zoals in stap 1: als je alleen de uiteindelijke beslissing van een algoritme test, mis je mogelijk het punt waar de <em>bias</em> daadwerkelijk is ontstaan.</p>
</section>
</section>
<section id="hoe-je-dit-operationaliseert-in-een-aiagent-project" class="level2">
<h2 class="anchored" data-anchor-id="hoe-je-dit-operationaliseert-in-een-aiagent-project">Hoe je dit operationaliseert in een AI/agent-project</h2>
<p>Voor iedereen die dit wil operationaliseren binnen een groter agentisch AI-project — zoals behandeld in het <a href="../blog/een-soevereine-ai-agent-bouwen.html">eerdere artikel over het bouwen van soevereine agents</a> en het <a href="../blog/het-autonome-bedrijf-besturen.html">governance-raamwerkartikel</a> op deze site:</p>
<ol type="1">
<li><strong>Documenteer de drie stappen als een vaste onderdeel van je validatiefase</strong> — niet als een eenmalige check bij oplevering, maar als een terugkerend proces.</li>
<li><strong>Kies je <em>fairness</em>-maatstaven vóórdat je de resultaten ziet</strong>, samen met stakeholders.</li>
<li><strong>Bouw de bias-test in als een aparte, herhaalbare stap in je <em>pipeline</em></strong> — met een van de bovengenoemde open-source tools.</li>
<li><strong>Documenteer elke oordeelsvraag expliciet</strong>, inclusief waarom een bepaald verschil wel of niet gerechtvaardigd werd geacht.</li>
<li><strong>Blijf monitoren na de livegang</strong> — via het bezwaar- en klachtenproces, en door periodieke herhaling van de analyse.</li>
</ol>
</section>
<section id="de-conclusie" class="level2">
<h2 class="anchored" data-anchor-id="de-conclusie">De conclusie</h2>
<p><em>Bias</em>-analyse is geen eenmalige checklist — het is een herhaald proces van meten, verklaren, rechtvaardigen en, waar nodig, bijsturen. De Nederlandse casussen hier laten zien dat dit geen theoretische oefening is: profielen die jaren in productie draaiden, bleken bij nader inzien onvoldoende onderbouwd en werden stopgezet. Bouw deze drie stappen in vanaf de ontwerpfase van je algoritme — niet als reactie op een incident achteraf.</p>
<p><em>Bron: Algoritmekader, Ministerie van Binnenlandse Zaken en Koninkrijksrelaties, maatregel 5-VER-03.</em></p>
<p><strong>Kernpublicaties</strong></p>
<ul>
<li>Bolukbasi et al.&nbsp;(2016), <em>Man is to Computer Programmer as Woman is to Homemaker? Debiasing Word Embeddings</em> — <a href="https://arxiv.org/abs/1607.06520">arXiv:1607.06520</a></li>
<li>Gonen &amp; Goldberg (2019), <em>Lipstick on a Pig: Debiasing Methods Cover up Systematic Gender Biases</em> — <a href="https://arxiv.org/abs/1903.03862">arXiv:1903.03862</a></li>
<li>Hardt et al.&nbsp;(2016), <em>Equality of Opportunity in Supervised Learning</em> — <a href="https://arxiv.org/abs/1610.02413">arXiv:1610.02413</a></li>
<li>Barocas, Hardt &amp; Narayanan, <em>Fairness and Machine Learning</em> — <a href="https://fairmlbook.org">fairmlbook.org</a></li>
</ul>
<hr>
<p><strong>Verder lezen op deze site</strong></p>
<ul>
<li><a href="../blog/het-autonome-bedrijf-besturen.html">Het autonome bedrijf besturen</a> — het vierfasen-governance-raamwerk waar <em>bias</em>-testen deel van uitmaakt</li>
<li><a href="../blog/een-soevereine-ai-agent-bouwen.html">Wat er nodig is om een soevereine AI-agent te bouwen</a> — stap 7 van de gids behandelt bias-validatie in de praktijk</li>
<li><a href="../blog/adversariale-aanvallen-afbeeldingen-en-tekst.html">Adversariale aanvallen: onzichtbare pixels en omgewisselde woorden</a> — de verwante categorie van beveiligingskwetsbaarheden in modelinvoer</li>
<li><a href="../blog/de-institutionele-slotgracht.html">De institutionele slotgracht</a> — waarom <em>guardrails</em> en compliance-architectuur er voor instellingen toe doen</li>
<li><a href="../blog/waarom-nlp-eindelijk-werkt.html">Waarom NLP eindelijk werkt</a> — de <em>transformer</em>-architectuur waarvan de <em>embeddings</em> de representationele <em>bias</em> bevatten die hier wordt besproken</li>
</ul>


</section>

 ]]></description>
  <category>governance</category>
  <guid>https://trajectorium.ai/nl/blog/bias-analyse-in-de-praktijk.html</guid>
  <pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate>
</item>
</channel>
</rss>
