Categories
AI & Machine Learning

Phân cụm – Học tập không giám sát

Đọc:

  • Chương 14.3: Hastie, Tibshirani, Friedman.

Các nguồn bổ sung:

  • Phân cụm dựa trên trung tâm: Quan điểm nền tảng. Awathi, Balcan. Sổ tay phân tích cụm. 2015.
  • Dự án:
    • Đánh giá Midway đến hạn hôm nay.
    • Báo cáo cuối kỳ, ngày 8 tháng 5.
    • Trình bày áp phích, ngày 11 tháng 5.
    • Giao tiếp với cố vấn TA của bạn!
  • Kỳ thi số 2 vào ngày 29 tháng 4.

Mục tiêu: Tự động phân vùng dữ liệu chưa được gắn nhãn thành các nhóm của các điểm dữ liệu tương tự.

Câu hỏi: Khi nào và tại sao chúng ta muốn làm điều này?

Hữu ích cho:

  • Tự động tổ chức dữ liệu.
  • Tìm hiểu cấu trúc ẩn trong dữ liệu.
  • Tiền xử lý để phân tích thêm.
    • Biểu diễn dữ liệu nhiều chiều trong không gian ít chiều (ví dụ: cho mục đích trực quan hóa).

Các ứng dụng (Clustering xuất hiện ở mọi nơi…)

  • Cụm tin bài hoặc trang web hoặc kết quả tìm kiếm theo chủ đề.

HÌNH 21.1. Các ứng dụng (Clustering xuất hiện ở mọi nơi…).

  • Cụm chuỗi protein theo chức năng hoặc gen theo hồ sơ biểu hiện.

HÌNH 21.1. Các ứng dụng (Clustering xuất hiện ở mọi nơi…).

  • Nhóm người dùng mạng xã hội theo sở thích (dò tìm cộng đồng).

HÌNH 21.1. Các ứng dụng (Clustering xuất hiện ở mọi nơi…).

Các ứng dụng (Clustering xuất hiện ở mọi nơi…)

  • Phân cụm khách hàng theo lịch sử mua hàng.

HÌNH 21.2. Các ứng dụng (Clustering xuất hiện ở mọi nơi…).

  • Cụm thiên hà hoặc các ngôi sao gần đó (ví dụ: Khảo sát bầu trời kỹ thuật số Sloan)

HÌNH 21.2. Các ứng dụng (Clustering xuất hiện ở mọi nơi…).

  • Và còn rất nhiều ứng dụng khác….

Hôm nay:

  • Phân cụm dựa trên mục tiêu
  • Phân cụm theo thứ bậc
  • Đề cập đến các cụm chồng chéo

[Ngày 4 tháng 3: Thuật toán phân cụm kiểu EM để phân cụm cho hỗn hợp Gaussian (mô hình xác suất cụ thể).]

Đầu vào: Một tập hợp S gồm n điểm, cũng là thước đo khoảng cách/độ khác nhau xác định khoảng cách d(x,y) giữa các cặp (x,y).

Mục tiêu: xuất ra một phân vùng dữ liệu.

HÌNH 21.3. Phân cụm dựa trên mục tiêu.

k-means: tìm điểm tâm 𝒄𝟏, 𝒄𝟐, … , 𝒄𝒌 để cực tiểu i=1n minj∈ {1,…,k} d2(𝐱𝐢, 𝐜𝐣)

k-median: tìm điểm trung tâm 𝐜𝟏, 𝐜𝟐, … , 𝐜𝐤 để giảm thiểu i=1n minj∈ {1,…,k} d(𝐱𝐢, 𝐜𝐣)

K-center: tìm phân vùng để cực tiểu hóa bán kính cực đại

HÌNH 21.3. Phân cụm dựa trên mục tiêu.

Đầu vào: Một bộ n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝒏 in Rd Mục tiêu #clusters k

Đầu ra: k đại diện 𝒄𝟏, 𝐜𝟐, … , 𝒄𝒌 ∈ Rd

