Phương pháp khuỷu tay phân cụm phân cấp Python

Việc xác định số cụm tối ưu trong tập dữ liệu là một vấn đề cơ bản trong phân cụm phân vùng, chẳng hạn như phân cụm k-mean, yêu cầu người dùng chỉ định số cụm k sẽ được tạo

Thật không may, không có câu trả lời dứt khoát cho câu hỏi này. Số lượng cụm tối ưu theo cách nào đó mang tính chủ quan và phụ thuộc vào phương pháp được sử dụng để đo lường sự tương đồng và các tham số được sử dụng để phân vùng.
Một giải pháp đơn giản và phổ biến bao gồm việc kiểm tra chương trình dendro được tạo bằng cách sử dụng phân cụm theo thứ bậc để xem liệu nó có gợi ý một số cụm cụ thể hay không. Thật không may, cách tiếp cận này cũng chủ quan.

Trong chương này, chúng tôi sẽ mô tả các phương pháp khác nhau để xác định số lượng cụm tối ưu cho k-mean, k-medoids (PAM) và phân cụm theo thứ bậc

Các phương pháp này bao gồm phương pháp trực tiếp và phương pháp kiểm tra thống kê

  1. phương pháp trực tiếp. bao gồm tối ưu hóa một tiêu chí, chẳng hạn như tổng bình phương trong cụm hoặc hình bóng trung bình. Các phương thức tương ứng được đặt tên tương ứng là các phương thức khuỷu tay và hình bóng
  2. Phương pháp kiểm định thống kê. bao gồm so sánh bằng chứng chống lại giả thuyết không. Một ví dụ là thống kê khoảng cách

Ngoài các phương pháp thống kê khuỷu tay, hình bóng và khoảng cách, còn có hơn ba mươi chỉ số và phương pháp khác đã được xuất bản để xác định số lượng cụm tối ưu. Chúng tôi sẽ cung cấp mã R để tính toán tất cả 30 chỉ số này nhằm quyết định số lượng cụm tốt nhất bằng cách sử dụng “quy tắc đa số”

Đối với mỗi phương pháp này

  • Chúng tôi sẽ mô tả ý tưởng cơ bản và thuật toán
  • Chúng tôi sẽ cung cấp mã R dễ sử dụng với nhiều ví dụ để xác định số lượng cụm tối ưu và trực quan hóa đầu ra


nội dung

sách liên quan

Hướng dẫn thực hành về phân tích cụm trong R

phương pháp khuỷu tay

Nhớ lại rằng, ý tưởng cơ bản đằng sau các phương pháp phân vùng, chẳng hạn như phân cụm theo phương tiện k, là xác định các cụm sao cho tổng biến thể bên trong cụm [hoặc tổng bình phương bên trong cụm (WSS)] được giảm thiểu. Tổng WSS đo lường mức độ nhỏ gọn của cụm và chúng tôi muốn nó càng nhỏ càng tốt

Phương pháp Elbow xem tổng WSS là một hàm của số lượng cụm. Người ta nên chọn một số cụm để việc thêm một cụm khác không cải thiện tốt hơn nhiều so với tổng WSS

Số lượng cụm tối ưu có thể được xác định như sau

  1. Tính toán thuật toán phân cụm (e. g. , k-nghĩa là phân cụm) cho các giá trị khác nhau của k. Chẳng hạn, bằng cách thay đổi k từ 1 đến 10 cụm
  2. Đối với mỗi k, hãy tính tổng bình phương trong cụm (wss)
  3. Vẽ đường cong của wss theo số cụm k
  4. Vị trí của một khúc cua (đầu gối) trong ô thường được coi là một chỉ báo về số lượng cụm thích hợp

Lưu ý rằng, phương pháp khuỷu tay đôi khi không rõ ràng. Một phương pháp thay thế là phương pháp bóng trung bình (Kaufman và Rousseeuw [1990]) cũng có thể được sử dụng với bất kỳ phương pháp phân cụm nào

Phương pháp bóng trung bình

Phương pháp hình bóng trung bình chúng ta sẽ được mô tả toàn diện trong thống kê xác thực cụm chương. Tóm lại, nó đo lường chất lượng của một cụm. Nghĩa là, nó xác định mức độ tốt của từng đối tượng nằm trong cụm của nó. Chiều rộng hình bóng trung bình cao cho thấy sự phân cụm tốt

