고차원 데이터 시각화


11

고차원 공간의 벡터 인 두 클래스의 샘플이 있으며 2D 또는 3D로 플롯하고 싶습니다.

나는 차원 축소 기술에 대해 알고 있지만 matlab, python 또는 미리 작성된 .exe에서 정말 간단하고 사용하기 쉬운 도구가 필요합니다.

또한 2D 표현이 "의미"가 될지 궁금합니다. (예를 들어 두 클래스가 교차하거나 분리 가능한 방법).

답변:


8

당신은 줄 수 tSNE을 시도합니다. 사용하는 것은 매우 간단합니다. Matlab 및 Python 외에도 Octave와 함께 작동합니다. 1 분 안에 첫 줄거리를 얻으려면 가이드 를 살펴보십시오 .


10

고차원 데이터를 시각화하기위한 하나의 사전 구축 된 도구는 ggobi 입니다. 그룹을 나타 내기 위해 점의 색상을 지정한 다음 높은 치수를 2 차원 표현으로 줄이는 몇 가지 옵션이 있습니다. 특히 유용한 도구 중 하나는 기본적으로 데이터 클라우드를 여러 차원으로 회전하고 회전의 2D 투영 애니메이션을 보여주는 2D 그랜드 투어입니다. 흥미로운 패턴이 보이면 회전 속도를 늦추거나 일시 정지 할 수 있습니다.


R과 함께 작동하는 매우 유용한 도구입니다.
Yves


2

고전적인 접근법은 선형 차원 축소를 수행하기 위해 PCA ( Principal Component Analysis )를 사용하는 것입니다. 기본적으로, 이것은 데이터의 분산을 최대한 유지하면서 낮은 차원의 공간 (2D의 경우 단순히 평면)에 데이터를 투사합니다.

PCA를 실행하려면 일반적으로 대부분의 프로그래밍 언어에서 단일 명령을 실행해야하므로 매우 간단합니다.

데이터를 2 차원 또는 3 차원으로 정확하게 표현할 수 없을 수도 있습니다. PCA는이를 자동으로 정량적으로 추정합니다. 결과적으로 낮은 차원 표현으로 캡처되는 분산의 백분율을 알려줍니다. 이렇게하면 단순화 된 시각화를 통해 손실되는 정보의 양을 알 수 있습니다.




1

@juampa의 제안 이외에도 " 비선형 차원 축소에 대한 정보 검색 기반의 기본 접근 방식 인 NeRV (Neighbor Retrieval Visualizer)" 도 시도해야 하며 SNE / t-SNE는 NeRV의 특수 사례로 볼 수 있습니다. NeRV의 주요 요점은 리콜 의 트레이드 오프 와 원래 공간과 디스플레이 사이의 정밀도 를 최소화하는 것 입니다. NeRV는 C ++로 작성된 명령 줄 도구로 제공됩니다.

웹 사이트의 데모 사진 : 왼쪽 결과는 리콜에 더 많은 것을 강조하고 ( "누락"이 적음), 오른쪽 결과는 정밀도에 더 많은 것을 강조합니다 ( "거짓 이웃"이 적음).

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


1

상용 소프트웨어에 대한 이의가 없다면 PCA, LDA, SMACOF, tSNE, CCA, Sammon, Kohonen Map 등과 같은 방법을 포함하여 고차원 데이터에 대한 수십 개의 선형 및 비선형 매핑 알고리즘을 구현하는 소프트웨어 VisuMap을 사용해 볼 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.