Phân cụm K-Means là một thuật toán cơ bản trong học không giám sát , được sử dụng rộng rãi để phân vùng một tập dữ liệu thành một số lượng được xác định trước (K) các cụm riêng biệt, không chồng chéo. Nó đặc biệt hiệu quả để khám phá các cấu trúc nhóm cơ bản trong dữ liệu khi bạn không có nhãn được xác định trước. Mục tiêu chính của K-Means là nhóm các điểm dữ liệu tương tự lại với nhau bằng cách giảm thiểu phương sai trong mỗi cụm, cụ thể là tổng các khoảng cách bình phương giữa mỗi điểm dữ liệu và tâm (điểm trung bình) của cụm được chỉ định. Đây là một kỹ thuật nền tảng trong khai thác dữ liệu và phân tích dữ liệu khám phá .
Cách thức hoạt động của cụm K-Means
Thuật toán K-Means hoạt động thông qua một quá trình lặp lại để tìm ra các phân cụm tối ưu. Quá trình này thường bao gồm các bước sau:
- Khởi tạo : Đầu tiên, phải chỉ định số cụm, K. Đây là bước quan trọng và thường liên quan đến một số kiến thức hoặc thử nghiệm về miền, đôi khi liên quan đến các kỹ thuật điều chỉnh siêu tham số hoặc các phương pháp như phương pháp khuỷu tay để tìm K tối ưu (xem mục Chọn đúng số cụm ). Sau đó, chọn K trọng tâm ban đầu, thường là chọn ngẫu nhiên K điểm dữ liệu từ tập dữ liệu hoặc sử dụng các phương pháp phức tạp hơn như K-Means++.
- Bước gán : Mỗi điểm dữ liệu trong tập dữ liệu được gán cho tâm gần nhất. "Độ gần" thường được đo bằng khoảng cách Euclid, mặc dù có thể sử dụng các số liệu khoảng cách khác tùy thuộc vào đặc điểm dữ liệu. Bước này tạo thành K cụm ban đầu.
- Bước cập nhật : Các tâm của cụm mới được hình thành được tính toán lại. Tâm mới là giá trị trung bình (trung bình cộng) của tất cả các điểm dữ liệu được gán cho cụm đó.
- Lặp lại : Bước 2 và 3 được lặp lại cho đến khi đạt được tiêu chí dừng. Tiêu chí chung bao gồm các tâm không còn di chuyển đáng kể, các điểm dữ liệu không còn thay đổi các chỉ định cụm hoặc đạt đến số lần lặp tối đa.
Sự tinh chỉnh lặp đi lặp lại này đảm bảo rằng thuật toán cải thiện dần dần tính nhỏ gọn và tách biệt của các cụm. K-Means được đánh giá cao vì tính đơn giản và hiệu quả tính toán, giúp nó có thể mở rộng cho các tập dữ liệu lớn . Để tìm hiểu sâu hơn về cơ chế và triển khai, các tài nguyên như ghi chú Stanford CS221 về K-Means hoặc tài liệu phân cụm scikit-learn cung cấp thông tin chi tiết mở rộng.
Ứng dụng của K-Means Clustering
K-Means Clustering tìm thấy ứng dụng trong nhiều lĩnh vực trong Trí tuệ nhân tạo (AI) và Học máy (ML) . Sau đây là hai ví dụ cụ thể:
- Phân khúc khách hàng : Các doanh nghiệp thường sử dụng K-Means để nhóm khách hàng dựa trên lịch sử mua hàng, thông tin nhân khẩu học hoặc hành vi trên trang web. Ví dụ, một công ty thương mại điện tử có thể nhóm khách hàng thành các nhóm như 'người mua sắm thường xuyên chi tiêu nhiều', 'người mua sắm thỉnh thoảng có ý thức về ngân sách', v.v. Điều này cho phép các chiến dịch tiếp thị có mục tiêu và các đề xuất sản phẩm được cá nhân hóa, góp phần vào các chiến lược được thảo luận trong AI trong Bán lẻ . Hiểu về Phân khúc khách hàng là chìa khóa trong phân tích tiếp thị.
- Nén hình ảnh và lượng tử hóa màu : Trong Computer Vision (CV) , K-Means có thể được sử dụng để lượng tử hóa màu, một dạng nén hình ảnh có mất dữ liệu. Thuật toán nhóm các màu tương tự trong bảng màu của hình ảnh thành K cụm. Sau đó, màu của mỗi pixel được thay thế bằng màu của tâm cụm mà nó thuộc về. Điều này làm giảm đáng kể số lượng màu cần thiết để biểu diễn hình ảnh, do đó nén hình ảnh. Kỹ thuật này hữu ích trong nhiều tác vụ xử lý hình ảnh và thậm chí trong các lĩnh vực như AI trong Bảo tồn di sản văn hóa và nghệ thuật .
Phân cụm K-Means so với các khái niệm liên quan
Hiểu được sự khác biệt giữa K-Means và các thuật toán khác là rất quan trọng để lựa chọn đúng công cụ:
- K-Means so với DBSCAN : Cả hai đều là thuật toán phân cụm, nhưng chúng hoạt động khác nhau. K-Means phân vùng dữ liệu thành một số lượng được chỉ định trước (K) các cụm hình cầu và có thể nhạy cảm với các điểm ngoại lai. Mặt khác, DBSCAN (Phân cụm không gian dựa trên mật độ của các ứng dụng có nhiễu) nhóm các điểm dựa trên mật độ, cho phép tìm các cụm có hình dạng tùy ý và xác định các điểm ngoại lai là nhiễu. Nó không yêu cầu phải chỉ định trước số lượng cụm. Tìm hiểu thêm về các phương pháp phân cụm dựa trên mật độ .
- K-Means so với Học có giám sát : K-Means là phương pháp học không giám sát , nghĩa là nó hoạt động với dữ liệu không có nhãn để tìm các cấu trúc vốn có. Ngược lại, các thuật toán Học có giám sát như các thuật toán được sử dụng để phát hiện đối tượng hoặc phân loại hình ảnh yêu cầu dữ liệu có nhãn (tức là dữ liệu có kết quả hoặc danh mục đã biết) để đào tạo một mô hình dự đoán kết quả cho dữ liệu mới, chưa biết. Ultralytics cung cấp nhiều Bộ dữ liệu học có giám sát cho các nhiệm vụ như vậy.
- K-Means so với Phân cụm phân cấp : Trong khi K-Means tạo ra một tập hợp phẳng các cụm, Phân cụm phân cấp tạo ra một phân cấp hoặc cây các cụm (dendrogram). Điều này cho phép khám phá các cấu trúc cụm ở các cấp độ chi tiết khác nhau nhưng nhìn chung tốn nhiều tính toán hơn K-Means, đặc biệt là đối với Dữ liệu lớn .
Nắm vững K-Means cung cấp nền tảng vững chắc để khám phá cấu trúc dữ liệu. Mặc dù không được sử dụng trực tiếp trong các mô hình như Ultralytics YOLO để phát hiện, việc hiểu về cụm có thể hỗ trợ trong Xử lý dữ liệu trước hoặc phân tích các đặc điểm của tập dữ liệu. Các công cụ như Ultralytics HUB có thể giúp quản lý tập dữ liệu và đào tạo mô hình , có khả năng tận dụng các hiểu biết thu được từ các kỹ thuật cụm để hiểu rõ hơn về phân phối dữ liệu trước khi giải quyết các nhiệm vụ đòi hỏi độ chính xác cao. Việc khám phá sâu hơn vào các số liệu đánh giá cụm (như Điểm Silhouette hoặc Chỉ số Davies-Bouldin) cũng có thể giúp đánh giá chất lượng kết quả K-Means, bổ sung cho Số liệu hiệu suất YOLO tiêu chuẩn. Để có phần giới thiệu rộng hơn, hãy cân nhắc các tài nguyên như giải thích K-Means của IBM hoặc các khóa học giới thiệu trên các nền tảng như Coursera hoặc DataCamp . Bạn có thể tìm thêm các hướng dẫn và hướng dẫn trên Tài liệu Ultralytics .