Mục tiêu: chọn 𝒄𝟏, 𝐜𝟐, … , 𝒄𝒌 ∈ Rd để giảm thiểu

i=1n minj∈ {1,…,k} ||𝐱𝐢 − 𝐜𝐣|| 2

HÌNH 21.4. Phân cụm Euclidean k-means.

Đầu vào: Một tập hợp n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝒏 trong Rd Mục tiêu #cluster k

Đầu ra: k đại diện 𝒄𝟏, 𝐜𝟐, … , 𝒄𝒌 ∈ Rd

Mục tiêu: chọn 𝒄𝟏, 𝐜𝟐, … , 𝒄𝒌 ∈ Rd để giảm thiểu

i=1n minj∈ {1,…,k} ||𝐱𝐢𝐜𝐣|| 2

HÌNH 21.5. Phân cụm Euclidean k-means.

HÌNH 21.5. Phân cụm Euclidean k-means.

Đầu vào: Một tập hợp n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝒏 trong Rd Mục tiêu #cluster k

Đầu ra: k đại diện 𝒄𝟏, 𝐜𝟐, … , 𝒄𝒌 ∈ Rd

Mục tiêu: chọn 𝒄𝟏, 𝐜𝟐, … , 𝒄𝒌 ∈ Rd để giảm thiểu

i=1n minj∈ {1,…,k} ||𝐱𝐢 − 𝐜𝐣|| 2

Độ phức tạp tính toán:

NP khó: ngay cả với k = 2 [Dagupta’08] hoặc d = 2 [Mahajan-Nimbhorkar-Varadarajan09]HÌNH 21.6. Phân cụm Euclidean k-means.

Có một số trường hợp dễ…

Đầu vào: Một tập hợp n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝒏 trong Rd

Kết quả: 𝒄 ∈ Rd để giảm thiểu i=1n ||𝐱𝐢 − 𝐜|| 2

Giải: Lựa chọn tối ưu là 𝛍 = 1ni=1n 𝐱𝐢

Ý tưởng: độ lệch/phương sai như phân tách

Chi phí k-mean trung bình wrt c

Chi phí k-mean trung bình wrt μ

Vì vậy, lựa chọn tối ưu cho 𝐜𝛍.

Đầu vào: Một tập hợp n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝒏 trong Rd

Đầu ra: 𝒄 ∈ Rd để giảm thiểu i=1n ||𝐱𝐢 − 𝐜|| 2

Câu hỏi bài tập về nhà lấy thêm tín chỉ

Gợi ý: quy hoạch động trong thời gian O(n2k).

[Lượng tử hóa bình phương nhỏ nhất trong PCM, Lloyd, IEEE Giao dịch trên lý thuyết thông tin, 1982]

Đầu vào: Một tập hợp n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝐧 trong Rd

Khởi tạo các tâm 𝒄𝟏, 𝐜𝟐, … , 𝒄𝒌 ∈ Rd và các cụm C1, C2, … , Ck theo bất kỳ cách nào.

Lặp lại cho đến khi không có thay đổi nào nữa về chi phí.

  • Với mỗi j: Cj{𝑥 ∈ 𝑆 có tâm gần nhất là 𝐜𝐣}
  • Với mỗi j: 𝐜𝐣trung bình của Cj

[Lượng tử hóa bình phương nhỏ nhất trong PCM, Lloyd, IEEE Giao dịch trên Lý thuyết thông tin, 1982]

Đầu vào: Một tập hợp n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝐧 trong Rd

Khởi tạo các tâm 𝒄𝟏, 𝐜𝟐, … , 𝒄𝒌 ∈ Rd và các cụm C1, C2, … , Ck theo bất kỳ cách nào.

Lặp lại cho đến khi không có thay đổi nào nữa về chi phí.

  • Với mỗi j: Cj{𝑥 ∈ 𝑆 có tâm gần nhất là 𝐜𝐣}
  • Với mỗi j: 𝐜𝐣trung bình của Cj

HÌNH 21.7. Common Heuristic in Practice: Phương pháp của Lloyd.

