Tại sao dữ liệu hỗn hợp là một vấn đề đối với các thuật toán phân cụm dựa trên euclide?


21

Hầu hết các thuật toán phân cụm và giảm kích thước cổ điển (phân cụm theo phân cấp, phân tích thành phần chính, phương tiện k, bản đồ tự tổ chức ...) được thiết kế dành riêng cho dữ liệu số và dữ liệu đầu vào của chúng được xem là các điểm trong không gian euclide.

Tất nhiên đây là một vấn đề, vì nhiều câu hỏi trong thế giới thực liên quan đến dữ liệu được trộn lẫn: ví dụ nếu chúng ta nghiên cứu xe buýt, chiều cao và chiều dài và kích thước động cơ sẽ là số, nhưng chúng ta cũng có thể quan tâm đến màu sắc (biến phân loại: màu xanh lam / red / green ...) và các lớp công suất (biến theo thứ tự: công suất nhỏ / trung bình / lớn). Cụ thể, chúng ta có thể muốn nghiên cứu các loại biến khác nhau cùng một lúc.

Có một số phương pháp để mở rộng thuật toán phân cụm cổ điển sang dữ liệu hỗn hợp, ví dụ sử dụng sự khác biệt của Gower để cắm vào phân cụm phân cấp hoặc chia tỷ lệ đa chiều hoặc các phương thức khác lấy ma trận khoảng cách làm đầu vào. Hoặc ví dụ phương pháp này , một phần mở rộng của SOM cho dữ liệu hỗn hợp.

Câu hỏi của tôi là: tại sao chúng ta không thể sử dụng khoảng cách euclide trên các biến hỗn hợp? hoặc tại sao nó là xấu để làm như vậy? Tại sao chúng ta không thể mã hóa các biến phân loại, bình thường hóa tất cả các biến để chúng có trọng số tương tự trong khoảng cách giữa các quan sát và chạy các thuật toán thông thường trên các ma trận này?

Điều đó thực sự dễ dàng và không bao giờ được thực hiện, vì vậy tôi cho rằng nó rất sai, nhưng ai đó có thể cho tôi biết tại sao không? Và / hoặc cho tôi một số ref? Cảm ơn


5
Bạn có thể làm mọi thứ bạn thích với dữ liệu của mình để thể hiện chúng dưới dạng các điểm trong không gian Euclide, nhưng ý nghĩa của các tính năng có thể biến mất. Vấn đề là ở cấp độ đo lường, không phải ở cấp độ không gian. Quy mô thông thường nên được định lượng chính xác, mã hóa giả sẽ không giúp đỡ. Thang đo nhị phân của cảm giác không đối xứng (hiện tại so với vắng mặt) tự nhiên gọi cho số liệu khoảng cách khác hơn khoảng cách Euclide; cộng với vấn đề nội suy (không có ý nghĩa thực sự có thể tồn tại giữa có và không).
ttnphns

(tt) Không gian Euclide là về hai điều: đó là liên tục (hạt mịn) và nó cho phép bất kỳ hướng nào. Không phải tất cả các loại dữ liệu đều yêu cầu hoặc chào một không gian như vậy để chứa những khác biệt phát sinh từ bản chất của dữ liệu.
ttnphns

Phân cụm phân cấp hoạt động với bất kỳ loại tương tự, btw. (ngoại trừ một số trường hợp như Ward) - đặc biệt, bạn có thể sử dụng ví dụ: hệ số Jaccard có ý nghĩa đối với một số trường hợp phân loại / nhị phân.
Anony-Mousse

Câu trả lời:


5

Đó không phải là về việc không thể tính toán một cái gì đó .

Khoảng cách được sử dụng nhiều để đo lường một cái gì đó có ý nghĩa . Điều này sẽ thất bại sớm hơn nhiều với dữ liệu danh mục. Nếu nó từng hoạt động với nhiều hơn một biến, đó là ...

Nếu bạn có kích thước giày và khối lượng cơ thể, khoảng cách Euclide cũng không có ý nghĩa gì nhiều. Thật tốt khi x, y, z là khoảng cách. Thì khoảng cách Euclide là đường khoảng cách tầm nhìn giữa các điểm.

Bây giờ nếu bạn biến các biến mã hóa, điều này mang lại ý nghĩa gì?

Thêm vào đó, khoảng cách Euclide không có ý nghĩa khi dữ liệu của bạn rời rạc.

Nếu chỉ tồn tại các giá trị nguyên x và y, khoảng cách Euclide vẫn sẽ mang lại khoảng cách không nguyên. Họ không ánh xạ trở lại dữ liệu. Tương tự, đối với các biến được mã hóa giả, khoảng cách sẽ không ánh xạ trở lại một lượng biến giả ...

Sau đó, khi bạn có kế hoạch sử dụng phân cụm k- mean , nó không chỉ là về khoảng cách, mà là về tính toán giá trị trung bình . Nhưng không có ý nghĩa hợp lý trên các biến được mã hóa giả, phải không?

Cuối cùng, có lời nguyền của chiều . Khoảng cách Euclide được biết là giảm khi bạn tăng số lượng biến. Thêm các biến được mã hóa giả có nghĩa là bạn mất độ tương phản khoảng cách khá nhanh. Mọi thứ đều giống nhau như mọi thứ khác, bởi vì một biến giả có thể tạo ra tất cả sự khác biệt.


3

Trọng tâm của những vấn đề phân cụm dựa trên số liệu này là ý tưởng về phép nội suy.

