Wat is k-NN
Veeg om het menu te tonen
We beginnen ons classificatie-avontuur met de eenvoudigste taak - binaire classificatie. Stel dat we snoepjes willen classificeren als koekjes/niet-koekjes op basis van één enkele eigenschap: hun gewicht.
Een eenvoudige manier om de klasse van een nieuw exemplaar te voorspellen is door te kijken naar de dichtstbijzijnde buur. In ons voorbeeld moeten we een snoepje vinden dat qua gewicht het meest lijkt op het nieuwe exemplaar.
Dat is het idee achter k-Nearest Neighbors (k-NN) - we kijken gewoon naar de buren. Het k-NN-algoritme gaat ervan uit dat vergelijkbare dingen zich in nabije nabijheid bevinden. Met andere woorden, vergelijkbare dingen liggen dicht bij elkaar. k in k-NN staat voor het aantal buren dat we meenemen bij het doen van een voorspelling.
In het bovenstaande voorbeeld hebben we slechts naar 1 buur gekeken, dus dat was 1-Nearest Neighbor. Maar meestal wordt k op een groter getal gezet, omdat alleen naar één buur kijken onbetrouwbaar kan zijn:
Als k (het aantal buren) groter is dan één, kiezen we de meest voorkomende klasse in de buurt als voorspelling. Hier is een voorbeeld van het voorspellen van twee nieuwe instanties met k=3:
Zoals je kunt zien, kan het wijzigen van de k tot verschillende voorspellingen leiden.
Soms veroorzaakt k-NN een gelijkspel wanneer meerdere klassen even vaak voorkomen onder de dichtstbijzijnde buren. De meeste bibliotheken, waaronder scikit-learn, lossen gelijkspellen op door de eerste klasse in hun interne volgorde te kiezen – iets om rekening mee te houden, omdat dit subtiel invloed kan hebben op de reproduceerbaarheid en interpretatie.
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.