PCA가 부울 (이진) 데이터 유형에 대해 작동합니까?


38

고차 시스템의 차원을 줄이고 바람직하게는 2 차원 또는 1 차원 필드에서 대부분의 공분산을 포착하고 싶습니다. 나는 이것이 주성분 분석을 통해 이루어질 수 있다는 것을 알고 있으며 많은 시나리오에서 PCA를 사용했습니다. 그러나 부울 데이터 유형에는 사용하지 않았 으며이 세트로 PCA를 수행하는 것이 의미가 있는지 궁금했습니다. 예를 들어, 질적이거나 설명적인 척도가 있다고 가정하고 해당 측정 기준이 해당 측정 기준에 유효한 경우 '1'을 지정하고 측정 기준이 아닌 경우 '0'을 할당합니다 (이진 데이터). 예를 들어, 백설 공주에서 일곱 난장이를 비교하려고하는 것처럼 가장하십시오. 우리는 :

Doc, Dopey, Bashful, Grumpy, Sneezy, Sleepy and Happy, 당신은 자질에 따라 그것들을 정리하고 싶었습니다.

(Lactose IntolerantA Honor RollAthleticWealthyDoc1011Dopey0000Bashful1011Grumpy1111Sneezy0110Sleepy1000Happy1100)

예를 들어 Bashful은 유당 불내증이며 A 명예 롤에는 없습니다. 이것은 순전히 가상의 행렬이며 실제 행렬에는 더 많은 설명 열이 있습니다. 제 질문은 개인 간 유사성을 찾는 수단으로이 매트릭스에서 PCA를 수행하는 것이 여전히 적절할까요?


1
이 질문의 (거의) 중복 하나 . PCA는 이진 / 부울 데이터에서 수행 될 수 있지만 이러한 데이터에 대해 요인 분석 (PCA를 "있는 것처럼"포함)을 수행하는 것은 문제가 있습니다.
ttnphns

1
귀하와 같은 이진 데이터 ( "present"대 "absent")에 대한 PCA는 일반적으로 원래 0 이외의 원점 (기준점)을 제안 할 이유가 없기 때문에 변수를 중심으로하지 않고 수행됩니다. 따라서 공분산 대신 또는 상관 기반 PCA는 SSCP 기반 또는 코사인 기반 PCA에 도달 합니다. 이러한 분석은 매우 유사하며 다중 대응 일치 분석 (= 균질성 분석)과 거의 동일하며, 이는 귀하가 선택할 수 있습니다.
ttnphns

a means of finding the similarity between individuals. 그러나이 작업은 PCA가 아닌 클러스터 분석을위한 것입니다.
ttnphns

짧은 대답 : 선형 PCA (차원 분석 기술로 간주되고 잠재 변수 기술이 요인 분석으로 사용되지 않는 경우)는 스케일 (메트릭) 또는 이진 데이터에 사용할 수 있습니다. 그러나 일반 데이터 또는 공칭 데이터와 함께 일반 (선형) PCA를 사용해서는 안됩니다. 이러한 데이터가 어떤 식 으로든 메트릭 또는 이진 (예 : 더미)으로 바뀌지 않는 한.
ttnphns

@ttnphns PCA는 변수를 묶는 방법으로 볼 수 있습니다. 또한 PCA 및 군집 분석 을 순서대로
Antoine

답변:


12

범주 형 변수 데이터 (이진 포함)에서 자동 구조 추출을위한 비교적 최근의 기술을 제안하고 싶습니다. 이 방법은 University of Southern California의 Greg van Steeg에서 CorEx라고합니다. 아이디어는 엔트로피 측정을 기반으로 총 상관 개념을 사용하는 것입니다. 단순하고 많은 수의 하이퍼 파라미터를 튜닝하지 않기 때문에 매력적입니다.

계층 적 표현에 관한 논문 (가장 최근의 것은 이전 측정법 위에 작성). http://arxiv.org/pdf/1410.7404.pdf


1
@AlvinNunez 천만에요! 파이썬 구현은 GitHub github.com/gregversteeg/CorEx 에서 찾을 수 있습니다. 데이터를 가져오고 무엇이 나오는지 쉽게 볼 수 있습니다 .
Vladislavs Dovgalecs

13

또한 MCA (Multiple Correspondence Analysis)를 사용하여 분석 할 변수가 정량적이 아닌 범주 형 (여기서는 이진 변수) 인 경우 주성분 분석의 확장입니다. 예를 들어 Husson et al. (2010) , 또는 Abdi and Valentin (2007) . MCA (및 PC의 계층 적 클러스터링)를 수행하는 탁월한 R 패키지는 FactoMineR 입니다.


1
흥미로운 대답은 동의하는 것입니다. inflation of the feature spaceMCA가 아닌 PCA에서 발생 하는 현상 과 이유 에 대해 자세히 설명하면 큰 자산이 될 것입니다.
ttnphns

나는 그 inflation of the feature space현상을 오해했다 . CA에서 MCA로 갈 때 작동하는 것처럼 보이지만 PCA의 고유 한 문제는 아닙니다. 이 의견을 읽었을 때 답변을 삭제하겠습니다. 깨닫게 해줘서 고마워
Antoine

나는 당신이 대답을 제거해야한다고 생각하지 않습니다. MCA는 저에게 올바른 선택 중 하나이며 귀하의 답변은 괜찮습니다.
ttnphns

MCA가 여기에 도움이 될 것으로 생각되기 때문에 답을 다시 추가했지만 기능 공간의 인플레이션에 관한 토론은 관련이없는 것처럼 보였습니다.
Antoine

이진 데이터에 대한 MCA의 결과는 Jaccard 또는 단순 일치와 같은 이진 데이터에 적합한 거리 측정치가있는 PCoA의 결과와 어떻게 다릅니 까?
emudrak

9

PCA를 변수 사이의 관계를 시각화하는 방법을 제공하는 탐색 적 기술로 생각한다면 (그리고 내 생각으로는 이것이 생각할 수있는 유일한 방법입니다) 그렇다면 바이너리를 넣을 수없는 이유는 없습니다 변수. 예를 들어 다음은 데이터의 이중 그래프입니다

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

합리적으로 유용한 것 같습니다. 예를 들어 Doc과 Bashful이 매우 유사하다는 것을 알 수 있습니다. HR은 다른 세 가지 변수와는 다릅니다. 졸린과 Sneezy는 매우 유사하지 않습니다.

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