2017-02-05 10 views
0

메모리 소비에 대한 설명이있다 documentation sklearn.neighbors.KDTree대해 :sklearn.neighbors.KDTree 메모리 요건

트리 비늘 대략 N_SAMPLES/leaf_size를 저장하는데 필요한 메모리 양 .

leaf_size 더 큰 얻을 때, 메모리가 나무 감소를 저장하는 데 필요한 것을 의미합니까?

leaf_size은 트리에 리프 노드 수를 지정하므로 많은 노드가있는 경우 메모리가 커집니다. 내가 잘못 생각하고 있니?

답변

0

leaf_size 매개 변수는 트리의 '분기'하단에있는 '나뭇잎'에 저장되는 항목 수를 지정합니다. 이 말을하는 또 다른 방법은 쿼리를 철저히 비교할 '이웃'의 수입니다. ...

leaf_size이 작은 경우 트리가 더 커야하므로 트리 저장에 필요한 메모리가 증가합니다.

는 실제로, leaf_size 크게 계산 시간에 영향을 미치는 각 u (소 leaf_size)에 대해 더 큰 트리에 액세스하는 비용 간의 균형, 각 질의에 대한 더 많은 개체의 완전한 비교 비용 수 (leaf_size을 크게) https://jakevdp.github.io/blog/2013/04/29/benchmarking-nearest-neighbor-searches-in-python/

: 더 자세히 들어

여기 leaf_size의 최적화를 참조