Đầu vào: Tập hợp n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝐧 trong Rd

Khởi tạo các tâm 𝐜𝟏, 𝐜𝟐, … , 𝐜𝐤 ∈ Rd và các cụm C1, C2, … , Ck theo bất kỳ cách nào.

Lặp lại cho đến khi không có thay đổi nào nữa về chi phí.

  • Với mỗi j: Cj{𝑥 ∈ 𝑆 có tâm gần nhất là 𝐜𝐣}
  • Với mỗi j: 𝐜𝐣trung bình của Cj

Lưu ý: nó luôn hội tụ.

  • chi phí luôn giảm xuống và
  • chỉ có một số hữu hạn các phân vùng Voronoi (do đó, một số hữu hạn các giá trị mà chi phí có thể lấy)

Đầu vào: Một bộ n điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝐧 trong Rd

Khởi tạo các tâm 𝐜𝟏, 𝐜𝟐, … , 𝐜𝐤 ∈ Rd và các cụm C1, C2, … , Ck theo một cách bất kỳ.

Lặp lại cho đến khi không có thay đổi nào nữa về chi phí.

  • Với mỗi j: Cj{𝑥 ∈ 𝑆 có tâm gần nhất là 𝐜𝐣}
  • Với mỗi j: 𝐜𝐣trung bình của Cj
  • Khởi tạo là rất quan trọng (tốc độ hội tụ, chất lượng của giải pháp đầu ra)
  • Thảo luận về các kỹ thuật thường được sử dụng trong thực tế
    • Các trung tâm ngẫu nhiên từ các điểm dữ liệu (lặp lại một vài lần)
    • Truyền tải xa nhất
    • K-means ++ (hoạt động tốt và có các đảm bảo có thể chứng minh được)

Ví dụ: Cho một tập hợp các điểm dữ liệu

HÌNH 21.8. Phương pháp của Lloyd: Khởi tạo ngẫu nhiên.

Chọn các tâm ban đầu một cách ngẫu nhiên

HÌNH 21.9. Phương pháp của Lloyd: Khởi tạo ngẫu nhiên.

Gán mỗi điểm cho tâm gần nhất của nó

HÌNH 21.10. Phương pháp của Lloyd: Khởi tạo ngẫu nhiên.

Tính toán lại các trung tâm tối ưu cho một cụm cố định

HÌNH 21.11. Phương pháp của Lloyd: Khởi tạo ngẫu nhiên.

Gán mỗi điểm cho tâm gần nhất của nó

HÌNH 21.12. Phương pháp của Lloyd: Khởi tạo ngẫu nhiên.

Tính toán lại các trung tâm tối ưu được cung cấp một cụm cố định

HÌNH 21.13. Phương pháp của Lloyd: Khởi tạo ngẫu nhiên.

Gán mỗi điểm cho tâm gần nhất của nó

HÌNH 21.14. Phương pháp của Lloyd: Khởi tạo ngẫu nhiên.

Tính toán lại các trung tâm tối ưu cho trước một cụm cố định

HÌNH 21.15. Phương pháp của Lloyd: Khởi tạo ngẫu nhiên.

Lấy một giải pháp chất lượng tốt trong ví dụ này.

HÌNH 21.16. Phương pháp của Lloyd: Hiệu suất.

Nó luôn hội tụ, nhưng nó có thể hội tụ ở mức tối ưu cục bộ khác với mức tối ưu toàn cục và trên thực tế có thể kém hơn tùy ý về điểm số của nó.

HÌNH 21.17. Phương pháp của Lloyd: Hiệu suất.

Tối ưu cục bộ: mọi điểm được gán cho tâm gần nhất của nó và mọi tâm là giá trị trung bình của các điểm của nó.

HÌNH 21.18. Phương pháp của Lloyd: Hiệu suất.

Nó tùy ý tệ hơn giải pháp tối ưu….HÌNH 21.18. Phương pháp của Lloyd: Hiệu suất.

HÌNH 21.18. Phương pháp của Lloyd: Hiệu suất.

