Desafio: Escolhendo o Melhor Valor de K
Como mostrado nos capítulos anteriores, as previsões do modelo podem variar dependendo do valor de k (o número de vizinhos). Ao construir um modelo k-NN, é importante escolher o valor de k que proporciona o melhor desempenho.
Uma abordagem comum é utilizar a validação cruzada para avaliar o desempenho do modelo. É possível executar um loop e calcular as pontuações de validação cruzada para uma faixa de valores de k, selecionando aquele com a maior pontuação. Este é o método mais amplamente utilizado.
Para realizar esse procedimento, o sklearn oferece uma ferramenta conveniente: a classe GridSearchCV.
O parâmetro param_grid recebe um dicionário onde as chaves são os nomes dos parâmetros e os valores são listas de opções a serem testadas. Por exemplo, para testar valores de 1 a 99 para n_neighbors, pode-se escrever:
param_grid = {'n_neighbors': range(1, 100)}
Ao chamar o método .fit(X, y) no objeto GridSearchCV, será realizada uma busca na grade de parâmetros para encontrar os melhores parâmetros e, em seguida, reajustar o modelo em todo o conjunto de dados utilizando esses melhores parâmetros.
É possível acessar a melhor pontuação utilizando o atributo .best_score_ e fazer previsões com o modelo otimizado usando o método .predict(). Da mesma forma, pode-se recuperar o melhor modelo em si utilizando o atributo .best_estimator_.
Swipe to start coding
Você recebe o conjunto de dados de avaliações de Star Wars armazenado como um DataFrame na variável df.
- Inicialize
param_gridcomo um dicionário contendo o parâmetron_neighborscom os valores[3, 9, 18, 27]. - Crie um objeto
GridSearchCVutilizandoparam_gridcom validação cruzada de 4 divisões, treine-o e armazene-o na variávelgrid_search. - Recupere o melhor modelo de
grid_searche armazene-o na variávelbest_model. - Recupere a pontuação do melhor modelo e armazene-a na variável
best_score.
Solução
Obrigado pelo seu feedback!
single
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Awesome!
Completion rate improved to 4.17
Desafio: Escolhendo o Melhor Valor de K
Deslize para mostrar o menu
Como mostrado nos capítulos anteriores, as previsões do modelo podem variar dependendo do valor de k (o número de vizinhos). Ao construir um modelo k-NN, é importante escolher o valor de k que proporciona o melhor desempenho.
Uma abordagem comum é utilizar a validação cruzada para avaliar o desempenho do modelo. É possível executar um loop e calcular as pontuações de validação cruzada para uma faixa de valores de k, selecionando aquele com a maior pontuação. Este é o método mais amplamente utilizado.
Para realizar esse procedimento, o sklearn oferece uma ferramenta conveniente: a classe GridSearchCV.
O parâmetro param_grid recebe um dicionário onde as chaves são os nomes dos parâmetros e os valores são listas de opções a serem testadas. Por exemplo, para testar valores de 1 a 99 para n_neighbors, pode-se escrever:
param_grid = {'n_neighbors': range(1, 100)}
Ao chamar o método .fit(X, y) no objeto GridSearchCV, será realizada uma busca na grade de parâmetros para encontrar os melhores parâmetros e, em seguida, reajustar o modelo em todo o conjunto de dados utilizando esses melhores parâmetros.
É possível acessar a melhor pontuação utilizando o atributo .best_score_ e fazer previsões com o modelo otimizado usando o método .predict(). Da mesma forma, pode-se recuperar o melhor modelo em si utilizando o atributo .best_estimator_.
Swipe to start coding
Você recebe o conjunto de dados de avaliações de Star Wars armazenado como um DataFrame na variável df.
- Inicialize
param_gridcomo um dicionário contendo o parâmetron_neighborscom os valores[3, 9, 18, 27]. - Crie um objeto
GridSearchCVutilizandoparam_gridcom validação cruzada de 4 divisões, treine-o e armazene-o na variávelgrid_search. - Recupere o melhor modelo de
grid_searche armazene-o na variávelbest_model. - Recupere a pontuação do melhor modelo e armazene-a na variável
best_score.
Solução
Obrigado pelo seu feedback!
single