AI VIDEO BRIEFING

t-SNE 완전 정복: 차원 축소·perplexity·Barnes-Hut까지 원리 해설

고차원 데이터를 2·3차원으로 시각화하는 대표 기법 t-SNE의 작동 원리를 SNE부터 Student t분포, perplexity, Barnes-Hut 가속까지 단계별로 정리했습니다.

고차원 데이터를 지도처럼 펼치는 t-SNE, 원리부터 대규모 확장까지 영상 대표 이미지

핵심 메시지

  • t-SNE는 선형 기법인 PCA와 달리 각 점의 '이웃 관계'를 보존하는 비선형 매니폴드 학습 기법으로, 고차원 데이터 시각화에 널리 쓰인다.
  • 핵심 아이디어는 점 사이 거리를 확률 분포(유사도)로 바꾸고, 고차원 분포와 저차원 분포의 차이를 KL 발산으로 최소화하는 것이다.
  • perplexity는 각 점이 몇 개의 이웃을 고려할지를 정하는 하이퍼파라미터로, 가우시안 분포의 폭(분산)을 조절한다.
  • t-SNE는 SNE의 '밀집 문제(crowding problem)'를 Student t분포의 두꺼운 꼬리로 완화한 것이 이름의 't'가 붙은 이유다.
  • Barnes-Hut 근사는 계산 복잡도를 제곱에서 로그 선형으로 낮춰 수백만 개 데이터까지 확장할 수 있게 한다.

쉽게 이해하기

t-SNE(t-distributed Stochastic Neighbor Embedding)는 수백 차원의 데이터를 사람이 볼 수 있는 2·3차원 공간으로 옮겨 구조를 파악하게 해주는 대표적 차원 축소 기법이다. 손글씨 숫자 데이터를 예로 들면, 선형 기법인 PCA로 줄인 결과보다 t-SNE로 줄인 2차원 그림이 훨씬 잘 정리된 군집을 보여준다. PCA가 모든 점 사이의 전역 유클리드 거리를 그대로 보존하려 하는 반면, 유클리드 거리는 고차원에서 좋은 선택이 아니기 때문이다.

차원이 줄어들면 점들을 배치할 공간 자체가 부족해져 모든 쌍의 거리를 동시에 지킬 수 없고, 결국 점들이 한 덩어리로 뭉친다. 스위스롤 데이터로 보면 유클리드 거리는 표면상 가까워 보이지만 실제로는 이웃이 아닌 점들을 붙여 버린다. 올바른 거리는 표면을 따라가는 최단 곡선인 '측지 거리'이며, 이는 이웃에서 이웃으로 경로를 잇는 방식으로 근사할 수 있다. 이 '이웃 임베딩'이 t-SNE의 근본 발상이다.

출발점인 SNE는 먼저 모든 점 사이 거리를 구한 뒤, 각 점을 중심으로 한 가우시안 분포로 거리를 유사도(확률)로 바꾼다. 가까운 점은 높은 값, 먼 점은 낮은 값을 받아 멀리 있는 점의 영향을 자연스럽게 줄인다. 여기서 perplexity는 각 점이 대략 몇 개의 이웃을 품을지를 정하는 값으로, 정보 이론의 섀넌 엔트로피를 이용해 정의되며 이진 탐색으로 각 점의 분산을 맞춘다. 값이 크면 조밀한 군집, 작으면 더 넓게 퍼진 배치가 나온다.

이렇게 얻은 고차원 유사도 분포(P)와 저차원 유사도 분포(Q)를 KL 발산으로 비교해 그 차이를 경사 하강법으로 줄인다. 저자들은 이 과정을 점들 사이를 밀고 당기는 용수철(물리학의 N-body 시뮬레이션)에 비유한다. t-SNE는 여기에 세 가지 개선을 더한다. 저차원 공간의 부족한 자리 탓에 점들이 뭉치는 밀집 문제를 꼬리가 두꺼운 Student t분포로 완화하고, 대칭(결합) 확률로 이상치도 비용 함수에 기여하게 하며, 초기 몇 회 반복에서 인력을 키우는 '초기 과장(early exaggeration)'으로 군집이 잘 갈라지도록 돕는다.

마지막 과제는 속도다. 정확한 계산은 데이터 수의 제곱에 비례해 무거운데, Barnes-Hut 근사는 공간을 격자 셀로 나눠 각 셀의 중심으로 요약하고 쿼드트리로 척력을 효율적으로 계산해 복잡도를 로그 선형으로 낮춘다. 덕분에 수백만 개 데이터까지 t-SNE를 적용할 수 있다. 다만 t-SNE는 확률적이라 초기값에 따라 결과가 달라지고, 새 데이터에 그대로 적용할 수 없으며, 군집화 도구로는 적합하지 않다는 점은 기억해야 한다.

주요 인사이트

  • 고차원에서 유클리드 거리에 기반한 전역 구조 보존은 '차원의 저주' 때문에 실패하므로, 지역 이웃 관계를 지키는 접근이 시각화에 유리하다.
  • perplexity는 사실상 각 점 가우시안의 분산을 조절하는 손잡이이며, 전역 구조와 지역 구조 사이의 균형점을 정한다.
  • Student t분포의 두꺼운 꼬리는 멀리 있는 점에도 비교적 높은 유사도를 부여해 저차원의 '자리 부족'으로 인한 왜곡을 완화한다.
  • t-SNE 결과의 군집 크기나 군집 간 거리는 반드시 의미를 갖지는 않으므로, 시각화로 얻은 직관을 과신하지 말아야 한다.
  • Shepard 다이어그램(고차원 거리 대 저차원 거리 산점도)으로 임베딩 품질을 점검하면 결과에 대한 신뢰를 높일 수 있다.

자주 묻는 질문

t-SNE와 PCA의 가장 큰 차이는 무엇인가요?

PCA는 모든 점 사이의 전역 유클리드 거리를 보존하는 선형 기법이고, t-SNE는 각 점의 지역 이웃 관계를 확률로 보존하는 비선형 매니폴드 학습 기법입니다. 그래서 손글씨 숫자 같은 데이터에서 t-SNE가 더 잘 분리된 군집을 보여줍니다.

이름에 들어간 't'는 무엇을 뜻하나요?

저차원 공간에서 점들이 뭉치는 밀집 문제를 완화하기 위해 꼬리가 두꺼운 Student t분포(자유도 1)를 사용하는데, 여기서 't'가 왔습니다. t분포는 이진 탐색이 필요 없고 지수 계산도 줄여 계산 효율도 높입니다.

수백만 개의 데이터에도 t-SNE를 쓸 수 있나요?

네, Barnes-Hut 근사를 사용하면 됩니다. 공간을 격자 셀로 나눠 중심으로 요약하고 쿼드트리로 척력을 계산해 복잡도를 제곱에서 로그 선형으로 낮추므로 대규모 데이터까지 확장할 수 있습니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식