Machine learning is een soort kunstmatige intelligentie waarbij software een taak leert door voorbeelden te bestuderen, in plaats van regels te volgen die een programmeur met de hand heeft uitgeschreven. Je voert er data in, het ziet de patronen, en het gebruikt die patronen om nieuwe gevallen aan te pakken die het nog niet eerder heeft gezien.

Een simpel voorbeeld is leren om spam te herkennen. Niemand kan een regel schrijven voor elk rommelbericht dat ooit verstuurd is. In plaats daarvan toon je het systeem duizenden mails die al gemarkeerd zijn als spam of geen spam, en leert het de verraderlijke kenmerken vanzelf. Die afhankelijkheid van voorbeelden is waarom trainingsdata zo belangrijk is, en de meeste moderne aanpakken bouwen op een neuraal netwerk om de patronen te vinden.

Het helpt om de basisvormen te kennen. Als bij elk voorbeeld een goed antwoord zit, zoals de spamlabels hierboven, heet dat supervised learning, de meest voorkomende vorm in het bedrijfsleven. Andere opzetten laten het model zelf groepen ontdekken, of laten het leren met vallen en opstaan. De meeste echte projecten splitsen de data ook: je traint op het ene deel en test op een ander deel dat het model nooit zag, om te checken of het de taak echt leerde en niet de antwoorden uit zijn hoofd leerde.

De kwaliteit van het resultaat hangt aan de kwaliteit van de data. Voer het bevooroordeelde of slordige voorbeelden en het leert de verkeerde lessen, met volle overtuiging. Een bekende valkuil is naar machine learning grijpen terwijl een handvol simpele regels goedkoper, duidelijker en makkelijker te debuggen zou zijn. Goede machine learning gaat net zo goed over schone, representatieve data en het juiste probleem als over slimme algoritmes.

Bij TopDevs passen we machine learning toe waar een klant goede data heeft en een herhalend oordeel om te automatiseren, en zijn we er eerlijk over wanneer een simpelere regel het werk beter zou doen.