Python Machine Learning

Foto van Eva Kuipers
Eva Kuipers

Content Writer

Machine learning met Python bestaat uit meer dan een model trainen. Vooral bij tekstgegevens bepalen de voorbereiding en de controle voor een groot deel of het resultaat bruikbaar is. Neem een toepassing die reacties op een dienst wil indelen naar onderwerp. De technische stappen lijken overzichtelijk, maar achter iedere stap zitten keuzes over betekenis, voorbeelden en de manier waarop medewerkers met de uitkomst verder werken.

Geef het onderwerp een duidelijke definitie

Begin met een beschrijving van de categorieën. Een reactie over bereikbaarheid is iets anders dan een reactie over de inhoud van een antwoord. Toch kunnen beide onderwerpen in dezelfde tekst voorkomen. Bepaal daarom of meerdere labels zijn toegestaan of dat je voor de oefening één hoofdonderwerp kiest. Zonder die afspraak wordt een beoordeling al snel afhankelijk van persoonlijke interpretatie.

Laat een paar mensen dezelfde kleine verzameling reacties bekijken. Bespreek waar hun indeling verschilt. Soms ligt het probleem niet bij een model, maar bij categorieën die elkaar overlappen. Pas de omschrijving aan voordat je veel voorbeelden verzamelt. Daarmee bespaar je later werk aan het herstellen van labels die vanaf het begin niet consequent konden worden toegekend.

Begrijp wat tekstkenmerken voorstellen

Een model heeft een numerieke voorstelling van tekst nodig. Die kan bijvoorbeeld beschrijven welke woorden voorkomen of hoe sterk bepaalde woorden een document kenmerken. Andere benaderingen gebruiken meer samenhangende tekstrepresentaties. Geen van die voorstellingen betekent automatisch dat het model alle nuances begrijpt. Een ironische zin of een verwijzing naar eerdere communicatie kan moeilijk blijven.

Bekijk enkele voorbeelden van de gebruikte invoer. Worden belangrijke delen behouden en verdwijnen er geen noodzakelijke woorden tijdens de voorbereiding? Een ogenschijnlijk klein woord kan de strekking veranderen. Pas daarom niet zonder onderzoek een standaard schoonmaakprocedure toe. Wat voor de ene teksttaak overbodig is, kan voor een andere juist essentieel zijn.

Houd voorbeelden werkelijk gescheiden

Maak een onderscheid tussen materiaal voor het opbouwen van de werkwijze en materiaal voor de beoordeling. Let daarbij op dubbele of sterk gelijkende reacties. Als bijna dezelfde tekst aan beide kanten staat, kan het resultaat gunstiger lijken dan bij werkelijk nieuwe invoer. Denk ook na over reacties uit dezelfde conversatie, die veel context met elkaar delen.

Bepaal welke situatie je in de praktijk wilt nabootsen. Een toepassing die toekomstige berichten verwerkt, moet uiteindelijk omgaan met nieuwe formuleringen en veranderende onderwerpen. Een willekeurige verdeling van oude voorbeelden vertelt daar niet alles over. Beschrijf daarom hoe de gekozen controle aansluit op het beoogde gebruik en welke omstandigheden nog buiten de proef vallen.

Verbind voorbereiding en model

Bewaar de tekstbewerking en het model als onderdelen van dezelfde vaste route. In scikit-learn kan een pipeline helpen om opeenvolgende bewerkingen samen te organiseren. De bedoeling is dat nieuwe invoer dezelfde behandeling krijgt als de gegevens waarop de aanpak is opgebouwd. Een handmatig afwijkende voorbereiding tijdens gebruik kan anders onverwachte uitkomsten veroorzaken.

Maak iedere stap zichtbaar genoeg om problemen terug te vinden. Bewaar bijvoorbeeld enkele gecontroleerde invoer- en uitvoervoorbeelden. Wanneer een reactie verkeerd wordt ingedeeld, kun je dan onderzoeken of de tekst onjuist is ingelezen, belangrijke informatie is verwijderd of het model een ongeschikt patroon gebruikt. Dat maakt verbeteren gerichter dan telkens een ander model proberen.

Beoordeel per categorie

Een algemeen resultaat kan verbergen dat één onderwerp veel slechter wordt herkend dan de andere. Bekijk daarom per categorie welke voorbeelden worden gemist en welke ten onrechte worden toegevoegd. Vraag medewerkers welke soort fout het meeste herstelwerk veroorzaakt. De technische beoordeling krijgt zo betekenis voor de taak die de toepassing moet ondersteunen.

Geef twijfelgevallen een zichtbare plek in het werkproces. Misschien is handmatige beoordeling daar voorlopig de beste oplossing. Dat hoeft de toepassing niet waardeloos te maken. Een hulpmiddel kan nuttig zijn wanneer het duidelijke gevallen versnelt en onduidelijke gevallen herkenbaar laat liggen, zolang die grens eerlijk wordt beschreven en regelmatig wordt gecontroleerd.

Blijf leren van het gebruik

Leg bij iedere versie vast welke categorieën worden ondersteund en welke uitzonderingen bekend zijn. Die toelichting helpt nieuwe gebruikers om de voorstellen met passende verwachtingen te beoordelen.

Verzamel correcties met hun context en bekijk ze periodiek. Pas de werkwijze niet onzichtbaar aan na iedere losse melding. Controleer eerst of de correctie past bij de afgesproken categorieën en vergelijk een nieuwe versie met de vorige. Zo wordt machine learning met Python een beheersbaar proces waarin betere voorbeelden, duidelijke definities en zorgvuldige beoordeling samen tot bruikbare vooruitgang kunnen leiden.

Python Machine Learning

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 is Machine Learning precies?▼

Machine Learning is een toepassing van kunstmatige intelligentie die systemen in staat stelt om automatisch te leren en zich te verbeteren door ervaringen, zonder expliciet geprogrammeerd te zijn. Het leert patronen uit gegevens om betere beslissingen te nemen.

Hoe werkt het leerproces bij Machine Learning?▼

Het leerproces begint met observaties, gegevens of voorbeelden. Systemen analyseren deze informatie om patronen te herkennen en gebruiken deze inzichten om in de toekomst betere beslissingen te nemen zonder menselijke tussenkomst.

Waarom is Python geschikt voor Machine Learning?▼

Python heeft uitgebreide bibliotheken en tools specifiek ontworpen voor Machine Learning-toepassingen. De taal biedt een flexibele omgeving voor het ontwikkelen van intelligente systemen die automatisch kunnen leren.

Wat is het verschil tussen klassieke algoritmen en semantische analyse?▼

Klassieke Machine Learning-algoritmen behandelen tekst als reeksen trefwoorden. Semantische analyse bootst echter het menselijk vermogen na om de daadwerkelijke betekenis van tekst te begrijpen, wat nauwkeurigere resultaten oplevert.

Wat is het primaire doel van Machine Learning?▼

Het primaire doel is computers in staat stellen automatisch te leren zonder menselijke tussenkomst, zodat zij hun acties zelfstandig kunnen aanpassen en verbeteren op basis van verkregen kennis.

Tags en Categorieën: