Như vừa trình bày, k-means gán điểm cho tâm gần nhất của chúng. Nhưng có tác dụng gì "gần nhất" có nghĩa là gì?
Để áp dụng giá trị k trung bình cho dữ liệu đối tượng, bạn cần xác định giá trị đo lường điểm tương đồng kết hợp tất cả dữ liệu đối tượng thành một giá trị số duy nhất, được gọi là đo lường độ tương đồng thủ công.
Hãy cân nhắc sử dụng tập dữ liệu về giày. Nếu tập dữ liệu đó chỉ có kích thước giày, bạn có thể xác định sự tương đồng của hai chiếc giày về sự khác biệt giữa kích thước của chúng. Mức chênh lệch số giữa các kích thước càng nhỏ thì sự tương đồng giữa các đôi giày.
Nếu tập dữ liệu giày đó có hai tính năng dạng số là kích thước và giá, bạn có thể kết hợp chúng thành một số duy nhất thể hiện sự tương đồng. Trước tiên, hãy điều chỉnh tỷ lệ dữ liệu sao cho cả hai tính năng đều tương tự nhau:
- Kích thước: Kích thước giày có thể tạo thành phân phối Gaussian. Hãy xác nhận thông tin này. Sau đó, chuẩn hoá dữ liệu.
- Giá (p): Dữ liệu có thể là phân phối Poisson. Hãy xác nhận thông tin này. Nếu bạn có đủ dữ liệu, hãy chuyển đổi dữ liệu sang số phân vị và chuyển tỷ lệ thành \([0,1]\).
Tiếp theo, hãy kết hợp hai tính năng này bằng cách tính lỗi bình phương trung bình gốc (RMSE). Đo lường tương đồng sơ bộ này được đưa ra bởi \(\sqrt{\frac{(s_i - s_j)^2+(p_i - p_j)^2}{2}}\).
Ví dụ đơn giản: tính mức độ tương đồng cho hai chiếc giày có cỡ Hoa Kỳ 8 và 11, cùng mức giá 120 và 150. Vì chúng tôi không có đủ dữ liệu để hiểu nên chúng tôi sẽ mở rộng dữ liệu mà không cần chuẩn hoá hoặc sử dụng số phân vị.
Hành động | Phương thức |
---|---|
Điều chỉnh tỷ lệ kích thước. | Giả sử kích thước giày tối đa có thể là 20. Chia 8 và 11 cho kích thước tối đa 20 để có được 0,4 và 0,55. |
Điều chỉnh mức giá. | Chia 120 và 150 cho giá tối đa 150 để được 0,8 và 1. |
Tìm điểm khác biệt về kích thước. | \(0.55 - 0.4 = 0.15\) |
Tìm điểm khác biệt về giá. | \(1 - 0.8 = 0.2\) |
Tính RMSE. | \(\sqrt{\frac{0.2^2+0.15^2}{2}} = 0.17\) |
Theo trực giác, thước đo mức độ tương đồng sẽ tăng lên khi dữ liệu tính năng có nhiều hơn tương tự. Thay vào đó, chỉ số đo lường mức độ tương tự (RMSE) thực sự giảm. Làm cho thước đo sự tương đồng theo trực giác của bạn bằng cách trừ đi 1.
\[\text{Similarity} = 1 - 0.17 = 0.83\]
Nói chung, bạn có thể chuẩn bị dữ liệu số như được mô tả trong Chuẩn bị dữ liệu, sau đó kết hợp bằng cách sử dụng khoảng cách Euclide.
Nếu tập dữ liệu đó bao gồm cả kích thước giày và màu giày thì sao? Màu là dữ liệu phân loại, được thảo luận trong Khoá học nhanh về học máy trong Làm việc với dữ liệu phân loại. Dữ liệu phân loại sẽ khó kết hợp hơn với dữ liệu kích thước dạng số. Trạng thái đó có thể là:
- Giá trị đơn (đơn trị), chẳng hạn như màu của ô tô ("trắng" hoặc "xanh lam" nhưng không bao giờ cả hai)
- Nhiều giá trị (nhiều giá trị), chẳng hạn như thể loại của một bộ phim (một bộ phim có thể có cả hai giá trị "hành động" và "hài kịch", hoặc chỉ "hành động")
Nếu dữ liệu đơn giá trùng khớp, ví dụ: trong trường hợp hai đôi giày màu xanh dương, điểm tương đồng giữa các ví dụ là 1. Nếu không, độ tương tự sẽ là 0.
Dữ liệu đa hoá trị (chẳng hạn như thể loại phim) sẽ khó sử dụng hơn. Nếu có Một tập hợp thể loại phim cố định, bạn có thể tính điểm tương đồng bằng tỷ lệ các giá trị chung, được gọi là Điểm tương đồng của Jaccard. Ví dụ: phép tính điểm tương đồng Jaccard:
- [“hài kịch”,”hành động”] và [“hài kịch”,”hành động”] = 1
- [“hài kịch”,”hành động”] và [“hành động”] = 1⁄2
- [“hài kịch”,”hành động”] và [“hành động”, "kịch"] = 1⁄3
- [“hài kịch”,”hành động”] và [“phi tiểu thuyết”, “tiểu sử”] = 0
Sự tương đồng Jaccard không phải là thước đo tương tự thủ công duy nhất cho dữ liệu phân loại. Hai ví dụ khác:
- Mã bưu chính có thể được chuyển đổi thành vĩ độ và kinh độ trước tính khoảng cách Euclide giữa chúng.
- Màu có thể được chuyển đổi thành các giá trị RGB dạng số, với sự khác biệt về các giá trị được kết hợp thành khoảng cách Euclide.
Xem Làm việc với dữ liệu phân loại để tìm hiểu thêm.
Nói chung, một phép đo mức độ tương đồng thủ công phải tương ứng trực tiếp với sự tương đồng thực sự. Nếu chỉ số bạn chọn không mã hoá, thì tức là chỉ số đó không được mã hoá mà bạn muốn mã hoá.
Hãy xử lý kỹ dữ liệu của bạn trước khi tính toán chỉ số tương đồng. Chiến lược phát hành đĩa đơn ví dụ trên trang này được đơn giản hoá. Hầu hết các tập dữ liệu thực tế đều lớn và phức tạp. Như đã đề cập trước đó, số phân vị là lựa chọn mặc định tốt để xử lý dữ liệu số.
Khi độ phức tạp của dữ liệu ngày càng tăng, việc tạo một hướng dẫn thủ công thước đo độ tương đồng. Trong trường hợp đó, hãy chuyển sang phương pháp đo lường sự tương đồng được giám sát, trong đó máy được giám sát mô hình học tập tính điểm tương đồng. Vấn đề này sẽ được thảo luận chi tiết hơn sau.