Tôi thường xuyên sử dụng -SNE ( bên cạnh các kỹ thuật phân cụm - nhiều hơn về điều này cuối cùng ) để nhận ra / đánh giá sự hiện diện của các cụm trong dữ liệu của tôi. Thật không may, theo hiểu biết của tôi, không có cách tiêu chuẩn nào để chọn sự bối rối chính xác ngoài việc nhìn vào bộ dữ liệu kích thước giảm được sản xuất và sau đó đánh giá xem nó có ý nghĩa hay không. Có một số sự kiện chung, ví dụ. khoảng cách giữa các cụm chủ yếu là vô nghĩa, các giá trị lúng túng nhỏ khuyến khích các cấu trúc giống như cục máu đông nhưng đó là về nó.t
Một nguyên tắc rất thô sơ là kiểm tra giá trị lỗi liên quan đến mỗi lần tái thiết là gì. q qt-SNE đang cố gắng giảm thiểu tổng số phân kỳ Kullback-Leibler giữa phân phối khoảng cách giữa dữ liệu trong miền ban đầu và phân phối khoảng cách giữa dữ liệu trong miền kích thước giảm (thực tế phân phối đích là phân phối của xác suất mà một điểm sẽ chọn một điểm khác làm điểm lân cận nhưng các điểm này tỷ lệ thuận với khoảng cách giữa hai điểm). Có thể lập luận rằng các giá trị nhỏ hơn của phân kỳ KL cho thấy kết quả tốt hơn. Ý tưởng này không hoạt động tốt trong thực tế nhưng về mặt lý thuyết sẽ giúp loại trừ một số phạm vi của các giá trị lúng túng cũng như một số lần chạy thuật toán rõ ràng là tối ưu. Tôi giải thích lý do tại sao heuristic này là xa thuốc chữa bách bệnh và làm thế nào nó có thể hữu ích nhẹ: Tham số perplexity tăng đơn điệu với phương sai của Gaussian được sử dụng để tính khoảng cách / xác suất. Do đó, khi bạn tăng toàn bộ tham số lúng túng, bạn sẽ nhận được khoảng cách nhỏ hơn trong các điều khoản tuyệt đối và các giá trị phân kỳ KL tiếp theo. Tuy nhiên, nếu bạn có 20 lần chạy với cùng một sự bối rối và bạn không thể (không muốn) nhìn vào chúng, bạn luôn có thể chọn một biến có biến nhỏ nhất với hy vọng nó giữ được khoảng cách ban đầu chính xác hơn. Điều tương tự cũng xảy ra với Tuy nhiên, nếu bạn có 20 lần chạy với cùng một sự bối rối và bạn không thể (không muốn) nhìn vào chúng, bạn luôn có thể chọn một biến có biến nhỏ nhất với hy vọng nó giữ được khoảng cách ban đầu chính xác hơn. Điều tương tự cũng xảy ra với Tuy nhiên, nếu bạn có 20 lần chạy với cùng một sự bối rối và bạn không thể (không muốn) nhìn vào chúng, bạn luôn có thể chọn một biến có biến nhỏ nhất với hy vọng nó giữ được khoảng cách ban đầu chính xác hơn. Điều tương tự cũng xảy ra vớiθ , tham số gần đúng cho xấp xỉ Barnes-Hut, giả sử sự lúng túng là cố định thay đổi và sau đó kiểm tra chi phí kết quả sẽ có phần thông tin. Vào cuối ngày, chi phí thấp hơn có liên quan đến việc tái thiết trung thành hơn. Tất cả không bị mất mặc dù ...θ
Đối với trường hợp sử dụng cụ thể của bạn, một mẹo để tự động hóa nhẹ thủ tục chọn giá trị độ nhiễu tốt là: Chạy một quy trình phân cụm nhỏ (giả sử -means hoặc DBSCAN) trên tập dữ liệu kích thước giảm và sau đó đánh giá chất lượng của phân cụm đó sử dụng một số loại chỉ mục ( Cohen's , Rand index , Fowlkes-Mallows , v.v.) chống lại những gì bạn cố gắng dự đoán. Ý tưởng ở đây là đối với nhiệm vụ của bạn, việc trình bày chính xác dữ liệu ( kết quả -SNE phụ thuộc lúng túng ) sẽ đưa ra cách trình bày thông tin nhất (dưới dạng một trong các số liệu được đề cập) về mặt liên kết của chúng với thuộc tính bạn cố gắng dự đoán. Đây là lý do tại saok t tkktt-SNE được sử dụng ở vị trí đầu tiên, nếu đại diện kết quả là không phù hợp với các thuộc tính mà chúng tôi đang điều tra thì đơn giản là không tốt mặc dù lỗi tái cấu trúc thấp, kháng cáo trực quan, v.v.
Hãy để tôi chỉ ra rằng những gì tôi mô tả là heuristic . Như đã đề cập ở phần đầu của bài viết của tôi, kiểm tra thủ công các kết quả là một cách không thể thiếu để đánh giá chất lượng của việc giảm / phân cụm kích thước kết quả.