Có trường hợp nào PCA phù hợp hơn t-SNE không?


39

Tôi muốn xem 7 biện pháp hành vi sửa văn bản (thời gian sửa văn bản, số lần nhấn phím, v.v.) liên quan với nhau như thế nào. Các biện pháp có tương quan. Tôi đã chạy PCA để xem các biện pháp được chiếu lên PC1 và PC2 như thế nào, tránh sự chồng chéo của việc chạy các thử nghiệm tương quan hai chiều riêng biệt giữa các biện pháp.

Tôi đã được hỏi tại sao không sử dụng t-SNE, vì mối quan hệ giữa một số biện pháp có thể là phi tuyến tính.

Tôi có thể thấy cách cho phép phi tuyến tính sẽ cải thiện điều này, nhưng tôi tự hỏi liệu có lý do chính đáng nào để sử dụng PCA trong trường hợp này và không phải là SNE không? Tôi không quan tâm đến việc phân cụm các văn bản theo mối quan hệ của chúng với các biện pháp, mà là về mối quan hệ giữa chính các biện pháp đó.

(Tôi đoán EFA cũng có thể là một cách tiếp cận tốt hơn / khác, nhưng đó là một cuộc thảo luận khác.) So với các phương pháp khác, có rất ít bài đăng trên đây về t-SNE, vì vậy câu hỏi có vẻ đáng để hỏi.


3
t-SNE không mở rộng tốt với kích thước của tập dữ liệu, trong khi PCA thì có. Điều này xuất phát từ kinh nghiệm trong việc chạy cả hai trên tập dữ liệu lớn bằng cách sử dụng triển khai scikit-learn.
Mai

@Mai có lẽ điều này áp dụng chủ yếu cho các bộ dữ liệu lớn? Tập dữ liệu của tôi nằm ở phía nhỏ (vài trăm điểm dữ liệu).
dùng3744206

Câu trả lời:


65

