Busca em grade para MLP
A otimização de hiperparâmetros pode ser feita no sklearn fornecendo vários parâmetros de entrada, cada um dos quais pode ser gerado usando funções do numpy. Um método de ajuste que avalia exaustivamente todas as combinações de hiperparâmetros especificadas via param_grid é a busca em grade (grid search). Neste exercício, você vai usar a busca em grade para avaliar os hiperparâmetros de um classificador MLP.
X_train, y_train, X_test, y_test estão disponíveis no seu ambiente, e os atributos já foram padronizados. pandas como pd e numpy como np também estão disponíveis no seu ambiente.
Este exercício faz parte do curso
Prevendo CTR com Machine Learning em Python
Instruções do exercício
- Crie a lista de valores
[10, 20]paramax_itere a lista de valores[(8, ), (16, )]parahidden_layer_sizes. - Configure uma busca em grade com 4 tarefas usando
n_jobspara iterar por todas as combinações de hiperparâmetros. - Imprima a melhor pontuação de AUC e o melhor estimador que levou a essa pontuação.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Create list of hyperparameters
max_iter = [____, ____]
hidden_layer_sizes = [____, ____]
param_grid = {'max_iter': max_iter, 'hidden_layer_sizes': hidden_layer_sizes}
# Use Grid search CV to find best parameters using 4 jobs
mlp = ____
clf = ____(estimator = mlp, param_grid = ____,
scoring = 'roc_auc', ____ = 4)
clf.fit(X_train, y_train)
print("Best Score: ")
print(clf.____)
print("Best Estimator: ")
print(clf.____)