가장 가까운 이웃이 t-SNE와 관련이 있습니까?


10

여기에 대한 답변에 따르면 t-SNE의 치수는 의미가 없으며 점 사이거리는 유사성의 척도가 아닙니다 .

그러나 t-SNE 공간에서 가장 가까운 이웃을 기반으로 한 점에 대해 말할 수 있습니까? 정확히 동일한 점이 군집화되지 않은 이유에 대한이 대답 은 점 간의 거리 비율이 낮은 차원 표현과 높은 차원 표현간에 유사하다는 것을 나타냅니다.

예를 들어 아래 이미지는 내 데이터 세트 중 하나 (15 클래스)의 t-SNE를 보여줍니다.

cro 479(오른쪽 상단)이 특이 치 라고 말할 수 있습니까 ? 이다 fra 1353(아래 왼쪽)과 더 유사하다 cir 375의 다른 이미지에 비해 fra등 클래스? 또는 이것들은 단지 인공물 일 fra 1353fra있습니까 , 예를 들어 몇 군데의 다른쪽에 붙어서 다른 반 으로 갈 수 없었 습니까?

여기에 이미지 설명을 입력하십시오



답변:


8

아닙니다. 이것이 사실 일 필요는 없지만, 이것은 T-SNE의 목표입니다.

답의 핵심에 들어가기 전에 수학적으로나 직관적으로 몇 가지 기본 정의를 살펴 보겠습니다.

가장 가까운 이웃 : 새로운 벡터 주어지면 미터법 공간 와 벡터 집합 를 고려하십시오 우리는. 직관적으로, 에 적합한 norm 정의를 사용하면 거리의 최소값 일뿐 입니다.아르 자형엑스1,...,엑스아르 자형엑스아르 자형||엑스1엑스||...||엑스엑스||아르 자형

이제 차원 축소를 적용하면서 가장 가까운 이웃이 실제로 중요한지 여부를 알 수 있습니다. 보통 내 대답에서 나는 수학, 코드 및 직감을 가진 것을 합리화하려고합니다. 먼저 직관적 인 측면을 살펴 보겠습니다. t-sne 알고리즘에 대한 이해를 통해 다른 점에서 떨어진 점이있는 경우 더 높은 차원으로 전환 할 때이 거리가 유지됩니다. 점 가 어떤 차원 에서 의 가장 가까운 이웃 이라고 가정하자 . 정의에 따르면 와 의 거리 사이에는 관계가 있습니다와이엑스+케이. 따라서 우리는 거리가 다른 차원에서 유지되거나 최소한 우리가 목표로하는 직관을 가지고 있습니다. 일부 수학으로 그것을 정당화하려고 노력합시다.

이 답변에서는 t-sne에 관련된 수학에 대해 자세히 설명하지는 않지만 이야기합니다 ( t-SNE : 왜 동일한 데이터 값이 시각적으로 가깝지 않습니까? ). 여기서 수학은 기본적으로 점의 분포가 지수 적이라고 가정 할 때 원래 공간에서와 같이 투영 된 공간에서 두 점이 가깝게 유지 될 확률을 최대화하는 것입니다. 따라서이 방정식을 보면 . 확률은 두 점 사이의 거리에 따라 달라 지므로 더 멀어 질수록 더 낮은 치수로 투사 될 때 더 멀어집니다. 에서 멀리 떨어져 있으면제이|나는=이자형엑스(||엑스제이엑스나는||22σ2)케이나는이자형엑스(||엑스제이엑스나는||22σ2)아르 자형케이예상 치수에 가깝지 않을 가능성이 높습니다. 이제 우리는 왜 포인트가 "가까워 야"하는가에 대한 수학적 타당성을 가지게되었습니다. 그러나 이것은 지수 분포이기 때문에 이러한 점이 크게 떨어져 있으면 가장 가까운 이웃 속성이 유지된다고 보장 할 수는 없지만 이것이 목표입니다.

이제 마지막으로이 개념도 보여주는 깔끔한 코딩 예제입니다.

from sklearn.manifold import TSNE
from sklearn.neighbors import KNeighborsClassifier
X = [[0],[1],[2],[3],[4],[5],[6],[7],[8],[9]]
y = [0,1,2,3,4,5,6,7,8,9]
neighs = KNeighborsClassifier(n_neighbors=3)
neighs.fit(X, y)
X_embedded = TSNE(n_components=1).fit_transform(X)
neighs_tsne = KNeighborsClassifier(n_neighbors=3)
neighs_tsne.fit(X_embedded, y)
print(neighs.predict([[1.1]]))
>>>[0]
print(neighs_tsne.predict([[1.1]]))
>>>[0]

이것은 매우 순진한 예이며 복잡성을 반영하지는 않지만 몇 가지 간단한 예를 실험하여 작동합니다.

편집 : 또한 질문 자체와 관련하여 몇 가지 요점을 추가하므로 이것이 사실 일 필요는 없지만 수학을 통해 합리화하면 구체적인 결과가 없음을 증명할 수 있습니다 (예 또는 아니오). .

이것이 TSNE에 대한 귀하의 우려를 해결하기를 바랍니다.


좋은 답변 주셔서 감사합니다. 요약 : 유사성이 높은 점은 가까이있을 가능성이 높습니다. perplexity 매개 변수가 확률 계산에 사용되는 포인트 수를 제어하므로 perplexity가 낮 으면 클러스터가 분리 될 수 있습니다. 조기 과장에 대해 언급 할 수 있습니까? 또한 TSNE 공간을 사용하여 포인트가 이상치이거나 오 분류 될 가능성이 있다고 가정합니다 (다른 클래스의 모든 NN이 있음). 무작위 초기화로 여러 TSNE 후에 일관성이 있으면 증가할까요?
geometrikal

그렇습니다. 당혹감은 포인트가 서로 어떻게 머무르는 지에 영향을 미치는 주요 요인 중 하나입니다. 초기 과장은 직관적으로 원래 공간의 클러스터가 얼마나 빡빡하고 임베디드 공간에 얼마나 많은 공간이 있을지에 대한 것입니다 (따라서 점 사이의 거리에 영향을 미치는 복잡함과 초기 과장의 혼합입니다. 마지막 질문에 대한 답은 그렇습니다. 이것은 표준의 지수화에 의한 것으로, 삽입 공간에 문제를 일으킬 수 있으므로 잘못 분류 될 가능성이 있습니다.
PSub
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.