Thực hiện bất kỳ phương pháp nào bạn vừa trích dẫn, và chúng ta hãy xem xét một biến liên tục như trọng lượng. Bạn có 100kg và bạn có 10kg trong dữ liệu của mình. Khi bạn thấy 99kg mới, số liệu sẽ cho phép bạn tiếp cận 100kg --- mặc dù bạn chưa bao giờ nhìn thấy nó. Thật không may, không có nội suy cho dữ liệu rời rạc.

Một lập luận khác cho câu hỏi này là không có cách tự nhiên để làm như vậy. Bạn muốn gán 3 giá trị trong R và làm cho chúng có khoảng cách bằng nhau giữa mỗi cặp, điều này là không thể. Nếu bạn gán chúng vào các danh mục khác nhau và chạy giả sử PCA, thì bạn sẽ mất thông tin mà chúng phản ánh trên thực tế cùng một danh mục.


1
Cảm ơn! Tôi hiểu vấn đề nội suy, nhưng trong nhiều ứng dụng thì đây không phải là vấn đề (ví dụ: khi chúng ta biết rằng xe buýt có màu xanh lá cây, đỏ hoặc xanh lam và không có màu nào khác tồn tại trong tập dữ liệu của chúng tôi). Và tôi nghĩ có nhiều cách dễ dàng để chuẩn hóa các biến giả để mỗi biến phân loại có "trọng số" tương tự như của từng biến số (nếu các biến số cũng được chuẩn hóa trước). Hoặc để tùy ý gán trọng số cho các biến khác nhau ...
jubo

0

Một vấn đề với các giá trị phân loại không theo thứ tự là nếu bạn giả mã hóa chúng, bạn buộc một thứ tự và do đó có ý nghĩa mới đối với các biến. Ví dụ: nếu bạn mã hóa màu xanh lam là 1 và màu cam là 2 và màu xanh lá cây 3 thì bạn ngụ ý rằng một mẫu dữ liệu có giá trị màu cam gần với mẫu có giá trị màu xanh lá cây hơn mẫu có giá trị màu xanh.

Một cách để xử lý việc này là làm cho chúng các tính năng mới (cột). Đối với mỗi giá trị riêng biệt, bạn tạo một tính năng nhị phân mới và đặt thành đúng / sai (nói cách khác, nhị phân mã hóa các giá trị và biến mỗi bit thành một cột). Đối với mỗi mẫu dữ liệu từ bộ tính năng mới này, chỉ có một tính năng sẽ có giá trị 1 và tất cả các tính năng khác 0. Nhưng điều này thường không dừng thuật toán đào tạo để gán giá trị centroid gần 1 cho nhiều hơn một tính năng. Điều này có thể gây ra vấn đề giải thích vì điều này không có ý nghĩa trong miền dữ liệu.

Bạn không có cùng một vấn đề với "các lớp năng lực" cụ thể là các danh mục được sắp xếp vì trong trường hợp đó, việc gán giá trị số có ý nghĩa.

Và dĩ nhiên là bạn sử dụng các tính năng có tính chất hoặc đơn vị đo lường khác nhau hoặc phạm vi giá trị khác nhau thì bạn phải luôn bình thường hóa các giá trị.

/programming/19507928/growing-elf- tổ chức-map-for-trộn-type-data / 19511894 # 19511894

/programming/13687256/is-it-right-to-n normalize-data-and-or-weight-vector-in-a-piano / 3693409 # 1.3693409


Đó là những gì tôi có nghĩa là "mã hóa giả" cho các biến phân loại, nhưng cảm ơn. Và btw tôi không đồng ý với tuyên bố của bạn về các yếu tố được sắp xếp ("các lớp năng lực") bởi vì không có cách nào để chọn giữa ví dụ. (1,2,3) hoặc (1,2,100), sẽ tạo ra sự khác biệt lớn cho thuật toán dựa trên khoảng cách.
jubo

0

Câu trả lời thực sự khá đơn giản, chúng ta chỉ cần hiểu thông tin trong một biến giả thực sự là gì. Ý tưởng về một biến giả biểu thị sự hiện diện hay vắng mặt của các mức yếu tố (các giá trị riêng biệt của một biến phân loại). Nó có nghĩa là đại diện cho một cái gì đó không thể đo lường được, không thể định lượng được, bằng cách lưu trữ thông tin cho dù nó có ở đó hay không. Đây là lý do tại sao một biến giả được thể hiện bằng các chữ số nhị phân, nhiều như các giá trị rời rạc của biến phân loại mà nó đại diện (hoặc trừ 1).

Biểu thị các mức yếu tố là giá trị 0/1 chỉ có ý nghĩa trong một phương trình phân tích, chẳng hạn như mô hình tuyến tính (đây là một khái niệm dễ dàng cho những người có thể giải thích các hệ số của mô hình thống kê). Trong một biến giả, thông tin của biến phân loại cơ bản được lưu trữ theo thứ tự các bit. Khi sử dụng các bit đó làm kích thước để ánh xạ mẫu đầu vào vào không gian đặc trưng (như trong trường hợp ma trận tương tự / khoảng cách), thông tin theo thứ tự các bit bị mất hoàn toàn.


1
Cảm ơn! Trên thực tế, quan điểm của tôi là các biến phân loại được mã hóa giả có ý nghĩa (một số nhất định) trong khoảng cách euclide: nếu các giá trị khác nhau, nó sẽ thêm 2 vào khoảng cách bình phương, nếu không, nó sẽ thêm 0. Và bạn có thể bình thường hóa các hình nộm theo cách khác cách, để tính đến số lượng danh mục hoặc xác suất của chúng.
jubo
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.