stomp Begeleid versus onbewaakt leren - Unite.AI
Verbind je met ons

AI 101

Begeleid versus niet-gesuperviseerd leren

mm
Bijgewerkt on

Bij machinaal leren kunnen de meeste taken eenvoudig worden onderverdeeld in een van de twee verschillende klassen: leerproblemen onder toezicht of leerproblemen zonder toezicht. Bij leren onder toezicht worden aan de gegevens labels of klassen toegevoegd, terwijl bij leren zonder toezicht de gegevens ongelabeld zijn. Laten we eens goed bekijken waarom dit onderscheid belangrijk is en kijken naar enkele van de algoritmen die bij elk type leren horen.

Begeleid versus niet-gesuperviseerd leren

De meeste machine learning-taken bevinden zich in het domein van leren onder toezicht. Bij gesuperviseerde leeralgoritmen wordt aan de individuele instanties/datapunten in de dataset een klasse of label toegewezen. Dit betekent dat het machine learning-model kan leren onderscheiden welke kenmerken gecorreleerd zijn met een bepaalde klasse en dat de machine learning-engineer de prestaties van het model kan controleren door te zien hoeveel instanties correct zijn geclassificeerd. Classificatie-algoritmen kunnen worden gebruikt om veel complexe patronen te onderscheiden, zolang de gegevens maar zijn gelabeld met de juiste klassen. Een machine-learning algoritme kan bijvoorbeeld leren om verschillende dieren van elkaar te onderscheiden op basis van kenmerken zoals "snorharen", "staart", "klauwen", enz.

In tegenstelling tot begeleid leren, omvat leren zonder toezicht het creëren van een model dat patronen kan extraheren uit niet-gelabelde gegevens. Met andere woorden, de computer analyseert de invoerkenmerken en bepaalt zelf wat de belangrijkste kenmerken en patronen zijn. Unsupervised learning probeert de inherente overeenkomsten tussen verschillende instanties te vinden. Als een algoritme voor leren onder toezicht datapunten in bekende klassen wil plaatsen, zullen algoritmen voor leren zonder toezicht de gemeenschappelijke kenmerken van de objectinstanties onderzoeken en ze in groepen plaatsen op basis van deze kenmerken, waardoor in wezen zijn eigen klassen worden gecreëerd.

Voorbeelden van algoritmen voor begeleid leren zijn lineaire regressie, logistieke regressie, K-dichtstbijzijnde buren, beslissingsbomen en ondersteuningsvectormachines.

Ondertussen zijn enkele voorbeelden van niet-gecontroleerde leeralgoritmen Principal Component Analysis en K-Means Clustering.

Begeleid leeralgoritme

Lineaire regressie is een algoritme dat twee kenmerken neemt en de relatie ertussen uitzet. Lineaire regressie wordt gebruikt om numerieke waarden te voorspellen in relatie tot andere numerieke variabelen. Lineaire regressie heeft de vergelijking van Y = a +bX, waarbij b de helling van de lijn is en a waar y de X-as kruist.

Logistische regressie is een binair classificatie-algoritme. Het algoritme onderzoekt de relatie tussen numerieke kenmerken en vindt de waarschijnlijkheid dat de instantie in een van twee verschillende klassen kan worden ingedeeld. De waarschijnlijkheidswaarden worden "geperst" naar 0 of 1. Met andere woorden, sterke kansen zullen 0.99 benaderen, terwijl zwakke waarschijnlijkheden 0 zullen naderen.

K-dichtstbijzijnde buren wijst een klasse toe aan nieuwe gegevenspunten op basis van de toegewezen klassen van een gekozen aantal buren in de trainingsset. Het aantal buren dat door het algoritme in aanmerking wordt genomen, is belangrijk, en te weinig of te veel buren kunnen punten verkeerd classificeren.

Beslissingsbomen zijn een type classificatie- en regressie-algoritme. Een beslissingsboom werkt door een dataset op te splitsen in steeds kleinere delen totdat de subsets niet verder kunnen worden gesplitst en het resultaat is een boom met knooppunten en bladeren. De knooppunten zijn waar beslissingen over datapunten worden genomen met behulp van verschillende filtercriteria, terwijl de bladeren de instanties zijn waaraan een bepaald label is toegewezen (een datapunt dat is geclassificeerd). Beslisboomalgoritmen kunnen zowel numerieke als categorische gegevens verwerken. Er worden splitsingen gemaakt in de boom op basis van specifieke variabelen/kenmerken.

Ondersteuning van vectormachines zijn een classificatie-algoritme dat werkt door hypervlakken of scheidingslijnen tussen gegevenspunten te tekenen. Gegevenspunten worden onderverdeeld in klassen op basis van aan welke kant van het hypervlak ze zich bevinden. Er kunnen meerdere hypervlakken over een vlak worden getekend, waardoor een dataset in meerdere klassen wordt opgedeeld. De classificator zal proberen de afstand tussen het duikende hypervlak en de punten aan weerszijden van het vlak te maximaliseren, en hoe groter de afstand tussen de lijn en de punten, hoe zekerder de classificator is.

Algoritmen voor leren zonder toezicht

Hoofdcomponentenanalyse is een techniek die wordt gebruikt voor dimensionaliteitsreductie, wat betekent dat de dimensionaliteit of complexiteit van de gegevens op een eenvoudigere manier wordt weergegeven. Het algoritme Principal Component Analysis vindt nieuwe dimensies voor de gegevens die orthogonaal zijn. Hoewel de dimensionaliteit van de gegevens wordt verminderd, moet de variantie tussen de gegevens zoveel mogelijk behouden blijven. Wat dit in de praktijk betekent, is dat het de kenmerken in de dataset neemt en ze destilleert tot minder kenmerken die de meeste gegevens vertegenwoordigen.

K-Middelen Clustering is een algoritme dat gegevenspunten automatisch groepeert in clusters op basis van vergelijkbare kenmerken. De patronen binnen de dataset worden geanalyseerd en de datapunten worden op basis van deze patronen opgesplitst in groepen. In wezen maakt K-means zijn eigen klassen uit niet-gelabelde gegevens. Het K-Means-algoritme werkt door centra toe te wijzen aan de clusters, of zwaartepunten, en de zwaartepunten te verplaatsen totdat de optimale positie voor de zwaartepunten is gevonden. De optimale positie is er een waar de afstand tussen de centroids en de omringende datapunten binnen de klasse zo klein mogelijk is. De "K" in K-betekent clustering verwijst naar hoeveel zwaartepunten zijn gekozen.

Samengevat

Om af te sluiten, laten we snel de belangrijkste verschillen tussen begeleid en onbegeleid leren.

Zoals we eerder hebben besproken, zijn bij begeleide leertaken de invoergegevens gelabeld en is het aantal klassen bekend. Ondertussen zijn invoergegevens niet gelabeld en is het aantal klassen niet bekend in leersituaties zonder toezicht. Ongecontroleerd leren is over het algemeen minder rekenkundig complex, terwijl begeleid leren vaak meer rekenkundig complex is. Hoewel leerresultaten onder toezicht doorgaans zeer nauwkeurig zijn, zijn leerresultaten zonder toezicht vaak minder nauwkeurig/matig nauwkeurig.

Blogger en programmeur met specialiteiten in Machine leren en Diepe leren onderwerpen. Daniel hoopt anderen te helpen de kracht van AI te gebruiken voor maatschappelijk welzijn.