Melhor modelo e seus hiperparâmetros
Agora que montamos nosso validador cruzado, cv, podemos dizer ao Spark para pegar nossos dados, ajustar o algoritmo ALS e testar as diferentes combinações de valores de hiperparâmetros do nosso param_grid, para identificar quais valores geram o menor RMSE. Infelizmente, isso leva tempo demais para concluir aqui, mas, para sua referência, é assim que se faz:
# Ajusta o validador cruzado ao conjunto 'train'
model = cv.fit(train)
# Extrai o melhor modelo do objeto cv acima
best_model = model.bestModel
Esse código foi executado separadamente, e o best_model já foi identificado e salvo para você usar. Use os comandos fornecidos para extrair os parâmetros do modelo.
Este exercicio faz parte do curso
Construindo mecanismos de recomendação com PySpark
Instruções do exercicio
- Imprima
type(best_model)para confirmar que o modelo ALS construído a partir das nossas opções de hiperparâmetros foi realmente concluído. Aqui é necessário um comando de impressão para funcionar com as próximas instruções de impressão. - Extraia o
rankdebest_modelchamando o método.getRank()embest_model. - Extraia o
maxIterdebest_modelchamando o método.getMaxIter()embest_model. - Extraia o
regParamdebest_modelchamando o método.getRegParam()embest_model.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# Print best_model
print(____)
# Complete the code below to extract the ALS model parameters
print("**Best Model**")
# Print "Rank"
print(" Rank:", best_model.get____())
# Print "MaxIter"
print(" MaxIter:", best_model.get____())
# Print "RegParam"
print(" RegParam:", best_model.get____())