-SNE là một phần tuyệt vời của Machine Learning nhưng người ta có thể tìm thấy nhiều lý do để sử dụng PCA thay vì nó. Trên đỉnh đầu, tôi sẽ đề cập đến năm. Như hầu hết các phương pháp tính toán khác đang sử dụng, t -SNE không phải làviên đạn bạcvà có khá nhiều lý do khiến nó trở thành lựa chọn tối ưu trong một số trường hợp. Hãy để tôi đề cập đến một số điểm ngắn gọn:tt

  1. Sự ngẫu nhiên của giải pháp cuối cùng . PCA mang tính quyết định; -SNE thì không. Một người có được một hình ảnh đẹp và sau đó đồng nghiệp của cô ấy có một hình dung khác và sau đó họ có được nghệ thuật trông đẹp hơn và nếu sự khác biệt 0,03 % trong phân kỳ K L ( P | | Q ) có ý nghĩa ... Trong PCA, câu trả lời đúng cho câu hỏi đặt ra được đảm bảo. t -SNE có thể có nhiều cực tiểu có thể dẫn đến các giải pháp khác nhau. Điều này đòi hỏi nhiều lần chạy cũng như đặt ra câu hỏi về độ tái lập của kết quả.t0.03%KL(P||Q)t

  2. Khả năng giải thích của ánh xạ . Điều này liên quan đến điểm trên nhưng hãy giả sử rằng một nhóm đã đồng ý trong một hạt giống / lần chạy ngẫu nhiên cụ thể. Bây giờ câu hỏi trở thành những gì nó thể hiện ... -SNE cố gắng chỉ ánh xạ chính xác địa phương / hàng xóm để những hiểu biết của chúng tôi về sự nhúng đó phải rất thận trọng; xu hướng toàn cầu không được thể hiện chính xác (và đó có thể là một điều tuyệt vời để hình dung). Mặt khác, PCA chỉ là một phép quay chéo của ma trận hiệp phương sai ban đầu của chúng ta và các hàm riêng biểu thị một hệ thống trục mới trong không gian được kéo dài bởi dữ liệu gốc của chúng ta. Chúng tôi có thể giải thích trực tiếp những gì một PCA cụ thể làm.t

  3. Áp dụng cho dữ liệu mới / chưa thấy . -SNE không học một chức năng từ không gian ban đầu sang chiều mới (thấp hơn) và đó là một vấn đề. Về vấn đề đó, t -SNE là một thuật toán học không tham số nên việc tính gần đúng với thuật toán tham số là một vấn đề không chính đáng. Việc nhúng được học bằng cách di chuyển trực tiếp dữ liệu qua không gian chiều thấp. Điều đó có nghĩa là người ta không nhận được một hàm riêng hoặc một cấu trúc tương tự để sử dụng trong dữ liệu mới. Ngược lại, sử dụng PCA, các hàm riêng cung cấp một hệ thống trục mới, thứ có thể được sử dụng trực tiếp để chiếu dữ liệu mới. [Rõ ràng người ta có thể thử đào tạo một mạng lưới sâu để học ttttÁnh xạ -SNE (bạn có thể nghe Tiến sĩ van der Maaten tại ~ 46 'của video này gợi ý điều gì đó dọc theo dòng này) nhưng rõ ràng không có giải pháp dễ dàng nào tồn tại.]

  4. ttt

  5. k ttkkkkết hợp tuyến tính tốt nhất về phương sai giải thích. (Cảm ơn @amoeba vì đã nhận thấy tôi đã gây rối khi lần đầu tiên cố gắng phác thảo điểm này.)

t phương pháp -SNE và không liên quan khi so sánh nó với thuật toán khác.

Tóm lại, -SNE là tuyệt vời nhưng vì tất cả các thuật toán đều có những hạn chế khi nói đến khả năng ứng dụng của nó. Tôi sử dụng t -SNE gần như trên bất kỳ tập dữ liệu mới nào mà tôi sử dụng như một công cụ phân tích dữ liệu giải thích. Tôi nghĩ mặc dù nó có những hạn chế nhất định không làm cho nó gần như có thể áp dụng như PCA. Hãy để tôi nhấn mạnh rằng PCA cũng không hoàn hảo; ví dụ, các hình ảnh trực quan dựa trên PCA thường kém hơn so với t -SNE.ttt


tk=2,3,4

@amoeba: Cảm ơn bạn đã đề cập đến nó. Tôi cập nhật câu trả lời của tôi cho phù hợp.
usεr11852 nói Phục hồi Monic

3
Về quan điểm số 3 của bạn: đây là bài báo năm 2009 về tham số lvdmaaten.github.io/publications/ con /AISTATS_2009.pdf . Có vẻ như nó không thực sự cất cánh (nó có số trích dẫn ít hơn 25 lần so với bài báo gốc), nhưng thực tế nó khá dễ thực hiện với công nghệ / thư viện ngày nay. Tôi có nó và chạy trong Keras; Tôi đã làm việc để điều tra (và có thể mở rộng) nó trong những tuần trước.
amip nói rằng Phục hồi lại

Mát mẻ! (+1) Nếu bạn nhận được một bản in trước arXiv nổi xin vui lòng cho tôi biết (ở đây hoặc gấp 10 lần), tôi sẽ rất tò mò về kết quả. Vâng, tôi đã thấy bài báo đó tại thời điểm viết câu trả lời này (nó thực sự là một bài báo nổi tiếng tôi sẽ nói) nhưng như bạn nói nó dường như không được đưa lên. Ngoài ra, điểm số 3 vẫn hoàn toàn hợp lệ: bạn cần xây dựng một DNN để lấy ra thứ gì đó mà PCA cung cấp thông qua một sản phẩm chéo ma trận duy nhất.
usεr11852 nói Phục hồi Monic

12

https://stats.stackexchange.com/a/249520/7828

là một câu trả lời chung tuyệt vời.

Tôi muốn tập trung hơn một chút vào vấn đề của bạn. Bạn rõ ràng muốn xem các mẫu của bạn liên quan đến 7 biến đầu vào của bạn như thế nào . Đó là điều mà t-SNE không làm. Ý tưởng của SNE và t-SNE là đặt các hàng xóm gần nhau, (gần như) hoàn toàn bỏ qua cấu trúc toàn cầu.

Điều này là tuyệt vời để trực quan hóa, bởi vì các mục tương tự có thể được vẽ cạnh nhau (và không nằm trên nhau, cf chen chúc).

Điều này là không tốt để phân tích thêm. Cấu trúc toàn cầu bị mất, một số đối tượng có thể đã bị chặn chuyển sang hàng xóm của họ và sự tách biệt giữa các nhóm khác nhau không được bảo tồn một cách định lượng. Đó là phần lớn lý do tại sao ví dụ phân cụm trên hình chiếu thường không hoạt động tốt.

PCA hoàn toàn ngược lại. Nó cố gắng bảo tồn các thuộc tính toàn cầu (hàm riêng có phương sai cao) trong khi nó có thể mất độ lệch phương sai thấp giữa các lân cận.


Ah đó chính xác là những gì tôi giả định. Tôi không quan tâm đến việc các điểm dữ liệu được đặt trong không gian như thế nào, mà là về cách các biện pháp có liên quan với nhau. Hai điều này được kết nối, tất nhiên, nhưng về mặt trực quan hóa và diễn giải các mối quan hệ này, tôi nghi ngờ chỉ PCA làm những gì tôi muốn. Ví dụ, có cả mối quan hệ tích cực và tiêu cực giữa các biện pháp và điều tôi thực sự quan tâm là giá trị tuyệt đối của các hiệp hội, một lần nữa tôi nghĩ sẽ dễ hiểu / xem tôi có sử dụng PCA hay không.
dùng3744206

1
Đối với trường hợp sử dụng đó, có thể tốt hơn là nhìn vào ma trận tương quan, tức là chỉ thực hiện so sánh cặp. Sau đó, bạn cũng có thể xử lý phi tuyến tính, ví dụ bằng cách sử dụng tương quan spearman.
Anony-Mousse

Chúng tôi có thể sử dụng T-SNE cho các vấn đề cụm? Theo như tôi hiểu, chúng ta có thể chiếu một điểm mới sắp tới và cố gắng phân cụm trên các kích thước thấp hơn không? Có thể không?
Catbuilts

Không. Vì tSNE không tuyến tính, bạn không thể tính toán dữ liệu mới (xem bên trên). Và đã có một cuộc thảo luận hợp pháp rằng nó cũng có thể gây hiểu nhầm để phân cụm dữ liệu dự kiến.
Anony-Mousse

1

Để đưa ra một góc áp dụng, PCA và t-SNE không loại trừ lẫn nhau. Trong một số lĩnh vực sinh học, chúng tôi đang xử lý dữ liệu có chiều cao (ví dụ: scRNA-seq là hàng ngàn kích thước) trong đó t-SNE đơn giản không mở rộng. Do đó, trước tiên, chúng tôi sử dụng PCA để giảm tính chiều của dữ liệu và sau đó, lấy các thành phần nguyên tắc hàng đầu, chúng tôi tính toán biểu đồ lân cận và sau đó nhúng biểu đồ vào 2 chiều bằng cách sử dụng t-SNE (hoặc cách tiếp cận giảm kích thước phi tuyến tính tương tự như UMAP) để trực quan hóa dữ liệu.

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.