K-Nearest Neighbor (он же KNN) — это алгоритм классификации.
По сути, вы берете обучающую группу из N элементов и классифицируете их. То, как вы их классифицируете, полностью зависит от ваших данных и от того, что вы считаете важными классификационными характеристиками этих данных. В вашем примере это может быть категория сообщений, кто разместил элемент, кто проголосовал за элемент и т. д.
Как только эти «обучающие» данные были классифицированы, вы можете оценить «неизвестную» точку данных. Вы определяете «класс» неизвестного, находя ближайших к нему соседей в системе классификации. Если вы определяете классификацию по трем ближайшим соседям, ее можно назвать алгоритмом 3 ближайших соседей.
То, как вы определяете «ближайшего соседа», сильно зависит от того, как вы классифицируете свои данные. Очень часто данные отображаются в N-мерном пространстве, где N представляет собой количество различных классификационных характеристик, которые вы изучаете.
Простой пример:
Допустим, у вас есть координаты долготы/широты места, которое может находиться на любом участке суши в любой точке мира. Давайте также предположим, что у вас нет карты, но у вас есть очень большой набор данных, который дает вам долготу и широту многих разных городов мира, и вы также знаете, в какой стране находятся эти города. города находятся в.
Если бы я спросил вас, в какой стране находится случайная точка долготы и широты, смогли бы вы это выяснить? Что бы вы сделали, чтобы понять это?
Данные долготы/широты естественным образом отображаются в виде графика X,Y. Итак, если вы нанесете на этот график все города, а затем неизвестную точку, как вы определите страну неизвестного? Вы можете начать рисовать круги вокруг этой точки, увеличиваясь до тех пор, пока круг не охватит 10 ближайших городов на графике. Теперь вы можете посмотреть на страны этих 10 городов. Если все 10 находятся в США, то можно с достаточной долей уверенности сказать, что ваша неизвестная точка тоже находится в США. Но если только 6 городов в США, а остальные 4 в Канаде, можете ли вы сказать, где находится ваша неизвестная точка? Вы все еще можете предположить, США, но с меньшей уверенностью.
Самая сложная часть KNN — выяснить, как классифицировать ваши данные таким образом, чтобы вы могли определить «соседей» аналогичного качества и расстояние до этих соседей.
person
Matt
schedule
01.06.2011