2013-01-08 2 views
0

나는 K- 가장 가까운 이웃 분류자를 만들고 있는데, 나는 거리 계산을 한꺼번에 처리하고 싶다. (이것은 벡터화되지 않은 버전이 실행하기에 너무 길다) 도움이 될 것이다.두 행렬 간의 거리를 벡터화하는 방법은 무엇입니까?

크기가 28000 개 x 784 개이고 테스트 데이터 세트가 42,000 개 x 784 개 크기 인 교육 데이터 세트가 있습니다. 내 질문에 대답하는 코드는 28000 x 42000 크기의 행렬을 가져와야합니다. 모든 행에는 해당 테스트 예제에서 각 42000 개의 학습 예제까지의 거리가 포함되어 있습니다.

필자가 가장 잘 생각해 낸 것은 합계와 bsxfun을 사용하여 각 테스트 예제에서 한 번에 모든 거리를 계산하는 것이지만 여전히 28000 개의 예제를 모두 반복해야하며 이전에 말한 것처럼 잠시 시간이 걸립니다.

답변

2

pdist2(A, B)은 각각 정확히 AB이 교육 자료 및 테스트 데이터 세트 인 경우 필요한 작업을 수행합니다. 다음은 참조입니다. http://www.mathworks.com/help/stats/pdist2.html

+0

어떻게 두 개의 개별 매트릭스에서 작동합니까? 예제는 pdist (X) – user1956609

+0

을 보여줍니다. 사용 가능한 것은'pdist'가 아니라'pdist2'입니다. 나는 당신의 질문을 잘못 읽었지만 내 대답은 바로 잡았다. 죄송합니다. 잘못된 문서를 보냈습니다. –

관련 문제