HÌNH 21.19. Phương pháp của Lloyd: Hiệu suất.

Hiệu suất kém này có thể xảy ra ngay cả với các cụm Gaussian được phân tách rõ ràng.

HÌNH 21.20. Phương pháp của Lloyd: Hiệu suất.

Hiệu suất kém này có thể xảy ra ngay cả với các cụm Gaussian được phân tách rõ ràng.

Một số Gaussian được kết hợp…..

  • Nếu chúng ta thực hiện khởi tạo ngẫu nhiên, khi k tăng lên, có nhiều khả năng chúng ta sẽ không chọn được một tâm hoàn hảo cho mỗi Gaussian trong quá trình khởi tạo của mình (vì vậy phương thức của Lloyd sẽ xuất ra một giải pháp tồi).
    • Với k Gaussian có kích thước bằng nhau, Pr[mỗi tâm ban đầu nằm trong một Gaussian khác nhau] ≈ 𝑘!𝑘𝑘1𝑒𝑘
    • Khó xảy ra khi k lớn.

Chọn 𝐜𝟏 tùy ý (hoặc ngẫu nhiên).

  • Với j = 2, … , k
    • Chọn 𝐜𝐣 trong số các điểm dữ liệu 𝐱𝟏, 𝐱𝟐, … , 𝐱𝐝 xa nhất so với các điểm đã chọn trước đó 𝐜𝟏, 𝐜𝟐, … , 𝐜𝒋−𝟏

Khắc phục sự cố Gaussian. Nhưng nó có thể bị loại bỏ bởi các ngoại lệ….

HÌNH 21.21. Heuristic điểm xa nhất hoạt động tốt trong ví dụ trước.

Giả sử k=3

HÌNH 21.22. Heuristic khởi tạo điểm xa nhất nhạy cảm với các ngoại lệ.

Giả sử k=3

HÌNH 21.23. Heuristic khởi tạo điểm xa nhất nhạy cảm với các ngoại lệ.

  • Nội suy giữa khởi tạo điểm ngẫu nhiên và xa nhất
  • Gọi D(x) là khoảng cách giữa một điểm 𝑥 và tâm gần nhất của nó. Chọn tâm tiếp theo tỷ lệ với D2(𝐱).
  • Chọn ngẫu nhiên 𝐜𝟏.
  • với j = 2, … , k
    • Chọn 𝐜𝐣 trong số 𝐱𝟏, 𝐱𝟐, … , 𝐱𝐝 theo phân phối

𝐏𝐫(𝐜𝐣 = 𝐱𝐢) ∝ 𝐦𝐢𝐧𝐣′<𝐣 ||𝐱𝐢 − 𝐜𝐣′|| 𝟐 D2(𝐱𝐢)

HÌNH 21.24. Khởi tạo K-means++: lấy mẫu D2 [AV07].

Định lý: K-means++ luôn đạt xấp xỉ O(log k) với nghiệm k-means tối ưu trong kỳ vọng.

Điều hành Lloyd’s chỉ có thể cải thiện hơn nữa chi phí.

  • Nội suy giữa khởi tạo điểm ngẫu nhiên và điểm xa nhất
  • Gọi D(x) là khoảng cách giữa một điểm 𝑥 và tâm gần nhất của nó. Chọn tâm tiếp theo tỷ lệ với D𝛼(𝐱).
    • 𝛼 = 0, lấy mẫu ngẫu nhiên
    • 𝛼 = ∞, điểm xa nhất (Lưu ý bên lề: nó thực sự hoạt động tốt cho k-trung tâm)
    • 𝛼 = 2, k-means++

Lưu ý bên lề: 𝛼 = 1, hoạt động tốt cho k-trung vị

HÌNH 21.25. K-means ++ Fix.

  • Khởi tạo K-means ++: O(nd) và một lần truyền dữ liệu để chọn trung tâm tiếp theo. Vì vậy, tổng thời gian là O(nkd).
  • Phương pháp của Lloyd

