|
Een eerste AI voorbeeld in Python hoeft niet ingewikkeld te zijn. Een kleine tekstindeling is een bruikbaar oefenproject: je geeft korte berichten een onderwerp, zoals levering, factuur of productvraag. Het doel is niet om meteen een zelfstandige klantenservice te bouwen. Je wilt begrijpen hoe voorbeelden, een model en een controle samenkomen in een overzichtelijke werkwijze die je kunt uitleggen en aanpassen. Formuleer de oefening nauwkeurigBeschrijf wat het programma als invoer krijgt en wat het moet teruggeven. Bijvoorbeeld: één kort bericht gaat naar binnen en één onderwerp komt terug als voorstel. Kies categorieën die voor een lezer duidelijk van elkaar verschillen. Als een bericht over meerdere onderwerpen kan gaan, bepaal dan vooraf hoe je daarmee wilt omgaan in deze eerste oefening. Maak enkele zelfgeschreven voorbeeldberichten. Waar blijft mijn pakket past bij levering, terwijl ik heb een vraag over het bedrag naar factuur kan verwijzen. Voeg ook variatie toe in woordkeuze en zinsbouw. Wanneer alle voorbeelden dezelfde formulering hebben, leer je vooral hoe het systeem met die ene formulering omgaat. Dat is een beperkte basis voor nieuwe berichten. Bewaar tekst en label samenZet de voorbeelden in een eenvoudige tabel met een tekstkolom en een onderwerp. Geef ieder bericht een herkenbaar nummer, zodat je een fout later kunt terugzoeken. Controleer de labels handmatig. Een verkeerd onderwerp in de oefengegevens kan het model op het verkeerde spoor zetten en maakt de beoordeling van het resultaat onduidelijk. Leg twijfelgevallen apart. Een bericht als mijn bestelling en factuur kloppen niet past mogelijk niet netjes in één categorie. Je kunt zulke gevallen later gebruiken om grenzen te bespreken. Voor de eerste versie is vooral belangrijk dat duidelijk is welke taak je oefent en dat je geen schijnbaar precieze beoordeling maakt op basis van onduidelijke voorbeelden. Zet tekst om naar modelinvoerEen model werkt met een numerieke voorstelling van de invoer. Voor een eenvoudig tekstvoorbeeld kun je woordkenmerken gebruiken, bijvoorbeeld met de hulpmiddelen voor tekstverwerking in scikit-learn. Die zetten een verzameling teksten om naar waarden waarmee een model kan rekenen. De woorden zelf worden daarmee nog niet op menselijke wijze begrepen. Houd de omzetting en het model als één samenhangende werkwijze bij elkaar. Nieuwe berichten moeten namelijk dezelfde verwerking krijgen als de voorbeelden waarmee is getraind. Als je bij het oefenen woorden anders behandelt dan bij het voorspellen, vergelijk je verschillende situaties. Beschrijf daarom welke stappen plaatsvinden voordat een tekst aan het model wordt aangeboden. Beoordeel onbekende voorbeeldenBewaar een afzonderlijk deel van de berichten om het resultaat te testen. Gebruik dat deel niet om het model te leren. Een uitkomst op dezelfde teksten die tijdens het trainen zijn gezien, vertelt weinig over nieuwe formuleringen. Met onbekende voorbeelden krijg je een beter beeld van wat de oefening daadwerkelijk heeft opgeleverd. Bekijk niet alleen hoeveel onderwerpen goed zijn gekozen. Lees ook de fouten. Wordt een vraag over een betaalde bestelling regelmatig als factuur ingedeeld terwijl zij over bezorging gaat? Dan ontbreekt mogelijk variatie in de voorbeelden of zijn de categorieën onvoldoende afgebakend. Zo’n bevinding is nuttiger dan alleen een hoger totaalcijfer nastreven zonder te begrijpen wat verandert. Geef een voorstel een duidelijke plaatsLaat de uitvoer zien als een suggestie naast het oorspronkelijke bericht. De gebruiker kan dan beoordelen of het onderwerp klopt. Voeg voor de oefening een mogelijkheid toe om een fout te noteren. Dat maakt de toepassing concreet en laat zien dat een model slechts één onderdeel is van een volledige manier van werken. Verwerk correcties niet onmiddellijk en onzichtbaar in het model. Verzamel ze eerst en controleer of zij overeenkomen met de afgesproken categorieën. Een losse correctie kan immers zelf onduidelijk zijn. Door wijzigingen bewust te verzamelen, kun je een volgende versie vergelijken met de vorige en nagaan of de aanpassing meer voorbeelden helpt dan zij verstoort. Bewaar wat je hebt geleerdVoeg een korte instructie toe waarmee iemand de oefening vanaf het begin kan uitvoeren. Laat daarbij zien waar de voorbeeldgegevens staan en hoe de gemaakte voorspellingen worden gecontroleerd. Sla de code, voorbeeldstructuur en gebruikte pakketversies op. Noteer daarnaast welke gevallen nog moeilijk zijn. Een klein AI voorbeeld is geslaagd wanneer je de route van tekst naar voorstel begrijpt en fouten kunt onderzoeken. Die ervaring vormt een stevige basis om later meer categorieën, betere voorbeelden of een andere techniek toe te voegen zonder het overzicht te verliezen.
Sergej Dergatsjev, eigenaar van Online Solutions Group, heeft CompanyGids nieuw leven ingeblazen en het platform verder uitgebouwd tot een moderne bedrijvengids voor België. Bezoek Company Gids en Online Solutions Group. |
| https://www.dergatsjev.be/2021/02/event-over-python-machine-learning.html |
Veelgestelde vragen
Wat heb ik nodig om aan de slag te gaan met machine learning in Python?▼
Je hebt Python en het SciPy-pakket nodig, het meest bruikbare pakket voor machine learning. Deze tutorial begeleidt je stap-voor-stap door de installatie en setup.
Hoe laad ik een dataset en analyseer ik de structuur ervan?▼
Je leert datasets in te laden en de structuur te begrijpen met statistische samenvattingen en datavisualisatie. Dit helpt je de data beter te kennen voordat je modellen bouwt.
Hoeveel machine learning-modellen maak ik in deze tutorial?▼
Je creëert 6 machine learning-modellen, selecteert de beste optie en bouwt vertrouwen op in de betrouwbaarheid van de nauwkeurigheid.
Is deze tutorial geschikt voor beginners?▼
Ja, deze Python AI-tutorial is speciaal ontworpen voor beginners die eindelijk aan de slag willen met machine learning en praktische ervaring willen opdoen.
Waar kan ik meer leren over NLP-toepassingen in Python?▼
Voor Natural Language Processing (NLP) kun je SpaCy gebruiken, een populaire Python-bibliotheek die goed aansluit bij machine learning-projecten.
