저는 scikit-learn의 pairwise_distances 함수를 사용하여 거리 매트릭스를 계산해야하는 상대적으로 큰 NumPy 배열 (거의 300k 행과 20+ 열, 대부분의 값은 0입니다)이 있습니다.어떤 SciPy 스파 스 매트릭스 클래스가 거리 매트릭스를 계산하는 것이 가장 좋습니까?
입력 배열을 희소 행렬로 변환하지 않으면이 프로세스가 메모리 오류로 실행됩니다. SciPy는 많은 sparse matrix classes을 제공하며이 특정 상황에 가장 적합한 것이 무엇인지 알 수 없습니다.
CSR 또는 CSC를 선호하는 SO answer가 있지만 거리 매트릭스를 계산하는 데 가장 적합한 것이 어느 것인지 명확하지 않습니다. 어떤 제안이라도 환영합니다!
거리 매트릭스가 희박하지 않습니다. 글쎄, 당신은 중복 포인트를 많이 가지고 있다면 그것이 희박해질 수 있다고 생각하지만, 그것은 매우 드문 경우입니다. – jme
거리 매트릭스가 아닌 입력 배열이 스파 스 매트릭스로 변환하려는 배열입니다. –
아, 알겠습니다. 그러나 그 결과 거리 매트릭스는 'n'이 2 개의 항목을 선택하게됩니다. (n = 300,000의 경우) 가장 확실하게 메모리에 맞지 않습니다. 따라서 입력 배열을 희소 배열로 변환하면 많은 도움이되지 않을 것이라고 생각합니다. – jme