Phương pháp bóng trung bình tính toán bóng trung bình của các quan sát cho các giá trị khác nhau của k. Số cụm k tối ưu là số tối đa hóa hình bóng trung bình trên một loạt các giá trị có thể có của k (Kaufman và Rousseeuw 1990) .

Thuật toán tương tự như phương pháp khuỷu tay và có thể được tính toán như sau

  1. Tính toán thuật toán phân cụm (e. g. , k-nghĩa là phân cụm) cho các giá trị khác nhau của k. Chẳng hạn, bằng cách thay đổi k từ 1 đến 10 cụm
  2. Đối với mỗi k, hãy tính hình bóng trung bình của các quan sát ( avg. si ).
  3. Viết đường cong của avg. sil theo số cụm k.
  4. Vị trí của cực đại được coi là số lượng cụm thích hợp

Phương pháp thống kê khoảng cách

Thống kê khoảng cách đã được xuất bản bởi R. Tibshirani, G. Walther và T. Hastie (Đại học Stanford, 2001). Cách tiếp cận có thể được áp dụng cho bất kỳ phương pháp phân cụm nào

Thống kê khoảng cách so sánh tổng số trong biến thể trong cụm đối với các giá trị khác nhau của k với các giá trị dự kiến ​​của chúng trong phân phối tham chiếu null của dữ liệu. Ước tính của các cụm tối ưu sẽ là giá trị tối đa hóa thống kê khoảng cách (i. e, mang lại thống kê khoảng cách lớn nhất). Điều này có nghĩa là cấu trúc phân cụm khác xa với sự phân bố điểm đồng đều ngẫu nhiên

