AI 101
Wat is Machine Learning?

Machine learning is een van de snelst groeiende technologische gebieden, maar ondanks hoe vaak de woorden “machine learning” worden gebruikt, kan het moeilijk zijn om te begrijpen wat machine learning precies is.
Machine learning verwijst niet naar één ding, het is een parapluuterm die op veel verschillende concepten en technieken kan worden toegepast. Het begrijpen van machine learning houdt in dat je vertrouwd bent met verschillende vormen van modelanalyse, variabelen en algoritmen. Laten we een nauwe blik werpen op machine learning om beter te begrijpen wat het omvat.
Wat Is Machine Learning?
Terwijl de term machine learning op veel verschillende dingen kan worden toegepast, verwijst de term in het algemeen naar het mogelijk maken van een computer om taken uit te voeren zonder expliciete, regel voor regel instructies te ontvangen. Een machine learning-specialist hoeft niet alle stappen te schrijven die nodig zijn om het probleem op te lossen, omdat de computer in staat is “te leren” door patronen in de gegevens te analyseren en deze patronen te generaliseren naar nieuwe gegevens.
Machine learning-systemen hebben drie basisonderdelen:
- Inputs
- Algoritmen
- Outputs
De inputs zijn de gegevens die in het machine learning-systeem worden ingevoerd, en de inputgegevens kunnen worden onderverdeeld in labels en kenmerken. Kenmerken zijn de relevante variabelen, de variabelen die zullen worden geanalyseerd om patronen te leren en conclusies te trekken. Ondertussen zijn de labels klassen/beschrijvingen die worden gegeven aan de individuele instanties van de gegevens.
Kenmerken en labels kunnen worden gebruikt in twee verschillende soorten machine learning-problemen: begeleide en onbegeleide leerprocessen.
Onbegeleid vs. Begeleid Leren
Bij begeleid leren wordt de inputgegevens vergezeld door een grondwaarheid. Begeleide leerproblemen hebben de correcte outputwaarden als onderdeel van de dataset, zodat de verwachte klassen van tevoren bekend zijn. Dit maakt het mogelijk voor de datascientist om de prestaties van het algoritme te controleren door de gegevens te testen op een testdataset en te zien welk percentage van de items correct werd geclassificeerd.
In tegenstelling tot onbegeleid leren hebben onbegeleide leerproblemen geen grondwaarheidslabels die eraan zijn vastgemaakt. Een machine learning-algoritme dat is getraind om onbegeleide leerprocessen uit te voeren, moet in staat zijn om de relevante patronen in de gegevens zelf af te leiden.
Begeleide leer-algoritmen worden meestal gebruikt voor classificatieproblemen, waarbij men een grote dataset heeft met instanties die moeten worden gesorteerd in een van de vele verschillende klassen. Een andere soort begeleid leren is een regressietaken, waarbij de waarde die door het algoritme wordt gegenereerd, continu is in plaats van categorisch.
Ondertussen worden onbegeleide leer-algoritmen gebruikt voor taken zoals dichtheidschatting, clustering en representatielearning. Deze drie taken hebben nodig dat het machine learning-model de structuur van de gegevens zelf afleidt, er zijn geen vooraf gedefinieerde klassen die aan het model zijn gegeven.
Laten we een korte blik werpen op enkele van de meest voorkomende algoritmen die worden gebruikt in zowel onbegeleid als begeleid leren.
Soorten Begeleid Leren
Gangbare begeleide leer-algoritmen zijn:
- Naïeve Bayes
- Support Vector Machines
- Logistische Regressie
- Willekeurige Bossen
- Kunstmatige Neurale Netwerken
Support Vector Machines zijn algoritmen die een dataset opdelen in verschillende klassen. Gegevenspunten worden gegroepeerd in clusters door lijnen te trekken die de klassen van elkaar scheiden. Punten die op één zijde van de lijn worden gevonden, behoren tot één klasse, terwijl de punten op de andere zijde van de lijn tot een andere klasse behoren. Support Vector Machines hebben als doel de afstand tussen de lijn en de punten op beide zijden van de lijn te maximaliseren, en hoe groter de afstand, hoe zekerder de classificator is dat het punt tot één klasse behoort en niet tot een andere klasse.
Logistische Regressie is een algoritme dat wordt gebruikt in binaire classificatie-taken wanneer gegevenspunten moeten worden geclassificeerd als behorend tot een van twee klassen. Logistische Regressie werkt door het gegevenspunt te labelen als 1 of 0. Als de waargenomen waarde van het gegevenspunt 0,49 of lager is, wordt het geclassificeerd als 0, terwijl het als 1 wordt geclassificeerd als het 0,5 of hoger is.
Decision Tree-algoritmen werken door datasets op te delen in kleinere en kleinere fragmenten. De exacte criteria die worden gebruikt om de gegevens op te delen, zijn afhankelijk van de machine learning-ingenieur, maar het doel is uiteindelijk om de gegevens op te delen in enkele gegevenspunten, die vervolgens worden geclassificeerd met behulp van een sleutel.
Een Random Forest-algoritme is in wezen een verzameling van enkele Decision Tree-classificatoren die zijn verbonden tot een krachtigere classificator.
De Naïeve Bayes-classificator berekent de waarschijnlijkheid dat een bepaald gegevenspunt is opgetreden op basis van de waarschijnlijkheid van een voorafgaand evenement. Het is gebaseerd op de stelling van Bayes en het plaatst de gegevenspunten in klassen op basis van hun berekende waarschijnlijkheid. Wanneer een Naïeve Bayes-classificator wordt geïmplementeerd, wordt ervan uitgegaan dat alle voorspellers dezelfde invloed hebben op het resultaat van de klasse.
Een Kunstmatig Neuraal Netwerk, of multi-laags perceptron, zijn machine learning-algoritmen die zijn geïnspireerd door de structuur en functie van de menselijke hersenen. Kunstmatige neurale netwerken krijgen hun naam van het feit dat ze bestaan uit veel knooppunten/neuronen die met elkaar zijn verbonden. Elke neuron manipuleert de gegevens met een wiskundige functie. In kunstmatige neurale netwerken zijn er inputlagen, verborgen lagen en outputlagen.
De verborgen laag van het neurale netwerk is waar de gegevens daadwerkelijk worden geïnterpreteerd en geanalyseerd voor patronen. Met andere woorden, het is waar het algoritme leert. Meer neuronennetwerken die met elkaar zijn verbonden, maken complexere netwerken mogelijk die complexere patronen kunnen leren.
Soorten Onbegeleid Leren
Onbegeleide leer-algoritmen zijn:
- K-means clustering
- Auto-encoders
- Principal Component Analyse
K-means clustering is een onbegeleide classificatietechniek, en het werkt door gegevenspunten te scheiden in clusters of groepen op basis van hun kenmerken. K-means clustering analyseert de kenmerken die worden gevonden in de gegevenspunten en onderscheidt patronen in hen die de gegevenspunten in een bepaalde klasse-cluster meer gelijk maken aan elkaar dan aan clusters die andere gegevenspunten bevatten. Dit wordt bereikt door mogelijke centra voor de cluster, of centroids, in een grafiek van de gegevens te plaatsen en de positie van de centroid opnieuw toe te wijzen totdat een positie wordt gevonden die de afstand tussen de centroid en de punten die tot die centroid behoren, minimaliseert. De onderzoeker kan het gewenste aantal clusters specificeren.
Principal Component Analyse is een techniek die grote aantallen kenmerken/variabelen terugbrengt tot een kleinere kenmerkruimte/minder kenmerken. De “primaire componenten” van de gegevenspunten worden geselecteerd voor behoud, terwijl de andere kenmerken worden samengeperst tot een kleinere weergave. De relatie tussen de oorspronkelijke gegevenspunten wordt behouden, maar omdat de complexiteit van de gegevenspunten eenvoudiger is, zijn de gegevens gemakkelijker te kwantificeren en te beschrijven.
Auto-encoders zijn versies van neurale netwerken die kunnen worden toegepast op onbegeleide leerprocessen. Auto-encoders zijn in staat om ongelabelde, vrije gegevens te nemen en ze om te zetten in gegevens die een neurale netwerk kan gebruiken, waardoor ze in wezen hun eigen gelabelde trainingsgegevens creëren. Het doel van een auto-encoder is om de inputgegevens om te zetten en zo nauwkeurig mogelijk te reconstrueren, dus het is in het belang van het netwerk om te bepalen welke kenmerken het meest belangrijk zijn en ze te extraheren.












