Встречается на собеседованиях • сегодня
Что такое KNN
KNN (k-Nearest Neighbors) — алгоритм классификации и регрессии, основанный на поиске k ближайших соседей к новой точке данных. При классификации класс определяется большинством голосов среди соседей, при регрессии — средним значением их целевых переменных.
Ключевые моменты:
- Метрика расстояния: Обычно Евклидово, но может быть Манхэттен, косинусное и др.
- Выбор k: Малое k → шум чувствителен, большое k → сглаживание границ. Оптимальное k подбирают через кросс-валидацию.
- Масштабирование признаков: Обязательно, так как алгоритм чувствителен к масштабу.
Пример с кодом (Python, scikit-learn):
python
from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
# Данные
X, y = ... # features и target
X_train, X_test, y_train, y_test = train_test_split(X, y)
# Масштабирование
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)
# Обучение
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train_scaled, y_train)
print("Accuracy:", knn.score(X_test_scaled, y_test))Плюсы: Простота, интерпретируемость.
Минусы: Медленный на больших данных, чувствительность к выбросам и дисбалансу классов.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы