ПочатиПочніть безкоштовно

Переобладнання та недообладнання

Інтерпретація складності моделі — це чудовий спосіб оцінити якість контрольованого навчання. Ваша мета — побудувати модель, яка вміє виявляти зв'язок між ознаками та цільовою змінною і водночас добре узагальнює на нові спостереження.

Тренувальну та тестову вибірки створено з набору даних churn_df і попередньо завантажено як X_train, X_test, y_train та y_test.

Крім того, для вас вже імпортовано KNeighborsClassifier, а також numpy як np.

Ця вправа є частиною курсу

Кероване навчання зі scikit-learn

Переглянути курс

Інструкції до вправи

  • Створіть neighbors як масив numpy зі значеннями від 1 до включно 12.
  • Створіть екземпляр KNeighborsClassifier з кількістю сусідів, що дорівнює ітератору neighbor.
  • Навчіть модель на тренувальних даних.
  • Окремо обчисліть значення точності для тренувальної та тестової вибірок за допомогою методу .score() і запишіть результати у словники train_accuracies та test_accuracies відповідно, використовуючи ітератор neighbor як індекс.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Create neighbors
neighbors = np.arange(____, ____)
train_accuracies = {}
test_accuracies = {}

for neighbor in neighbors:
  
	# Set up a KNN Classifier
	knn = ____(____=____)
  
	# Fit the model
	knn.____(____, ____)
  
	# Compute accuracy
	train_accuracies[____] = knn.____(____, ____)
	test_accuracies[____] = knn.____(____, ____)
print(neighbors, '\n', train_accuracies, '\n', test_accuracies)
Редагувати та запускати код