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 exercicio faz parte do curso
Prevendo CTR com Machine Learning em Python
Instruções do exercicio
- 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.
exercicio interativo prático
Tente este exercicio 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.____)