Lặp lại cho đến khi không có thay đổi về chi phí.

  • Với mỗi j: Cj{𝑥 ∈ 𝑆 có tâm gần nhất là 𝐜𝐣}
  • Với mỗi j: 𝐜𝐣trung bình của Cj

Mỗi vòng mất thời gian O(nkd).

  • Số mũ của vòng trong trường hợp xấu nhất [AV07].
  • Dự kiến thời gian đa thức trong mô hình phân tích trơn!
  • K-mean++ luôn đạt xấp xỉ O(log k) đối với giải pháp k-means tối ưu trong kỳ vọng.
  • Hoạt động của Lloyd’s chỉ có thể cải thiện hơn nữa chi phí.
  • Số mũ của vòng trong trường hợp xấu nhất [AV07].
  • Dự kiến thời gian đa thức trong mô hình phân tích trơn!
  • Hoạt động tốt trong thực tế.
  • Heuristic: Tìm khoảng cách lớn giữa k -1-means cost và k-means cost.
  • Xác thực tạm dừng/xác thực chéo đối với nhiệm vụ phụ trợ (ví dụ: nhiệm vụ học tập có giám sát).
  • Thử phân cụm theo thứ bậc.

HÌNH 21.26. Phân cụm theo cấp bậc.

  • Một hệ thống phân cấp có thể tự nhiên hơn.
  • Những người dùng khác nhau có thể quan tâm đến các mức độ chi tiết hoặc thậm chí là cắt tỉa khác nhau.

Từ trên xuống (phân chia)

  • Phân vùng dữ liệu thành 2 nhóm (ví dụ: 2 phương tiện)
  • Phân cụm đệ quy từng nhóm.

HÌNH 21.27. Phân cụm theo cấp bậc.

Từ dưới lên (kết tụ)

  • Bắt đầu với mọi điểm trong cụm riêng của nó.
  • Liên tục hợp nhất hai cụm “gần nhất”.
  • Các def khác nhau của “gần nhất” đưa ra các thuật toán khác nhau.

HÌNH 21.27. Phân cụm theo cấp bậc.

Có thước đo khoảng cách trên các cặp đối tượng.

d(x,y) – khoảng cách giữa xy

HÌNH 21.28. Từ dưới lên (kết tụ).

  • Liên kết đơn: dist (A, 𝐵) = minx∈A,x′∈B′ dist(x, x′)
  • Liên kết hoàn chỉnh: dist (A, B) = maxx∈A,x′∈B′ dist(x, x′)
  • Liên kết trung bình: dist (A, B) = avgx∈A,x′∈B′ dist(x, x′)
  • Phương pháp của Wards

Từ dưới lên (kết tụ)

  • Bắt đầu với mọi điểm trong cụm riêng của nó.
  • Liên tục hợp nhất hai cụm “gần nhất”.

Liên kết đơn: dist (A, 𝐵) = minx∈A,x′∈𝐵 dist(x, x′)

HÌNH 21.29. Liên kết đơn.

Biểu đồ hình cây

Từ dưới lên (kết tụ)

  • Bắt đầu với mọi điểm trong cụm riêng của nó.
  • Liên tục hợp nhất hai cụm “gần nhất”.

Liên kết đơn: dist (A, 𝐵) = minx∈A,x′∈𝐵 dist(x, x′)

HÌNH 21.30. Liên kết đơn.

Từ dưới lên (kết tụ)

  • Bắt đầu với mọi điểm trong cụm riêng của nó.
  • Liên tục hợp nhất hai cụm “gần nhất”.

Liên kết hoàn chỉnh: dist (A, B) = maxx∈A,x′∈B dist(x, x′)

HÌNH 21.31. Liên kết hoàn chỉnh.

Từ dưới lên (kết tụ)

  • Bắt đầu với mọi điểm trong cụm riêng của nó.
  • Liên tục hợp nhất hai cụm “gần nhất”.

Liên kết hoàn chỉnh: dist (A, B) = maxx∈A,x′∈B dist(x, x′)

