KNN или K-Nearest Neighbors — это контролируемый алгоритм обучения, используемый преимущественно при решении задач классификации. Этот алгоритм обеспечивает наблюдение за различными центрами (центроидами), сравнивая расстояние между ними, причем для этого используются разные функции (как правило, речь идет о евклидовом расстоянии).