Некоторые методы поиска k ближайших чисел к заданному значению:
- Метод k-ближайших соседей (k Nearest Neighbors, или kNN). scikit-learn.ru proglib.io Алгоритм машинного обучения с учителем, который используется для решения задач классификации и регрессии. proglib.io Суть метода в том, чтобы найти заранее определённое количество обучающих образцов, наиболее близких по расстоянию к новой точке, и предсказать метку на их основе. scikit-learn.ru
Порядок действий метода: proglib.io
- Загрузить данные. proglib.io
- Инициализировать k путём выбора оптимального числа соседей. proglib.io
- Для каждого образца в данных вычислить расстояние между примером запроса и текущим примером из данных. proglib.io
- Добавить индекс образца в упорядоченную коллекцию, как и его расстояние. proglib.io
- Отсортировать упорядоченную коллекцию расстояний и индексов от наименьшего до наибольшего, в порядке возрастания. proglib.io
- Выбрать первые k записей из отсортированной коллекции. proglib.io
- Взять метки выбранных k записей. proglib.io
- Если стоит задача регрессии, вернуть среднее значение выбранных ранее k меток. proglib.io
- Если задача классификации, вернуть наиболее часто встречающееся значение выбранных ранее меток k. proglib.io
Также для поиска k ближайших чисел к заданному значению можно использовать локально-чувствительное хэширование. deepmachinelearning.ru При этом методе строится хэш-функция, отображающая метрически близкие объекты в одинаковые значения. deepmachinelearning.ru Затем, отобразив целевой объект в какое-то значение хэш-функции, можно сразу найти похожие объекты. deepmachinelearning.ru