Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Implementering på Dummy-datasett | K-Means
Klyngeanalyse

bookImplementering på Dummy-datasett

Du vil nå gå gjennom et praktisk eksempel på bruk av K-means klynging. For dette formålet benyttes et dummy-datasett. Dummy-datasett er kunstig genererte datasett som ofte brukes til demonstrasjon og læring. De gir oss mulighet til å kontrollere egenskapene til dataene og tydelig observere hvordan algoritmer som K-means fungerer.

Dummy-datasett

Til denne demonstrasjonen vil vi opprette et dummy-datasett ved hjelp av funksjonen make_blobs(). Denne funksjonen er utmerket for å generere klynger av datapunkter på en visuelt tydelig og kontrollerbar måte. Vi genererer data med følgende egenskaper:

  • Antall eksempler: vi oppretter et datasett med 300 datapunkter;

  • Antall sentre: vi setter antall faktiske klynger til 4. Dette betyr at dummy-dataene er utformet for å ha fire distinkte grupper;

  • Klynge-standardavvik: vi kontrollerer spredningen av datapunkter innen hver klynge, og setter denne til 0.60 for relativt kompakte klynger;

  • Random state: vi bruker en fast random_state for reproduserbarhet, slik at datagenereringen er konsistent hver gang koden kjøres.

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

K-means-implementering

Når dette dummy-datasettet er opprettet, skal vi anvende K-means-algoritmen. Vi undersøker hvordan K-means forsøker å dele opp dataene i klynger basert på prinsippene du har lært i tidligere kapitler.

K-means kan initialiseres og trenes slik i Python:

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

For å bestemme det optimale antallet klynger for disse dataene, benytter vi metodene som er diskutert i tidligere kapitler:

  • WSS-metoden: vi beregner Within-Sum-of-Squares for ulike verdier av K og analyserer elbow-plottet for å identifisere et mulig optimalt K;

  • Silhouette score-metoden: vi beregner Silhouette Score for ulike verdier av K og undersøker Silhouette-plottet og gjennomsnittlige Silhouette Scores for å finne K som gir best klyngekvalitet.

Til slutt vil visualiseringer spille en sentral rolle i implementeringen. Vi visualiserer:

  • Selve dummy-dataene, for å se den innebygde klynge-strukturen;

  • WSS-plottet, for å identifisere elbow-punktet;

  • Silhouette-plottet, for å vurdere klyngekvalitet for ulike K-verdier;

  • De endelige K-means-klyngene lagt over dummy-dataene, for å visuelt verifisere klyngeinndelingen og det valgte optimale K.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 5

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

Can you explain how the elbow method helps determine the optimal number of clusters?

What is the Silhouette score and how is it interpreted in clustering?

Can you walk me through the steps of visualizing the K-means clustering results?

Awesome!

Completion rate improved to 2.94

bookImplementering på Dummy-datasett

Sveip for å vise menyen

Du vil nå gå gjennom et praktisk eksempel på bruk av K-means klynging. For dette formålet benyttes et dummy-datasett. Dummy-datasett er kunstig genererte datasett som ofte brukes til demonstrasjon og læring. De gir oss mulighet til å kontrollere egenskapene til dataene og tydelig observere hvordan algoritmer som K-means fungerer.

Dummy-datasett

Til denne demonstrasjonen vil vi opprette et dummy-datasett ved hjelp av funksjonen make_blobs(). Denne funksjonen er utmerket for å generere klynger av datapunkter på en visuelt tydelig og kontrollerbar måte. Vi genererer data med følgende egenskaper:

  • Antall eksempler: vi oppretter et datasett med 300 datapunkter;

  • Antall sentre: vi setter antall faktiske klynger til 4. Dette betyr at dummy-dataene er utformet for å ha fire distinkte grupper;

  • Klynge-standardavvik: vi kontrollerer spredningen av datapunkter innen hver klynge, og setter denne til 0.60 for relativt kompakte klynger;

  • Random state: vi bruker en fast random_state for reproduserbarhet, slik at datagenereringen er konsistent hver gang koden kjøres.

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

K-means-implementering

Når dette dummy-datasettet er opprettet, skal vi anvende K-means-algoritmen. Vi undersøker hvordan K-means forsøker å dele opp dataene i klynger basert på prinsippene du har lært i tidligere kapitler.

K-means kan initialiseres og trenes slik i Python:

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

For å bestemme det optimale antallet klynger for disse dataene, benytter vi metodene som er diskutert i tidligere kapitler:

  • WSS-metoden: vi beregner Within-Sum-of-Squares for ulike verdier av K og analyserer elbow-plottet for å identifisere et mulig optimalt K;

  • Silhouette score-metoden: vi beregner Silhouette Score for ulike verdier av K og undersøker Silhouette-plottet og gjennomsnittlige Silhouette Scores for å finne K som gir best klyngekvalitet.

Til slutt vil visualiseringer spille en sentral rolle i implementeringen. Vi visualiserer:

  • Selve dummy-dataene, for å se den innebygde klynge-strukturen;

  • WSS-plottet, for å identifisere elbow-punktet;

  • Silhouette-plottet, for å vurdere klyngekvalitet for ulike K-verdier;

  • De endelige K-means-klyngene lagt over dummy-dataene, for å visuelt verifisere klyngeinndelingen og det valgte optimale K.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 5
some-alt