Гиперпараметры KNN
Чтобы закрепить концепции из предыдущего упражнения, полезно применить их к новому алгоритму. Алгоритм k ближайших соседей уже не так широко используется, как прежде, однако он по-прежнему может быть отличным выбором для данных, в которых встречаются группы схожих наблюдений. Возможно, именно так обстоит дело с нашими данными о владельцах кредитных карт?
В этом упражнении вы проверите несколько различных значений одного из ключевых гиперпараметров алгоритма KNN и сравните результаты.
Вам будут доступны следующие объекты:
- DataFrames
X_train,X_test,y_train,y_test
Это упражнение является частью курса
Подбор гиперпараметров в Python
Инструкции к упражнению
- Создайте оценщик KNN для следующих значений
n_neighbors: [5, 10, 20]. - Обучите каждую модель на обучающих данных и получите предсказания.
- Вычислите точность для каждой модели и выведите результаты.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Build a knn estimator for each value of n_neighbours
knn_5 = KNeighborsClassifier(n_neighbors=____)
knn_10 = KNeighborsClassifier(n_neighbors=____)
knn_20 = KNeighborsClassifier(n_neighbors=____)
# Fit each to the training data & produce predictions
knn_5_predictions = knn_5.fit(_____, _____).predict(_____)
knn_10_predictions = knn_10.fit(_____, _____).predict(_____)
knn_20_predictions = knn_20.fit(_____, _____).predict(_____)
# Get an accuracy score for each of the models
knn_5_accuracy = accuracy_score(y_test, _____)
knn_10_accuracy = accuracy_score(y_test, _____)
knn_20_accuracy = accuracy_score(y_test, _____)
print("The accuracy of 5, 10, 20 neighbours was {}, {}, {}".format(_____, _____, _____))