모든 기능 에서 동일한 값을 갖는 200 개의 데이터 포인트가 있습니다.
t-SNE 치수 축소 후에는 다음과 같이 더 이상 동일하게 보이지 않습니다.
시각화에서 같은 시점에 있지 않은 이유는 무엇이며 두 개의 다른 클러스터에 분산되어있는 것 같습니다.
모든 기능 에서 동일한 값을 갖는 200 개의 데이터 포인트가 있습니다.
t-SNE 치수 축소 후에는 다음과 같이 더 이상 동일하게 보이지 않습니다.
시각화에서 같은 시점에 있지 않은 이유는 무엇이며 두 개의 다른 클러스터에 분산되어있는 것 같습니다.
답변:
T-SNE에서 동일한 값을 여러 지점에 분산시킬 수있는 것이 맞습니다. T-SNE가 실행되는 알고리즘을 살펴보면 이러한 이유가 분명합니다.
알고리즘이 데이터 세트에 적용된 후 실제로 동일하지 않은 점에 대한 첫 번째 우려를 해결하기 위해. 나는 당신을 위해 그것을 확인하기위한 운동으로 남겨두고 간단한 배열을 고려할 것입니다. 과 실제 알고리즘을 실행하고 결과 포인트가 실제로 동일하지 않은지 직접 확인하십시오.
import numpy as np
from sklearn.manifold import TSNE
m = TSNE(n_components=2, random_state=0)
m.fit_transform(np.array([[0,1],[0,1]]))
또한 random_state
실제로 변경하면 모델의 출력 좌표가 수정됩니다. 실제 좌표와 출력 간에는 실제 상관 관계가 없습니다. TSNE의 첫 번째 단계부터 조건부 가능성을 계산합니다.
이제 알고리즘을 사용하여 직감없이 수학을 사용하는 이유를 합리화하려고합시다. 참고 과 이 상황에서 두 벡터입니다. . 이제 우리가KL 발산을 적용한 후 위에서 언급 한 값을 얻습니다. 이제 이것에 직관을 적용합시다. 비공식적으로 조건부 확률은 선택할 것이다 이웃 이니까요 이것은 두 가지 이유로 결과 1을 정당화합니다. 첫 번째는 다른 이웃이 없기 때문에 좌표 목록에서 유일한 다른 벡터를 선택해야합니다. 또한, 포인트는 동일하며 다른 이웃으로 선택 될 확률이 높아야 합니다.
이제 절대 좌표가 의미가 있습니다. 그들은 정말로하지 않습니다. 랜덤은 원하는 곳으로 포인트를 재분배 할 수 있습니다. 그러나 더 흥미로운 것은 점들 사이의 거리 비율이며 이것들은 상대적이며 상대적으로 더 높은 치수로 투영하더라도 상대적입니다.
따라서 진실은 두 군집을 보지 않고 좌표 자체보다 많은 정보를 전달하기 때문에 두 군집 사이의 거리를 살펴 보는 것입니다.
이것이 귀하의 질문에 답변되기를 바랍니다 :)