용어집

t-분산 확률적 이웃 임베딩(t-SNE)

고차원 데이터를 시각화하는 강력한 기술인 t-SNE에 대해 알아보세요. AI와 머신러닝에서의 사용, 이점 및 응용 분야에 대해 알아보세요.

YOLO 모델을 Ultralytics HUB로 간단히
훈련

자세히 알아보기

t 분산 확률 이웃 임베딩(t-SNE)은 차원 축소에 널리 사용되는 기법으로, 특히 2차원 또는 3차원과 같은 저차원 공간에서 고차원 데이터 세트를 시각화하는 데 적합합니다. 로렌스 반 데어 마텐과 제프리 힌튼이 개발한 이 기법은 클러스터나 다양체와 같은 데이터의 기본 구조를 드러내는 데 탁월하여 복잡한 데이터를 시각적 검사를 통해 더 쉽게 이해할 수 있게 해줍니다. 머신 러닝(ML) 및 데이터 분석 분야에서 널리 사용되고 있습니다.

t-SNE 이해

t-SNE의 핵심 아이디어는 데이터의 로컬 구조를 보존하는 것입니다. 고차원 데이터 포인트 간의 유사성을 조건부 확률로 모델링한 다음, 매핑된 포인트 간에 유사한 확률 분포를 생성하는 저차원 임베딩을 찾으려고 시도합니다. 주성분 분석(PCA)과 같은 선형적 방법과 달리, t-SNE는 비선형적이고 확률적입니다. 따라서 특히 데이터가 곡면 다양체에 있을 때 PCA가 놓칠 수 있는 복잡한 관계를 포착할 수 있습니다. 그러나 PCA는 데이터의 전체 구조와 분산을 보존하는 데 더 효과적입니다.

이 알고리즘은 고차원과 저차원 모두에서 점 사이의 쌍별 유사성을 계산합니다. 고차원 공간에서는 가우스 분포를 사용하고 저차원 공간에서는 t 분포(특히 자유도가 1인 학생의 t 분포)를 사용합니다. t 분포를 사용하면 저차원 맵에서 '군집 문제'(맵 중앙에 점들이 서로 뭉치는 경향)를 완화하고 서로 다른 점을 더 효과적으로 분리하는 데 도움이 됩니다. 이 과정에는 그라데이션 하강을 사용하여 두 분포 사이의 차이를 최소화하는 것이 포함됩니다. 자세한 기술 설명은 t-SNE 백서 원본을 참조하세요.

AI 및 ML 분야의 애플리케이션

t-SNE는 주로 시각화 기법으로, AI 모델에서 생성된 고차원 데이터를 탐색하고 이해하는 데 매우 유용합니다. 다음은 몇 가지 예시입니다:

  • 단어 임베딩 시각화하기: 자연어 처리(NLP)에서 BERT나 GPT와 같은 모델은 단어나 문장에 대한 고차원 벡터 표현(임베딩)을 생성합니다. 이러한 임베딩에 t-SNE를 적용하면 연구자들은 의미 관계를 시각화하여 비슷한 의미를 가진 단어들이 2D 플롯에서 함께 군집된 모습을 보여줄 수 있습니다. 이는 학습된 언어 모델링의 품질을 이해하는 데 도움이 됩니다.
  • CNN 특징 표현 이해하기: 컴퓨터 비전(CV)에서 컨볼루션 신경망(CNN)은 다음에서 사용되는 것과 같이 Ultralytics YOLO모델에 사용되는 것과 같이 계층적 특징을 학습합니다. t-SNE는 데이터 세트의 중간 또는 최종 레이어(예: ImageNet)의 활성화에 적용할 수 있습니다. 이러한 피처 맵을 시각화하면 모델이 서로 다른 객체 클래스를 얼마나 잘 구분하는지 이해하는 데 도움이 되며, 모델 개발 중, 심지어 Ultralytics HUB에서 모델을 훈련할 때에도 인사이트를 제공할 수 있습니다.

주요 고려 사항

강력하지만 t-SNE에는 사용자가 이해해야 할 특징이 있습니다:

  • 계산 비용: t-SNE는 쌍별 유사성을 계산해야 하므로 특히 매우 큰 데이터 세트의 경우 계산 집약적일 수 있습니다.
  • 하이퍼파라미터 민감도: 결과는 하이퍼파라미터, 특히 각 점에 대해 고려되는 로컬 이웃의 수에 영향을 주는 '퍼플렉서티'에 민감하게 반응합니다. 적절한 하이퍼파라미터 조정이 필요한 경우가 많습니다. scikit-learn과 같은 구현은 이러한 매개변수에 대한 제어 기능을 제공합니다.
  • 해석: t-SNE 플롯에서 클러스터의 크기와 클러스터 사이의 거리가 항상 원래의 고차원 공간에서 실제 클러스터 크기나 간격과 직접적으로 일치하는 것은 아닙니다. 주로 국소적인 유사성과 그룹화를 보여줍니다. K-평균과 같은 확정적인 클러스터링 분석보다는 탐색을 위한 도구입니다.

요약하자면, t-SNE는 복잡한 고차원 데이터 세트를 시각화하고 직관을 얻기 위한 인공지능(AI) 툴킷의 유용한 도구로, 다른 분석 방법을 보완합니다.

모두 보기