AI VIDEO BRIEFING
다차원 척도법(MDS)이란: 거리 행렬로 차원을 축소하는 고전·계량·비계량 3가지 방식
1950년대 심리측정학에서 출발한 다차원 척도법(MDS)을 정리한다. 데이터가 아닌 거리 행렬에서 시작해 고전적·계량·비계량 MDS로 저차원 지도를 만드는 원리와 stress·SMACOF를 설명한다.

핵심 메시지
쉽게 이해하기
대부분의 차원 축소 기법은 행에 관측치, 열에 특징이 놓인 데이터 행렬에서 시작한다. 그러나 다차원 척도법(MDS)은 점들 사이의 거리를 담은 거리 행렬에서 출발한다는 점이 다르다. 덕분에 원래의 수치 특징에 접근할 수 없고 유사도 정보만 있을 때도 데이터를 공간에 배치할 수 있다.
MDS는 1950년대 심리측정학에서 사람의 유사성 판단을 이해하려는 방법으로 제안됐다. 예를 들어 여러 감정 쌍이 얼마나 비슷한지를 사람들에게 물어 얻은 값만으로도, 감정들이 놓인 잠재적 공간을 시각화할 수 있다. 유사도는 비유사도(거리)로 변환할 수 있고, 거리 행렬은 대칭이며 대각선은 0이라는 성질을 이용한다.
MDS는 크게 세 갈래다. 고전적 MDS는 주좌표분석(PCoA)이라고도 불리며 PCA와 밀접하다. 거리로부터 그람(내적) 행렬을 이중 중심화로 구성한 뒤 고유분해해 좌표를 얻는데, 이 방식은 거리가 유클리드일 때만 성립한다. 계량 MDS는 임의의 거리 함수를 허용하는 대신 닫힌 해가 없어 반복 최적화를 쓴다.
비계량 MDS는 순위(순서형) 정보만 있을 때 쓴다. 실제 거리값 대신 거리의 순서만 보존하도록, 단조 함수로 원래 거리를 disparities로 변환하고 등위(단조)회귀로 이를 학습한다. 이때 학습은 PAV(인접 위반자 병합) 같은 반복 알고리즘으로 푼다.
계량·비계량 MDS의 손실 함수는 stress로, 원래 거리와 저차원 거리의 제곱 차이다. Kruskal이 제안한 정규화 stress는 스케일에 불변이고 0과 1 사이 값을 가지며, 20%를 넘으면 적합이 나쁘다고 본다. 작은 거리를 더 잘 보존하려면 Sammon stress를, 결측 처리에는 가중치를 쓸 수 있다.
주요 인사이트
- MDS의 핵심 아이디어는 '거리를 공간으로 되돌리는' 역방향 과정이며, 이 과정에서 위치·회전·반사 정보는 사라지므로 해는 유일하지 않다.
- 고전적 MDS는 선형·결정론적이고 고유분해 때문에 3차 복잡도를 갖는 반면, 반복형 계량·비계량 MDS는 비선형 다양체 학습에 가깝고 대략 2차 복잡도를 가진다.
- stress는 비볼록이라 경사하강은 지역 최소에 빠질 수 있어, 서로 다른 초기값으로 여러 번 실행하는 것이 권장된다. scikit-learn이 쓰는 SMACOF는 복잡한 함수를 더 단순한 볼록 대리 함수로 감싸 단조 수렴을 보장한다.
- 저차원 개수는 stress를 차원에 대해 그린 스크리 도표에서 엘보 기준으로 고른다. 고차원 데이터에서는 거리 자체가 왜곡되기 쉬워 유클리드보다 맨해튼(L1) 거리가 더 잘 동작하는 경우가 많다.
- MDS는 모든 점을 동시에 고려하는 전역 기법으로, 거리 행렬의 시각화뿐 아니라 계산생물학의 유전자 군집화 같은 곳에도 쓰인다.
자주 묻는 질문
MDS는 PCA와 무엇이 다른가요?
고전적 MDS는 사실상 PCA와 같은 계산(그람 행렬의 고유분해)을 하며 거리가 유클리드일 때 성립합니다. 다만 MDS는 원 특징 없이 거리 행렬만으로도 동작하고, 계량·비계량 변형은 임의의 거리나 순위 정보까지 다룰 수 있다는 점이 다릅니다.
stress 값은 어떻게 해석하나요?
stress는 원래 거리와 저차원 거리의 제곱 차이를 합한 값입니다. Kruskal의 정규화 stress는 0~1 사이이며, 대략 20%를 넘으면 저차원 배치가 원래 거리를 잘 보존하지 못하는 나쁜 적합으로 봅니다.
비계량 MDS는 언제 쓰나요?
실제 거리값은 없고 '무엇이 무엇보다 더 비슷하다'는 순서(순위) 정보만 있을 때 씁니다. 거리의 크기가 아니라 순서를 보존하도록 단조 함수와 등위회귀로 disparities를 학습합니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