Кажется, вы ищете алгоритм кластеризации k -nedest-сосед .Да, kd -деревья - это вариант, и на самом деле самый быстрый вариант, который мне известен.
Цитировать Википедию: k - кластеризация ближайшего соседа "может использоваться для регрессии, просто присваивая значение свойства для объекта как среднее из значений его k ближайших соседей. Это может быть полезно для взвешивания вкладов соседей, так что ближесоседи вносят больший вклад в среднее значение, чем более отдаленные ».Кажется, это то, что вы хотите.