Thuật toán hoạt động như sau

  1. Phân cụm dữ liệu được quan sát, thay đổi số lượng cụm từ k = 1, …, kmax và tính toán tổng số tương ứng trong phạm vi nội bộ . Wk.
  2. Tạo tập dữ liệu tham chiếu B với phân phối đồng đều ngẫu nhiên. Nhóm từng tập dữ liệu tham chiếu này với số lượng cụm khác nhau k = 1, …, kmax và tính toán tổng số tương ứng trong phạm vi thay đổi trong cụm Wkb.
  3. Tính toán thống kê khoảng cách ước tính là độ lệch của giá trị Wk quan sát được so với giá trị dự kiến ​​ Wkb . under the null hypothesis: \(Gap(k) = \frac{1}{B} \sum\limits_{b=1}^B log(W_{kb}^*) - log(W_k)\ . Tính cả độ lệch chuẩn của thống kê. . Compute also the standard deviation of the statistics.
  4. Chọn số cụm là giá trị nhỏ nhất của k sao cho thống kê khoảng cách nằm trong một độ lệch chuẩn của khoảng cách tại k+1. Khoảng cách(k)≥Gap(k + 1)−sk + 1 .

Lưu ý rằng, sử dụng B = 500 cho kết quả khá chính xác để biểu đồ khoảng cách về cơ bản không thay đổi sau một lần chạy khác

Tính toán số lượng cụm bằng R

Trong phần này, chúng tôi sẽ mô tả hai chức năng để xác định số cụm tối ưu

  1. Hàm fviz_nbclust() [trên thực tế là gói R bổ sung]. Nó có thể được sử dụng để tính toán ba phương pháp khác nhau [thống kê khuỷu tay, hình bóng và khoảng cách] cho bất kỳ phương pháp phân cụm phân vùng nào [K-means, K-medoids (PAM), CLARA, HCUT]. Lưu ý rằng hàm hcut() chỉ có trong gói factoextra. Nó tính toán phân cụm theo thứ bậc và cắt cây thành k cụm được chỉ định trước
  2. Hàm NbClust() [ trong gói NbClust R] (Charrad et al. 2014) . Nó cung cấp 30 chỉ số để xác định số lượng cụm có liên quan và đề xuất cho người dùng sơ đồ phân cụm tốt nhất từ ​​các kết quả khác nhau thu được bằng cách thay đổi tất cả các kết hợp số lượng cụm, thước đo khoảng cách và phương pháp phân cụm. Nó có thể tính toán đồng thời tất cả các chỉ số và xác định số lượng cụm trong một lệnh gọi hàm.

Gói R bắt buộc

Chúng tôi sẽ sử dụng các gói R sau

  • factoextra để xác định các cụm số tối ưu cho một phương pháp phân cụm nhất định và để trực quan hóa dữ liệu
  • NbClust để tính toán khoảng 30 phương thức cùng một lúc, để tìm số lượng cụm tối ưu

Để cài đặt các gói, gõ cái này

pkgs <- c("factoextra",  "NbClust")
install.packages(pkgs)

Tải các gói như sau

library(factoextra)
library(NbClust)

Chuẩn bị dữ liệu

Chúng tôi sẽ sử dụng dữ liệu USArrests làm tập dữ liệu demo. Chúng tôi bắt đầu bằng cách chuẩn hóa dữ liệu để làm cho các biến có thể so sánh được

# Standardize the data
df <- scale(USArrests)
head(df)
##            Murder Assault UrbanPop     Rape
## Alabama    1.2426   0.783   -0.521 -0.00342
## Alaska     0.5079   1.107   -1.212  2.48420
## Arizona    0.0716   1.479    0.999  1.04288
## Arkansas   0.2323   0.231   -1.074 -0.18492
## California 0.2783   1.263    1.759  2.06782
## Colorado   0.0257   0.399    0.861  1.86497

hàm fviz_nbclust(). Phương pháp thống kê Elbow, Silhouette và Gap

Định dạng đơn giản hóa như sau

fviz_nbclust(x, FUNcluster, method = c("silhouette", "wss", "gap_stat"))

  • x. ma trận số hoặc khung dữ liệu
  • FUNcluster. chức năng phân vùng. Các giá trị được phép bao gồm kmeans, pam, clara và hcut (đối với phân cụm theo cấp bậc)
  • phương pháp. phương pháp được sử dụng để xác định số cụm tối ưu

Mã R bên dưới xác định số cụm tối ưu cho phân cụm k-means

# Elbow method
fviz_nbclust(df, kmeans, method = "wss") +
    geom_vline(xintercept = 4, linetype = 2)+
  labs(subtitle = "Elbow method")

# Silhouette method
fviz_nbclust(df, kmeans, method = "silhouette")+
  labs(subtitle = "Silhouette method")

# Gap statistic
# nboot = 50 to keep the function speedy. 
# recommended value: nboot= 500 for your analysis.
# Use verbose = FALSE to hide computing progression.
set.seed(123)
fviz_nbclust(df, kmeans, nstart = 25,  method = "gap_stat", nboot = 50)+
  labs(subtitle = "Gap statistic method")
## Clustering k = 1,2,..., K.max (= 10): . done
## Bootstrapping, b = 1,2,..., B (= 50)  [one "." per sample]:
## ................................................. 50

Phương pháp khuỷu tay phân cụm phân cấp Python
Phương pháp khuỷu tay phân cụm phân cấp Python
Phương pháp khuỷu tay phân cụm phân cấp Python

  • phương pháp khuỷu tay. Đề xuất giải pháp 4 cụm
  • phương pháp bóng. Giải pháp 2 cụm được đề xuất
  • Phương pháp thống kê khoảng cách. Đề xuất giải pháp 4 cụm

Theo những quan sát này, có thể xác định k = 4 là số cụm tối ưu trong dữ liệu

Nhược điểm của phương pháp khuỷu tay và hình bóng trung bình là, chúng chỉ đo lường một đặc điểm phân cụm toàn cầu. Một phương pháp tinh vi hơn là sử dụng thống kê khoảng cách cung cấp quy trình thống kê để chính thức hóa heuristic khuỷu tay/hình bóng để ước tính số lượng cụm tối ưu

hàm NbClust(). 30 chỉ số để chọn số cụm tốt nhất

Định dạng đơn giản hóa của hàm NbClust() là

NbClust(data = NULL, diss = NULL, distance = "euclidean",
        min.nc = 2, max.nc = 15, method = NULL)

  • dữ liệu. ma trận
  • phản đối. ma trận không tương tự được sử dụng. Theo mặc định, dis=NULL, nhưng nếu nó được thay thế bằng một ma trận không giống nhau, thì khoảng cách sẽ là “NULL”
  • khoảng cách. thước đo khoảng cách được sử dụng để tính toán ma trận không giống nhau. Các giá trị có thể bao gồm “euclidean”, “manhattan” hoặc “NULL”
  • tối thiểu. nc, tối đa. nc. số lượng cụm tối thiểu và tối đa, tương ứng
  • phương pháp. Phương pháp phân tích cụm sẽ được sử dụng bao gồm “phường. D”, “phường. D2”, “đơn”, “hoàn thành”, “trung bình”, “kmeans” và hơn thế nữa

  • Để tính toán NbClust() cho kmeans, hãy sử dụng method = “kmeans”
  • Để tính toán NbClust() cho phân cụm theo cấp bậc, phương thức phải là một trong c(“ward. D”, “phường. D2”, “đơn”, “hoàn thành”, “trung bình”)

Mã R bên dưới tính toán NbClust() cho phương tiện k

Ở đây, có những nội dung bị ẩn đối với các thành viên không phải trả phí. Đăng ký ngay bây giờ để đọc tất cả các nội dung cao cấp của chúng tôi và được cấp chứng chỉ hoàn thành khóa học.
Yêu cầu tư cách thành viên của bạn ngay bây giờ

________số 8

Phương pháp khuỷu tay phân cụm phân cấp Python

  • 2 đề xuất 0 là số cụm tốt nhất
  • 10 chỉ số được đề xuất 2 là số cụm tốt nhất
  • 2 đề xuất 3 là số cụm tốt nhất
  • 8 đề xuất 4 là số cụm tốt nhất

Theo quy tắc đa số, số cụm tốt nhất là 2

Bản tóm tắt

Trong bài viết này, chúng tôi đã mô tả các phương pháp khác nhau để chọn số lượng cụm tối ưu trong một tập dữ liệu. Các phương pháp này bao gồm khuỷu tay, hình bóng và phương pháp thống kê khoảng cách

Chúng tôi đã trình bày cách tính toán các phương thức này bằng cách sử dụng hàm R fviz_nbclust() [gói R trên thực tế]. Ngoài ra, chúng tôi đã mô tả gói NbClust(), gói này có thể được sử dụng để tính toán đồng thời nhiều chỉ số và phương pháp khác để xác định số lượng cụm

Sau khi chọn số cụm k, bước tiếp theo là thực hiện phân cụm phân vùng như mô tả tại. k-nghĩa là phân cụm

Người giới thiệu

Charrad, Malika, Nadia Ghazzali, Véronique Boiteau và Azam Niknafs. 2014. “NbClust. Gói R để xác định số lượng cụm có liên quan trong tập dữ liệu. ” Tạp chí Phần mềm Thống kê 61. 1–36. http. //www. jstatsoft. org/v61/i06/giấy

Kaufman, Leonard và Peter Rousseeuw. 1990. Tìm nhóm trong dữ liệu. Giới thiệu về phân tích cụm



Đề xuất cho bạn

Phần này chứa các tài nguyên khoa học dữ liệu và phát triển bản thân tốt nhất để giúp bạn trên con đường của mình

Coursera - Các khóa học và chuyên môn trực tuyến

Khoa học dữ liệu

  • Món ăn. Học máy. Nắm vững các nguyên tắc cơ bản của Stanford
  • chuyên ngành. Khoa học dữ liệu của Đại học Johns Hopkins
  • chuyên ngành. Python cho mọi người của Đại học Michigan
  • khóa học. Xây dựng kỹ năng cho công việc hàng đầu trong bất kỳ ngành nào của Coursera
  • chuyên ngành. Nắm vững các nguyên tắc cơ bản về học máy của Đại học Washington
  • chuyên ngành. Thống kê với R của Đại học Duke
  • chuyên ngành. Phát triển phần mềm trong R của Đại học Johns Hopkins
  • chuyên ngành. Khoa học dữ liệu bộ gen của Đại học Johns Hopkins

Các khóa học phổ biến ra mắt vào năm 2020

  • Tự động hóa CNTT của Google với Python của Google
  • AI cho Y học bằng cách học sâu. ai
  • Dịch tễ học trong Thực hành Y tế Công cộng của Đại học Johns Hopkins
  • Nguyên tắc cơ bản về AWS của Amazon Web Services

Các khóa học thịnh hành

  • Khoa học về Hạnh phúc của Đại học Yale
  • Google IT Support Professional của Google
  • Python cho mọi người của Đại học Michigan
  • Chứng chỉ Chuyên gia Khoa học Dữ liệu IBM của IBM
  • Nền tảng kinh doanh của Đại học Pennsylvania
  • Giới thiệu về Tâm lý học của Đại học Yale
  • Kỹ năng Excel cho doanh nghiệp của Đại học Macquarie
  • Sơ cứu tâm lý của Đại học Johns Hopkins
  • Thiết kế đồ họa bởi Cal Arts

FBA Amazon

Máy bán hàng tuyệt vời

  • Đào tạo miễn phí - Cách xây dựng doanh nghiệp Amazon FBA 7 con số mà bạn có thể điều hành 100% tại nhà và xây dựng cuộc sống mơ ước của mình. bởi ASM

Sách - Khoa học dữ liệu

sách của chúng tôi

  • Hướng dẫn thực hành về phân tích cụm trong R by A. Kassambara (Datanovia)
  • Hướng dẫn thực hành về các phương thức thành phần chính trong R của A. Kassambara (Datanovia)
  • Cơ bản về máy học. Hướng dẫn thực hành trong R by A. Kassambara (Datanovia)
  • R Graphics Essentials for Great Data Visualization của A. Kassambara (Datanovia)
  • GGPlot2 Essentials để trực quan hóa dữ liệu tuyệt vời trong R by A. Kassambara (Datanovia)
  • Phân tích và trực quan hóa mạng trong R by A. Kassambara (Datanovia)
  • Thống kê thực tế trong R để so sánh các nhóm. Biến số theo A. Kassambara (Datanovia)
  • Yếu tố cần thiết về độ tin cậy giữa các xếp hạng. Hướng dẫn thực hành trong R by A. Kassambara (Datanovia)

Khác

  • R cho Khoa học dữ liệu. Dữ liệu Nhập, Ngăn nắp, Chuyển đổi, Trực quan hóa và Mô hình của Hadley Wickham & Garrett Grolemund
  • Học máy thực hành với Scikit-Learn, Keras và TensorFlow. Khái niệm, Công cụ và Kỹ thuật để Xây dựng Hệ thống Thông minh của Aurelien Géron
  • Thống kê thực tế cho các nhà khoa học dữ liệu. 50 khái niệm cơ bản của Peter Bruce & Andrew Bruce
  • Lập trình thực hành với R. Viết các hàm và mô phỏng của riêng bạn bởi Garrett Grolemund và Hadley Wickham
  • Giới thiệu về học thống kê. với Ứng dụng trong R của Gareth James và cộng sự
  • Học sâu với R của François Chollet & J. J. Allaire
  • Học sâu với Python của François Chollet

Đánh giá xu hướng phân cụm (Bài trước)

(Bài học tiếp theo) Thống kê xác thực cụm. Phương pháp phải biết

Quay lại Khái niệm xác thực cụm

Bình luận ( 14 )

  • Kate Godfrey

    07 Thg 12 2018

    Kịch bản

    # Elbow method
    fviz_nbclust(sub_rbsr_srs_scale, kmeans, method = “wss”) +
    geom_vline(xintercept = 4, linetype = 2)+
    labs(subtitle = “Elbow method”)

    Không hoạt động chính xác. Hàm không tính toán phần chặn của 4, nó được chỉ định bởi tập lệnh bất kể khung dữ liệu

  • Kate Godfrey

    07 Thg 12 2018

    Kịch bản

    # Elbow method
    fviz_nbclust(sub_rbsr_srs_scale, kmeans, method = “wss”) +
    geom_vline(xintercept = 4, linetype = 2)+
    labs(subtitle = “Elbow method”)

    Không hoạt động chính xác. Hàm không tính toán phần chặn của 4, nó được chỉ định bởi tập lệnh bất kể khung dữ liệu

    • Kassambara

      08 Thg 12 2018

      Với phương pháp khuỷu tay (method=“wss”), người phân tích cần xác định được vị trí của một khúc cua (đầu gối) trong ô

      Tất nhiên, vị trí của khúc cua phụ thuộc vào dữ liệu hiện có. Với dữ liệu demo của chúng tôi, giá trị tương ứng là K = 4. Bạn cần thay đổi giá trị này theo dữ liệu của mình

  • Jose Romero

    07 Thg 1 2019

    Xin chào, bạn có thể giải thích điều bạn ám chỉ khi nói “Vị trí uốn cong (đầu gối)” ¿có liên quan đến đạo hàm của đồ thị không?

  • Lucia

    28 Th03 2019

    Xin chào, cảm ơn vì bài viết. Nó là tuyệt vời. Tôi vẫn có một vấn đề mặc dù. Làm cách nào để xác định số cụm tối ưu nếu tôi có dữ liệu hỗn hợp? . Trong dữ liệu của tôi, tôi có các biến danh nghĩa, thứ tự và số. Tôi đã sử dụng khoảng cách gower để tính toán ma trận không giống nhau và dự định sử dụng phân cụm theo thứ bậc (nhưng tôi sẵn sàng thay đổi phương pháp đó). Cảm ơn

  • Hoàn toàn phù hợp

    15 Th04 2019

    Có 4 phương pháp khác ngoài phương pháp khuỷu tay. Tôi nghĩ rằng bạn đã không đề cập đến phương pháp CCC cũng dựa trên giá trị R2. Tôi đang sử dụng phân tích thống kê JMP và ở đó CCC là phương pháp chính để xác định số lượng cụm. Phương pháp phân cấp sử dụng phương pháp Elbow mặc dù

    • Kassambara

      15 Th04 2019

      Cảm ơn về thông tin bạn vừa nhập. Tôi sẽ đưa nó vào tài khoản

  • Vijay Kumar

    21 Th04 2019

    Xin chào, khi tôi chạy df <-scale(USArrests) tôi gặp Lỗi trong colMeans(x, na. rm = ĐÚNG). 'x' phải là số. Làm thế nào để sửa chữa nó?

    • Kassambara

      23 Th04 2019

      Xin chào, lỗi không thể tái tạo trên máy tính của tôi

      Hãy thử điều này

      dữ liệu(USArrests)
      tỷ lệ(USArrests)

  • Murilo Cassiano

    07 Thg 08 2019

    bài đăng tuyệt vời. Vượt trội

  • Grigorios G

    29 Thg 1 2020

    Cảm ơn vì bài đăng. Có bất kỳ kế hoạch nào để triển khai song song các gói không vì chúng chạy rất chậm trên các bộ dữ liệu lớn

  • Abilash

    14 Thg 10 2020

    trong các khóa học được đề xuất cho bạn, có một lỗi đánh máy, đó phải là Stanford chứ không phải Stanford

  • Georg Roth

    08 Th02 2021

    Bạn không cần một số tiêu chí hợp lệ của cụm. Silhouette là người chiến thắng trong cuộc so sánh duy nhất cho đến nay, xem. Olatz Arbelaitz/Ibai Gurrutxaga/Javier Muguerza/Jesus Perez/Inigo Perona, Một nghiên cứu so sánh sâu rộng về các chỉ số hợp lệ của cụm. Nhận dạng mẫu 46, 2013, 243–256

  • Lệ gia

    04 Th07 2021

    Tôi nghĩ rằng thống kê khoảng cách không phải là một bài kiểm tra giả thuyết, vì vậy công thức của Gap(k) không phải là giả thuyết khống

Đưa ra nhận xét

Bạn muốn gửi một vấn đề với R? . Cách bao gồm các ví dụ tập lệnh R có thể tái tạo trong Datanovia Nhận xét

Bạn có thể sử dụng phương pháp khuỷu tay để phân cụm theo cấp bậc không?

Trong K-Means, số lượng cụm tối ưu được tìm thấy bằng phương pháp khuỷu tay. Trong phân cụm theo thứ bậc, chương trình dendro được sử dụng cho mục đích này . Các dòng mã dưới đây vẽ một dendrogram cho tập dữ liệu của chúng tôi.

Phương pháp khuỷu tay trong Python là gì?

Phương pháp khuỷu tay chạy phân cụm k-means trên tập dữ liệu cho một phạm vi giá trị của k (giả sử từ 1-10) và sau đó tính điểm trung bình cho mỗi giá trị của k . Theo mặc định, điểm biến dạng được tính toán, tổng của các khoảng cách bình phương từ mỗi điểm đến tâm được chỉ định của nó. . By default, the distortion score is computed, the sum of square distances from each point to its assigned center.

Phương pháp khuỷu tay được sử dụng như thế nào trong phân cụm?

Trong phân tích cụm, phương pháp khuỷu tay là một heuristic được sử dụng để xác định số lượng cụm trong tập dữ liệu. Phương pháp này bao gồm vẽ đồ thị biến thể được giải thích dưới dạng hàm của số lượng cụm và chọn khuỷu tay của đường cong làm số lượng cụm sẽ sử dụng .

Làm cách nào để tìm số cụm tối ưu trong Python phân cụm theo cấp bậc?

Để có được số cụm tối ưu cho phân cụm theo cấp bậc, chúng tôi thực hiện sử dụng chương trình dendro là biểu đồ dạng cây hiển thị trình tự hợp nhất hoặc tách cụm. If two clusters are merged, the dendrogram will join them in a graph and the height of the join will be the distance between those clusters.