Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Implementatie op Dummy-Dataset | Sectie
Essentiële Unsupervised Learning

bookImplementatie op Dummy-Dataset

U doorloopt nu een praktisch voorbeeld van het toepassen van K-means clustering. Hiervoor gebruikt u een dummy dataset. Dummy datasets zijn kunstmatig gegenereerde datasets die vaak worden gebruikt voor demonstratie- en leerdoeleinden. Ze stellen ons in staat om de kenmerken van de data te controleren en duidelijk te observeren hoe algoritmen zoals K-means presteren.

Dummy Dataset

Voor deze demonstratie maken we een dummy dataset met behulp van de functie make_blobs(). Deze functie is uitstekend geschikt voor het genereren van clusters van datapunten op een visueel duidelijke en controleerbare manier. We genereren data met de volgende kenmerken:

  • Aantal samples: we creëren een dataset met 300 datapunten;

  • Aantal centers: we stellen het aantal echte clusters in op 4. Dit betekent dat de dummy data is ontworpen om vier afzonderlijke groepen te bevatten;

  • Cluster standaarddeviatie: we controleren de spreiding van datapunten binnen elk cluster en stellen deze in op 0.60 voor relatief compacte clusters;

  • Random state: we gebruiken een vaste random_state voor reproduceerbaarheid, zodat de datageneratie consistent is elke keer dat u de code uitvoert.

X, y_true = make_blobs(n_samples=300,
                       centers=4,
                       cluster_std=0.60,
                       random_state=0)

K-Means Implementatie

Met deze dummy data passen we vervolgens het K-means algoritme toe. We onderzoeken hoe K-means probeert om deze data in clusters te verdelen op basis van de principes die u in eerdere hoofdstukken heeft geleerd.

K-means kan als volgt worden geïnitialiseerd en getraind in Python:

kmeans = KMeans(n_clusters=k, random_state=42) 
kmeans.fit(X)

Om het optimale aantal clusters voor deze data te bepalen, gebruiken we de methoden die in de vorige hoofdstukken zijn besproken:

  • WSS-methode: we berekenen de Within-Sum-of-Squares voor verschillende waarden van K en analyseren de elbow-plot om een potentieel optimale K te identificeren;

  • Silhouette score-methode: we berekenen de Silhouette Score voor verschillende waarden van K en bekijken de Silhouette-plot en gemiddelde Silhouette scores om de K te vinden die de clusterkwaliteit maximaliseert.

Tot slot spelen visualisaties een cruciale rol in onze implementatie. We visualiseren:

  • De dummy data zelf, om de inherente clusterstructuur te zien;

  • De WSS-plot, om het elbow-punt te identificeren;

  • De silhouette-plot, om de clusterkwaliteit voor verschillende K-waarden te beoordelen;

  • De uiteindelijke K-means clusters geprojecteerd op de dummy data, om de clusteringresultaten en de gekozen optimale K visueel te verifiëren.

question mark

Welke parameter in de functie make_blobs() bepaalt de spreiding van gegevenspunten binnen elke cluster

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 11

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

bookImplementatie op Dummy-Dataset

Veeg om het menu te tonen

U doorloopt nu een praktisch voorbeeld van het toepassen van K-means clustering. Hiervoor gebruikt u een dummy dataset. Dummy datasets zijn kunstmatig gegenereerde datasets die vaak worden gebruikt voor demonstratie- en leerdoeleinden. Ze stellen ons in staat om de kenmerken van de data te controleren en duidelijk te observeren hoe algoritmen zoals K-means presteren.

Dummy Dataset

Voor deze demonstratie maken we een dummy dataset met behulp van de functie make_blobs(). Deze functie is uitstekend geschikt voor het genereren van clusters van datapunten op een visueel duidelijke en controleerbare manier. We genereren data met de volgende kenmerken:

  • Aantal samples: we creëren een dataset met 300 datapunten;

  • Aantal centers: we stellen het aantal echte clusters in op 4. Dit betekent dat de dummy data is ontworpen om vier afzonderlijke groepen te bevatten;

  • Cluster standaarddeviatie: we controleren de spreiding van datapunten binnen elk cluster en stellen deze in op 0.60 voor relatief compacte clusters;

  • Random state: we gebruiken een vaste random_state voor reproduceerbaarheid, zodat de datageneratie consistent is elke keer dat u de code uitvoert.

X, y_true = make_blobs(n_samples=300,
                       centers=4,
                       cluster_std=0.60,
                       random_state=0)

K-Means Implementatie

Met deze dummy data passen we vervolgens het K-means algoritme toe. We onderzoeken hoe K-means probeert om deze data in clusters te verdelen op basis van de principes die u in eerdere hoofdstukken heeft geleerd.

K-means kan als volgt worden geïnitialiseerd en getraind in Python:

kmeans = KMeans(n_clusters=k, random_state=42) 
kmeans.fit(X)

Om het optimale aantal clusters voor deze data te bepalen, gebruiken we de methoden die in de vorige hoofdstukken zijn besproken:

  • WSS-methode: we berekenen de Within-Sum-of-Squares voor verschillende waarden van K en analyseren de elbow-plot om een potentieel optimale K te identificeren;

  • Silhouette score-methode: we berekenen de Silhouette Score voor verschillende waarden van K en bekijken de Silhouette-plot en gemiddelde Silhouette scores om de K te vinden die de clusterkwaliteit maximaliseert.

Tot slot spelen visualisaties een cruciale rol in onze implementatie. We visualiseren:

  • De dummy data zelf, om de inherente clusterstructuur te zien;

  • De WSS-plot, om het elbow-punt te identificeren;

  • De silhouette-plot, om de clusterkwaliteit voor verschillende K-waarden te beoordelen;

  • De uiteindelijke K-means clusters geprojecteerd op de dummy data, om de clusteringresultaten en de gekozen optimale K visueel te verifiëren.

question mark

Welke parameter in de functie make_blobs() bepaalt de spreiding van gegevenspunten binnen elke cluster

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 11
some-alt