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

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

Awesome!

Completion rate improved to 2.94

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