Ваш перший конвеєр — знову!
Повернімося до стартапу з аритмії: наближається щомісячний огляд, і частиною цього буде рев'ю вашого коду експертним Python-розробником. Ви вирішуєте навести лад, дотримуючись найкращих практик, і замінити свій скрипт відбору ознак і класифікації випадковим лісом на конвеєр (pipeline). Ви використовуєте тренувальний набір даних X_train і y_train, а також кілька модулів: RandomForestClassifier, SelectKBest() та f_classif() для відбору ознак, а також GridSearchCV і Pipeline.
Ця вправа є частиною курсу
Проєктування робочих процесів машинного навчання в Python
Інструкції до вправи
- Створіть конвеєр з вибірником ознак, наданим у зразку коду, та класифікатором випадкового лісу. Назвіть перший крок
feature_selection. - Додайте дві пари ключ–значення в
params: одну для кількості ознакkу вибірнику зі значеннями 10 і 20, і одну дляn_estimatorsу лісі з можливими значеннями 2 і 5. - Ініціалізуйте об'єкт
GridSearchCVіз заданим конвеєром і сіткою параметрів. - Навчіть об'єкт на даних і виведіть найкращу комбінацію параметрів.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Create pipeline with feature selector and classifier
pipe = ___([
(___, SelectKBest(f_classif)),
('clf', ___(random_state=2))])
# Create a parameter grid
params = {
'feature_selection__k':___,
___:[2, 5]}
# Initialize the grid search object
grid_search = ___(___, ___=params)
# Fit it to the data and print the best value combination
print(grid_search.fit(___, ___).___)