Nun, es hängt in erster Linie von Ihrer speziellen Implementierung und Ihrem Datensatz ab.
Ein schlecht ausgewogener Baum bedeutet, dass Sie viel mehr Daten suchen müssen, als Sie benötigen. Stellen Sie sicher, dass Ihre Baumkonstruktion gesund ist.
Es könnte auch davon abhängen, wie Sie die k Nachbarn finden. Wenn Ihr Algorithmus den Baum nach dem nächsten Nachbarn durchsucht und ihn speichert, dann nach dem zweitnächsten sucht und diesen usw. speichert, dann machen Sie die Suche nicht sehr effizient. Stattdessen halten Sie eine laufende Liste der k nächsten Nachbarn und Bump Punkte aus der Liste, wie Sie nähere diejenigen finden, die den Baum überqueren. Auf diese Weise suchen Sie einmal statt k mal.
Wie auch immer, es klingt so, als würden Sie das für einen Kurs machen. Versuchen Sie, mit Ihrem Professor, TAs oder Klassenkameraden zu sprechen, um zu sehen, ob Ihre Ergebnisse typisch sind.
Tags und Links search kdtree nearest-neighbor knn