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

Автоматизація вибору гіперпараметрів

Знаходження найкращого гіперпараметра без написання сотень рядків коду для сотень моделей — це важливе підвищення ефективності, яке суттєво допоможе вам у подальшому створенні моделей машинного навчання.

Важливим гіперпараметром для алгоритму GBM є швидкість навчання (learning rate). Але яка швидкість навчання найкраща для цієї задачі? Напишіть цикл, який перебере кілька варіантів, збере результати та перегляне їх — так ви зможете знайти оптимальне значення.

Можливі значення швидкості навчання для перевірки: 0.001, 0.01, 0.05, 0.1, 0.2 та 0.5

У вашому розпорядженні будуть набори даних X_train, X_test, y_train і y_test, а GradientBoostingClassifier уже імпортовано для вас.

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

Тюнінг гіперпараметрів у Python

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

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

  • Створіть список learning_rates для швидкостей навчання та results_list для збереження значень точності ваших передбачень.
  • Напишіть цикл, який створюватиме модель GBM для кожної зазначеної швидкості навчання та формуватиме передбачення для кожної моделі.
  • Збережіть пару «швидкість навчання — точність» у results_list.
  • Перетворіть список результатів на DataFrame і виведіть його.

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

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

# Set the learning rates & results storage
learning_rates = ____
results_list = ____

# Create the for loop to evaluate model predictions for each learning rate
for learning_rate in ____:
    model = ____(learning_rate=____)
    predictions = ____.fit(____, ____).predict(____)
    # Save the learning rate and accuracy score
    results_list.append([____, accuracy_score(y_test, ____)])

# Gather everything into a DataFrame
results_df = pd.DataFrame(____, columns=['learning_rate', 'accuracy'])
print(results_df)
Редагувати та запускати код