Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Implementering på Dummy-Dataset | K-Means
Klusteranalys med Python

bookImplementering på Dummy-Dataset

Du kommer nu att gå igenom ett praktiskt exempel på tillämpning av K-means-klustring. För detta kommer du att använda en dummy-dataset. Dummy-dataset är artificiellt genererade dataset som ofta används för demonstration och inlärningssyften. De gör det möjligt för oss att kontrollera datats egenskaper och tydligt observera hur algoritmer som K-means presterar.

Dummy-dataset

För denna demonstration kommer vi att skapa ett dummy-dataset med funktionen make_blobs(). Denna funktion är utmärkt för att generera kluster av datapunkter på ett visuellt tydligt och kontrollerbart sätt. Vi kommer att generera data med följande egenskaper:

  • Antal observationer: vi skapar ett dataset med 300 datapunkter;

  • Antal center: vi sätter antalet verkliga kluster till 4. Detta innebär att dummy-datat är utformat för att ha fyra distinkta grupper;

  • Klusterstandardavvikelse: vi kontrollerar spridningen av datapunkter inom varje kluster och sätter den till 0.60 för relativt kompakta kluster;

  • Slumptalsfrö: vi använder ett fast random_state för reproducerbarhet, vilket säkerställer att datagenereringen är konsekvent varje gång du kör koden.

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

K-means-implementering

Med detta dummy-data skapat kommer vi sedan att tillämpa K-means-algoritmen. Vi kommer att undersöka hur K-means försöker dela upp dessa data i kluster baserat på de principer du lärt dig i tidigare kapitel.

K-means kan initieras och tränas enligt följande i Python:

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

För att bestämma det optimala antalet kluster för dessa data kommer vi att använda de metoder som diskuterats i tidigare kapitel:

  • WSS-metoden: vi beräknar Within-Sum-of-Squares för olika värden på K och analyserar elbow-diagrammet för att identifiera ett potentiellt optimalt K;

  • Silhouette score-metoden: vi beräknar Silhouette Score för olika värden på K och undersöker Silhouette-diagrammet och genomsnittliga Silhouette-värden för att hitta det K som maximerar klusterkvaliteten.

Slutligen kommer visualiseringar att spela en avgörande roll i vår implementering. Vi kommer att visualisera:

  • Själva dummy-datat, för att se den inneboende klusterstrukturen;

  • WSS-diagrammet, för att identifiera elbow-punkten;

  • Silhouette-diagrammet, för att utvärdera klusterkvalitet för olika K-värden;

  • De slutliga K-means-klustren överlagrade på dummy-datat, för att visuellt verifiera klustringsresultaten och det valda optimala K.

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 5

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

bookImplementering på Dummy-Dataset

Svep för att visa menyn

Du kommer nu att gå igenom ett praktiskt exempel på tillämpning av K-means-klustring. För detta kommer du att använda en dummy-dataset. Dummy-dataset är artificiellt genererade dataset som ofta används för demonstration och inlärningssyften. De gör det möjligt för oss att kontrollera datats egenskaper och tydligt observera hur algoritmer som K-means presterar.

Dummy-dataset

För denna demonstration kommer vi att skapa ett dummy-dataset med funktionen make_blobs(). Denna funktion är utmärkt för att generera kluster av datapunkter på ett visuellt tydligt och kontrollerbart sätt. Vi kommer att generera data med följande egenskaper:

  • Antal observationer: vi skapar ett dataset med 300 datapunkter;

  • Antal center: vi sätter antalet verkliga kluster till 4. Detta innebär att dummy-datat är utformat för att ha fyra distinkta grupper;

  • Klusterstandardavvikelse: vi kontrollerar spridningen av datapunkter inom varje kluster och sätter den till 0.60 för relativt kompakta kluster;

  • Slumptalsfrö: vi använder ett fast random_state för reproducerbarhet, vilket säkerställer att datagenereringen är konsekvent varje gång du kör koden.

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

K-means-implementering

Med detta dummy-data skapat kommer vi sedan att tillämpa K-means-algoritmen. Vi kommer att undersöka hur K-means försöker dela upp dessa data i kluster baserat på de principer du lärt dig i tidigare kapitel.

K-means kan initieras och tränas enligt följande i Python:

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

För att bestämma det optimala antalet kluster för dessa data kommer vi att använda de metoder som diskuterats i tidigare kapitel:

  • WSS-metoden: vi beräknar Within-Sum-of-Squares för olika värden på K och analyserar elbow-diagrammet för att identifiera ett potentiellt optimalt K;

  • Silhouette score-metoden: vi beräknar Silhouette Score för olika värden på K och undersöker Silhouette-diagrammet och genomsnittliga Silhouette-värden för att hitta det K som maximerar klusterkvaliteten.

Slutligen kommer visualiseringar att spela en avgörande roll i vår implementering. Vi kommer att visualisera:

  • Själva dummy-datat, för att se den inneboende klusterstrukturen;

  • WSS-diagrammet, för att identifiera elbow-punkten;

  • Silhouette-diagrammet, för att utvärdera klusterkvalitet för olika K-värden;

  • De slutliga K-means-klustren överlagrade på dummy-datat, för att visuellt verifiera klustringsresultaten och det valda optimala K.

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 5
some-alt