Comece agoraComece grátis

Busca aleatória

# Call GridSearchCV
grid_search = GridSearchCV(clf, param_grid)

# Fit the model
grid_search.fit(X, y)

No trecho de código acima, do exercício anterior, você deve ter notado que a primeira linha rodou rapidamente, enquanto a chamada de .fit() levou vários segundos para executar.

Isso acontece porque .fit() é o que de fato realiza a busca em grade e, no nosso caso, a grade tinha muitas combinações diferentes. Conforme a grade de hiperparâmetros fica maior, a busca em grade se torna mais lenta. Para contornar esse problema, em vez de testar todas as combinações possíveis, podemos pular aleatoriamente pela grade e experimentar diferentes combinações. Existe uma pequena chance de deixarmos passar a combinação ideal, mas economizamos muito tempo ou conseguimos ajustar mais hiperparâmetros no mesmo período.

No scikit-learn, você pode fazer isso usando RandomizedSearchCV. Ele tem a mesma API de GridSearchCV, com a diferença de que você precisa especificar uma distribuição de parâmetros da qual ele fará amostragens, em vez de valores específicos de hiperparâmetros. Vamos testar agora! A distribuição de parâmetros já foi configurada para você, junto com um classificador random forest chamado clf.

Este exercicio faz parte do curso

Análise de Marketing: Prevendo Churn de Clientes em Python

Ver curso

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# Import RandomizedSearchCV
Editar e Executar Código