HÌNH 21.32. Liên kết hoàn chỉnh.

Từ dưới lên (tích tụ)

  • Bắt đầu với mọi điểm trong cụm riêng của nó.
  • Liên tục hợp nhất hai cụm “gần nhất”.

Phương pháp của Ward: dist (C, C′) = |C| ⋅ |C′||C| + |C′| ||mean(C) − mean(C′)|| 2

HÌNH 21.33. Phương pháp Ward.

  • Mỗi thuật toán bắt đầu với N cụm và thực hiện hợp nhất N-1.
  • Đối với mỗi thuật toán, việc tính toán 𝑑𝑖𝑠𝑡(𝐶, 𝐶′) có thể được thực hiện trong thời gian 𝑂( |𝐶| ⋅ |𝐶′| ). (ví dụ: kiểm tra 𝑑𝑖𝑠𝑡(𝑥, 𝑥′) với mọi 𝑥 ∈ 𝐶, 𝑥′ ∈ 𝐶′)
  • Thời gian để tính tất cả các khoảng cách theo cặp và lấy nhỏ nhất là 𝑂(𝑁2).
  • Tổng thời gian là 𝑂(𝑁3).

Trên thực tế, có thể chạy tất cả các thuật toán này trong thời gian 𝑂(𝑁2 log 𝑁).

Xem: Christopher D. Manning, Prabhakar Raghavan và Hinrich Schütze, Introduction to Information Retrieval, Cambridge University Press. 2008. http://www-nlp.stanford.edu/IR-book/

HÌNH 21.34. Thí nghiệm phân cụm theo thứ bậc.

Phương pháp của Ward thực hiện tốt nhất trong số các kỹ thuật cổ điển.

HÌNH 21.35. Thí nghiệm phân cụm theo thứ bậc.

Phương pháp của Ward thực hiện tốt nhất trong số các kỹ thuật cổ điển.

Những điều bạn nên biết

  • Partitional Clustering. k-mean và k-mean ++
    • Phương pháp của Lloyd
    • Các kỹ thuật khởi tạo (ngẫu nhiên, truyền tải xa nhất, k-means++)
  • Phân cụm theo cấp bậc.
    • Liên kết đơn, Liên kết hoàn chỉnh, Phương pháp của Ward

Các trang trình bày bổ sung

  • Tưởng tượng đầu vào trong trường hợp xấu nhất.
  • Nhưng sau đó thêm nhiễu Gaussian nhỏ vào từng điểm dữ liệu.

HÌNH 21.36. Mô hình phân tích được làm mịn.

  • Hãy tưởng tượng một đầu vào trong trường hợp xấu nhất.
  • Nhưng sau đó thêm nhiễu Gaussian nhỏ vào từng điểm dữ liệu.
  • Định lý [Arthur-Manthey-Roglin 2009]:
    • E[số vòng cho đến khi Lloyd’s hội tụ] nếu thêm nhiễu Gauss với phương sai 𝜎2 là đa thức trong 𝑛, 1/𝜎.
    • Giới hạn thực tế là: 𝑂 (𝑛34𝑘34𝑑8𝜎6)
  • Vẫn có thể tìm thấy tối ưu cục bộ khác xa với tối ưu toàn cục.

Các cụm chồng chéo: Cộng đồng

HÌNH 21.37. Các cụm chồng chéo: Cộng đồng.

  • Social networks

HÌNH 21.38. Các cụm chồng chéo: Cộng đồng.

  • Professional networks

HÌNH 21.38. Các cụm chồng chéo: Cộng đồng.

  • Product Purchasing Networks, Citation Networks, Biological Networks, etc

Mạng xã hội

Mạng chuyên nghiệp

Mạng mua sản phẩm, Mạng trích dẫn, Mạng sinh học, v.v.

Chồng chéo Cụm: Cộng đồng

HÌNH 21.39. Chồng chéo Cụm: Cộng đồng.

Leave a Reply

Your email address will not be published. Required fields are marked *