Clustering là gì?

Khi bạn cố gắng tìm hiểu về một nội dung nào đó, chẳng hạn như âm nhạc, có thể là một phương pháp để tìm kiếm các nhóm hoặc bộ sưu tập có ý nghĩa. Bạn có thể sắp xếp nhạc theo thể loại, trong khi bạn bè của bạn có thể sắp xếp nhạc theo thập kỷ. Cách chọn nhóm các mục giúp bạn hiểu thêm về các mục đó dưới dạng các bản nhạc riêng lẻ. Bạn có thể thấy rằng mình có niềm yêu thích sâu sắc với nhạc punk rock và tiếp tục chia nhỏ thể loại này thành các cách tiếp cận hoặc âm nhạc khác nhau từ các vị trí khác nhau. Mặt khác, bạn bè của bạn có thể xem nhạc từ những năm 1980 và có thể hiểu cách âm nhạc ở các thể loại tại thời điểm đó chịu ảnh hưởng của khí hậu chính trị xã hội. Trong cả hai trường hợp, bạn và bạn bè đều học được những điều thú vị về âm nhạc, mặc dù bạn đã làm những điều khác nhau.

Trong lĩnh vực máy học, chúng tôi thường nhóm các ví dụ làm bước đầu tiên để tìm hiểu về một chủ đề (tập dữ liệu) trong hệ thống máy học. Việc nhóm các ví dụ không được gắn nhãn được gọi là phân nhóm.

Khi các ví dụ không được gắn nhãn, việc phân nhóm sẽ dựa trên công nghệ máy học không được giám sát. Nếu các ví dụ được gắn nhãn, việc phân nhóm sẽ trở thành phân loại. Để thảo luận chi tiết hơn về các phương thức được giám sát và không được giám sát, hãy xem phần Giới thiệu về Khung sự cố máy học.

Một biểu đồ cho thấy ba cụm
Hình 1: Các ví dụ không gắn nhãn được nhóm thành ba cụm.

Để có thể nhóm các ví dụ tương tự, trước tiên, bạn cần tìm các ví dụ tương tự. Bạn có thể đo lường các điểm tương đồng giữa các ví dụ bằng cách kết hợp dữ liệu tính năng của ví dụ vào một chỉ số, được gọi là đo lường tương tự. Khi mỗi ví dụ được xác định bằng một hoặc hai tính năng, bạn sẽ dễ dàng đo lường các điểm giống nhau. Ví dụ: bạn có thể tìm sách tương tự theo tác giả của những cuốn sách đó. Khi số lượng tính năng tăng lên, việc tạo phép đo tương tự trở nên phức tạp hơn. Chúng ta sẽ tìm hiểu cách tạo biện pháp tương tự trong các trường hợp khác nhau.

Mục đích sử dụng của tính năng phân nhóm là gì?

Nhóm có vô số cách sử dụng trong nhiều ngành. Sau đây là một số ứng dụng phổ biến của tính năng phân nhóm:

  • phân đoạn thị trường
  • phân tích mạng xã hội
  • nhóm kết quả tìm kiếm
  • y khoa
  • phân đoạn hình ảnh
  • phát hiện hoạt động bất thường

Sau khi phân nhóm, mỗi cụm được gán một số gọi là mã cụm. Bây giờ, bạn có thể nén toàn bộ bộ tính năng cho một ví dụ thành mã cụm của nó. Việc biểu diễn một ví dụ phức tạp bằng một mã nhận dạng cụm đơn giản giúp việc phân nhóm trở nên hiệu quả. Mở rộng ý tưởng, nhóm dữ liệu có thể đơn giản hoá các tập dữ liệu lớn.

Ví dụ: bạn có thể nhóm các mục theo các tính năng khác nhau như được minh họa trong các ví dụ sau:

Ví dụ
  • Nhóm các ngôi sao theo độ sáng.
  • Nhóm các sinh vật theo thông tin di truyền thành một hệ thống phân loại.
  • Nhóm tài liệu theo chủ đề.

Sau đó, các hệ thống máy học có thể sử dụng mã nhận dạng cụm để đơn giản hoá việc xử lý các tập dữ liệu lớn. Do đó, dữ liệu đầu ra của cụm sẽ đóng vai trò là dữ liệu tính năng cho các hệ thống máy học xuôi dòng.

Tại Google, việc phân cụm được dùng để tổng quát hoá, nén dữ liệu và bảo vệ quyền riêng tư trong các sản phẩm như video trên YouTube, ứng dụng Play và các bản nhạc.

Tổng quát hoá

Khi một số ví dụ trong một cụm thiếu dữ liệu tính năng, bạn có thể suy ra dữ liệu bị thiếu từ các ví dụ khác trong cụm.

Ví dụ:
Bạn có thể nhóm các video ít phổ biến hơn bằng nhiều video phổ biến hơn để cải thiện nội dung đề xuất video.

Nén dữ liệu

Như đã thảo luận, bạn có thể thay thế dữ liệu tính năng cho tất cả ví dụ trong một cụm bằng mã nhận dạng cụm có liên quan. Thay thế này sẽ đơn giản hoá dữ liệu tính năng và tiết kiệm bộ nhớ. Những lợi ích này sẽ trở nên quan trọng khi mở rộng quy mô thành tập dữ liệu lớn. Ngoài ra, các hệ thống máy học có thể sử dụng mã nhận dạng cụm làm dữ liệu đầu vào thay vì toàn bộ tập dữ liệu tính năng. Việc giảm độ phức tạp của dữ liệu đầu vào giúp mô hình máy học trở nên đơn giản và nhanh hơn.

Ví dụ:
Dữ liệu về tính năng của một video trên YouTube có thể bao gồm:
  • dữ liệu về người xem về vị trí, thời gian và thông tin nhân khẩu học
  • dữ liệu nhận xét với dấu thời gian, văn bản và mã nhận dạng khách hàng
  • thẻ video
Việc nhóm các video trên YouTube cho phép bạn thay thế bộ tính năng này bằng một mã nhận dạng nhóm duy nhất, nhờ đó nén dữ liệu của bạn.

Bảo vệ quyền riêng tư

Bạn có thể bảo vệ quyền riêng tư bằng cách phân nhóm người dùng và liên kết dữ liệu người dùng với mã nhận dạng cụm thay vì người dùng cụ thể. Để đảm bảo bạn không thể liên kết dữ liệu người dùng với một người dùng cụ thể, cụm đó phải nhóm đủ số lượng người dùng.

Ví dụ:
Giả sử bạn muốn thêm nhật ký quay video của người dùng YouTube vào mô hình của mình. Thay vì dựa vào mã nhận dạng người dùng, bạn có thể phân nhóm và sử dụng mã nhận dạng cụm. Bây giờ, mô hình của bạn không thể liên kết lịch sử video với một người dùng cụ thể, mà chỉ liên kết với một mã nhận dạng cụm đại diện cho một nhóm lớn người dùng.