Vẽ một phân biệt đối xử như là dòng trên scatterplot


8

Đưa ra một biểu đồ phân tán dữ liệu, tôi có thể vẽ các thành phần chính của dữ liệu trên đó, vì các trục được xếp theo các điểm là các điểm thành phần chính. Bạn có thể thấy một biểu đồ ví dụ với đám mây (bao gồm 2 cụm) và thành phần nguyên tắc đầu tiên của nó. Nó được rút ra dễ dàng: điểm thành phần thô được tính là ma trận dữ liệu x eigenvector (s) ; tọa độ của mỗi điểm số trên trục ban đầu (V1 hoặc V2) là điểm x cos-giữa-trục-và-thành phần (là thành phần của hàm riêng) .

Thành phần chính thứ 1 được xếp theo điểm số của nó

Câu hỏi của tôi: Có thể bằng cách nào đó có thể vẽ một người phân biệt đối xử theo cách tương tự? Hãy nhìn vào pic của tôi. Bây giờ tôi muốn vẽ sự phân biệt đối xử giữa hai cụm, như một dòng được xếp bằng điểm số phân biệt đối xử (sau khi phân tích phân biệt đối xử) làm điểm. Nếu có, cái gì có thể là thuật toán?

Câu trả lời:


8

OK, vì không ai trả lời tôi nghĩ rằng, sau một vài thử nghiệm, tôi có thể tự làm điều đó. Theo hướng dẫn phân tích phân biệt, hãy đặt T là ma trận sscp của toàn bộ đám mây (dữ liệu X , gồm 2 biến) (độ lệch so với tâm của đám mây) và đặt W là ma trận sscp bên trong cụm (độ lệch so với tâm cụm). B = TW là ma trận sscp giữa các cụm. Phân rã giá trị số đơn của inv (W) B mang lại cho chúng ta U (hàm riêng bên trái), S (ma trận đường chéo của giá trị riêng), V(người bản địa bên phải). Trong ví dụ của tôi về 2 cụm chỉ có giá trị riêng thứ nhất là khác 0 (có nghĩa là chỉ có một phân biệt đối xử), và vì vậy chúng tôi chỉ sử dụng ký tự riêng thứ nhất (cột) của U : U (1) . Bây giờ, XU (1)điểm số phân biệt đối xử thô được tìm kiếm . Để hiển thị phân biệt đối xử dưới dạng một dòng được xếp chồng với các số đó, nhân số điểm với cos-giữa-trục-và-phân biệt đối xử (là yếu tố của hàm riêng U (1) ) - giống như đã làm với thành phần chính ở trên . Các âm mưu kết quả là dưới đây.

nhập mô tả hình ảnh ở đây


1
Có thể dễ dàng hơn khi nghĩ về điều này như một phép chiếu : trong cả hai trường hợp (PCA hoặc LDA) là một vectơ đơn vị theo hướng mà bạn muốn chiếu dữ liệu của mình (trục nguyên tắc đầu tiên hoặc "trục phân biệt" đầu tiên ). Máy chiếu trực giao được cho bởi . Vì vậy, câu trả lời là (tất nhiên đó chính xác là những gì bạn tự tìm ra). Công thức tương tự làm việc cho kích thước cao hơn là tốt. U(1)PU=UUXUU
amip

@amoeba, cảm ơn bạn đã bình luận. Công thức chung (cho bất kỳ chiều nào) là XV trong đó V là ma trận cột chuẩn hóa (thành SS = 1) của các hàm riêng của trích xuất LDA. Những trình phát sinh chuẩn hóa dữ liệu mống mắt tôi hiển thị ở đây: stats.stackexchange.com/a/83114/3277 ; đại số của LDA ở đây: stats.stackexchange.com/a/48859/3277 . Một cốt truyện nơi tôi đã sử dụng các trình xác định chuẩn hóa của LDA ở đây: stats.stackexchange.com/a/22889 / 3277 .
ttnphns

Có, chắc chắn là tọa độ của các điểm dữ liệu trong không gian đích có chiều thấp hơn, nhưng nếu bạn muốn lấy hình ảnh của phép chiếu trong không gian chiều cao ban đầu (nghĩa là các chấm màu xanh lục trên các biểu đồ phân tán của bạn trong luồng này), bạn chiếu những điểm này trở lại với , vì vậy cuối cùng bạn nhận được . Tôi đã mắc một lỗi trong nhận xét trước đây của mình: nó giảm xuống chỉ khi có các cột trực giao, như trong trường hợp PCA (chứ không phải LDA). Tất nhiên nếu bạn chỉ xem xét 1 trục (và vì vậy chỉ có 1 cột), thì không vấn đề gì. XVV+XVV+XVVVV
amip
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.