9

큰 (> 10TB) 데이터 세트의 피어슨 상호 상관 행렬을 분산 방식으로 어떻게 계산할 수 있습니까? 모든 효율적인 분산 알고리즘 제안은 인정 될 것입니다. 분산 상호 상관 행렬 계산

갱신

: 나는 아파치 스파크 MLIB 상관

Pearson Computaation: 
/home/d066537/codespark/spark/mllib/src/main/scala/org/apache/spark/mllib/stat/correlation/Correlation.scala 
Covariance Computation: 
/home/d066537/codespark/spark/mllib/src/main/scala/org/apache/spark/mllib/linalg/distributed/RowMatrix.scala 

의 구현을 읽을 수는 있지만 모든 계산이 하나 개의 노드에서 일어나는처럼 나를 위해 그것을보고 그것이 진정한 의미에서 배포되지 않습니다.

여기에 약간의 빛을 넣어주세요. 나는 또한 아래 3 노드 스파크 클러스터에 실행을 시도하고는 스크린 샷입니다 :

Entire Computation timeline One the task details

는 데이터가 하나 개의 노드에서 뽑아 한 후 계산이 수행되고 있음을 두번째 이미지에서 볼 수 있듯이. 나 여기 있니?

답변

5

먼저, this에서 일이 제대로 진행되고 있는지 확인하십시오. MPI/OpenMP : Agomezl 또는 Meismyles, MapReduce : Vangjee 또는 Seawolf42과 같은 구현을 참조 할 수 있습니다. 계속 진행하기 전에 this을 읽는 것도 흥미로울 것입니다. 다른 노트에서는 이상 값에 강인한 상관 관계 계산에 관심이있는 경우 James's thesis에서 몇 가지 지침을 제공합니다.

+0

James 's Thesis를 가르쳐 주셔서 감사합니다. 당신도 이것을 대답 할 수 있다면 좋을 것이다. http://stackoverflow.com/questions/42428424/how-to-calculate-mean-of-distributed-data –

+0

제임스 논문은 Maronna와 Quadrant의 공분산 계산에 대해 이야기하지만 나는 할 수 없다. 이 2 가지 알고리즘을 이해할 수 있습니다.이 2 가지 알고리즘을 설명하는 링크를 알고 계십니까? –