Создайте d-дерево K самый близкий соседний искатель
KDTreeSearcher
объекты модели хранят результаты самого близкого соседнего поиска, который использует алгоритм d-дерева K. Результаты включают обучающие данные, метрику расстояния и ее параметры и максимальное количество точек данных в каждой вершине (то есть, размер блока). Алгоритм d-дерева K делит n-by-K набор данных путем рекурсивного разделения точек n в K - мерное пространство в двоичное дерево.
Если вы создаете KDTreeSearcher
объект модели, можно искать сохраненное дерево, чтобы найти все соседние точки к данным о запросе путем выполнения самого близкого соседнего поискового использования knnsearch
или использование поиска радиуса rangesearch
. Алгоритм d-дерева K более эффективен, чем алгоритм исчерпывающего поиска, когда K мал (то есть, K ≤ 10), обучение и наборы запроса не разреженны, и обучение и запрашивают наборы, имеют много наблюдений.
Используйте любого createns
функционируйте или KDTreeSearcher
функция (описанный здесь), чтобы создать KDTreeSearcher
объект модели. Обе функции используют тот же синтаксис за исключением того, что createns
функция имеет 'NSMethod'
аргумент пары "имя-значение", который вы используете, чтобы выбрать самый близкий соседний метод поиска. createns
функция также создает ExhaustiveSearcher
объект. Задайте 'NSMethod','kdtree'
создать KDTreeSearcher
объект. Значением по умолчанию является 'kdtree'
если K ≤ 10, обучающие данные не разреженны, и метрика расстояния является Евклидовым, городским кварталом, Чебычевым или Минковским.
выращивает d-дерево K по умолчанию (Mdl
= KDTreeSearcher(X
)Mdl
) использование n-by-K числовая матрица обучающих данных (X
).
задает дополнительные опции с помощью одного или нескольких аргументов пары "имя-значение". Можно задать максимальное количество точек данных в каждой вершине (то есть, размер блока) и метрика расстояния, и установить метрический параметр расстояния (Mdl
= KDTreeSearcher(X
,Name,Value
)DistParameter
Свойство. Например, KDTreeSearcher(X,'Distance','minkowski','BucketSize',10)
задает, чтобы использовать расстояние Минковскего при поиске самых близких соседей и использовать 10
для размера блока. Задавать DistParameter
, используйте P
аргумент пары "имя-значение".
knnsearch | Найдите k - самые близкие соседи, использующие объект искателя |
rangesearch | Найдите всех соседей на заданном расстоянии с помощью объекта искателя |