Blog

Data voor het trainen van je eigen model

← Terug naar alle blogs

De meeste mensen hebben inmiddels ChatGPT wel eens uitgeprobeerd en gemerkt dat de antwoorden vaak vrij algemeen zijn en niet altijd 100% kloppen. Daarbij worden jouw vragen en gegevens die je invoert ook nog eens gebruikt als trainingsdata om ChatGPT verder te trainen, dus je moet nadenken over wat je vraagt.

Daarom kiezen veel bedrijven ervoor hun eigen AI-model te trainen. Dit garandeert dat privégegevens privé blijven en dat het model op zeer specifieke taken getraind kan worden.

Klinkt ideaal, maar om je eigen AI-model te trainen heb je data nodig. In dit artikel bespreken we wat data is, hoe je erachter kunt komen welke data je hebt, en hoe je deze data vervolgens kunt gebruiken om je eigen AI-model te trainen.

Dus allereerst: wat is data eigenlijk?

Data komt in vele verschillende vormen voor: Excel-bestanden, foto's, klantendossiers, databases, video's, formulieren, en ga zo maar door. Ook papieren dossiers en kennis in hoofden van mensen zijn vormen van data. Om alles overzichtelijk te houden delen we data op in twee categorieën: gestructureerde en ongestructureerde data.

80 tot 90 procent van alle data binnen een bedrijf is ongestructureerde data — en veel bedrijven gebruiken deze niet optimaal.

Gestructureerde data

Gestructureerde data is informatie die voldoet aan een vooraf gedefinieerd model. Voorbeelden zijn databases, Excel-bestanden met rij-kolom-indeling, en papieren formulieren met een consistent format. Vuistregel: je weet van tevoren welke informatie je op welke plek kunt verwachten. Dit maakt het ideaal voor later hergebruik, zoals rapportages.

Ongestructureerde data

Ongestructureerde data mist een duidelijke organisatie. Bedrijven hebben vaak SharePoints vol ongelijk opgestelde Word-documenten en PDF's, plus duizenden e-mails zonder ordening. Toch bevatten deze vaak waardevolle informatie. Een verzekeringsvoorbeeld: schadeclaims bevatten redeneringen in ongestructureerde verhaalvorm, uniek per geval, moeilijk toegankelijk via traditionele methoden.

AI-modellen

Het gaat hier om LLM's (Large Language Models), gebaseerd op Machine Learning.

Op het moment van schrijven — en waarschijnlijk nog lange tijd daarna — geven AI-modellen geen 100% correcte antwoorden, al wordt de nauwkeurigheid wel steeds beter.

Met training op eerdere schadeclaims, wetgeving en bedrijfsbeleid kan een model experts begeleiden, instructies genereren en uiteindelijk claims automatisch afhandelen.

Data, data en nog meer data

Om een AI-model te trainen moet data eerst worden voorbereid via verschillende stappen, wat zorgt voor kwaliteit en geschiktheid voor training, resulterend in betere prestaties en nauwkeurigheid.

Stap 1: Data verzamelen

Verzamel datasets uit relevante bronnen: interne informatie (databases, SharePoints, sensordata, klantendossiers) en openbare informatie. Per databron bepaal je grootte, nuttigheid en inspanning. Essentieel: controleer of gebruik juridisch en volgens bedrijfsbeleid mag.

Stap 2: Data opschonen

Na verzameling moet data worden gereinigd. Bij gestructureerde data: duplicaten verwijderen, ontbrekende gegevens aanvullen, consistentie controleren. Bij ongestructureerde data: ruis voorkomen (HTML-tags), stopwoorden (de, het, een) verwijderen, te veel/weinig voorkomende woorden elimineren. Daarna: woorden naar stamvorm omzetten en tokenisatie.

Stap 3: Data-analyse

Deze fase geeft inzicht in gegevens door basisstatistieken vast te leggen (mediaan, minimum/maximumwaardes, standaardafwijking) en te visualiseren. Dit detecteert vroeg problemen zoals ontbrekende of foutieve waardes — bijvoorbeeld percentages die negatief zijn terwijl je 0-100% verwacht.

Stap 4: Feature engineering

Bepaal welke datakenmerken (features/kolommen) belangrijk zijn en welke ontbreken. Onderzoek of kenmerken ontbreken of combinaties nieuwe afgeleide kenmerken opleveren. Onnodige kenmerken vergroten de trainingsset en kunnen verkeerde conclusies veroorzaken — het model leert patronen van de meest dominante data.

Stap 5: Data normalisering en schaalverandering

Data moet genormaliseerd en geschaald worden. Numerieke waardes worden omgerekend naar vaste bereiken — bijvoorbeeld schadebedragen van 0-10.000 euro naar een 0-1 bereik. Dit verbetert de snelheid en consistentie van het trainingsalgoritme. Relevante concepten: convergentie, Min-Max-schaling en Z-score-normalisatie. Zonder normalisatie kunnen kenmerken met grote getallen kleine waarden overstemmen.

Stap 6: Labelen van data

Data labelen is een volgende voorbereidingsstap, niet altijd nodig en afhankelijk van de trainingsmethode. Bepaal het labeltype (getal, boolean) en mogelijke antwoorden — bijvoorbeeld schadeclaim-status "goedgekeurd" of "afgewezen." Labelen kan handmatig of automatisch; automatisch heeft de voorkeur (sneller), maar is niet altijd mogelijk. Bij handmatig labelen: laat meerdere personen labelen en controleer achteraf goed, want foute labels zijn desastreus.

Stap 7: Data opsplitsen

Data moet in trainings- en testdata worden opgesplitst. Trainingsdata is een grote hoeveelheid gegevens met bekende output (labels) waarvan het model patronen en relaties leert. Testdata is data voor modelvalidatie, nooit eerder gebruikt voor training. Standaardverhouding: 70-80% trainingsdata, 20-30% testdata.

Stap 8: Opslaan en beheer

Exporteer de voorbereide data in een door de trainingsmethode ondersteund formaat (meestal JSON of CSV). Gebruik versiebeheer zoals Git en/of redundante opslag om dataverlies te voorkomen.

Conclusie

Datasets verzamelen en voorbereiden is behoorlijk wat werk, maar eenmaal afgerond heb je een sterke basis voor het trainen van je eigen AI-model. Een volgend artikel behandelt modeltraining met Python-code, waarbij veel van deze stappen terugkeren.