Ваш первый пайплайн — снова!
В стартапе по диагностике аритмии приближается ежемесячный обзор, и опытный Python-разработчик будет изучать ваш код. Вы решаете привести его в порядок: следуете лучшим практикам и заменяете скрипт для отбора признаков и классификации с помощью случайного леса на пайплайн. В вашем распоряжении — обучающая выборка 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(___, ___).___)