Bom dia! Estou fazendo o gráfico de silhueta para o MeanShift. Na minha execução obtive um gráfico distinto do gráfico do professor, é normal ou fiz algo errado?
Bom dia! Estou fazendo o gráfico de silhueta para o MeanShift. Na minha execução obtive um gráfico distinto do gráfico do professor, é normal ou fiz algo errado?
Olá Rayssa, tudo bem? Espero que sim!
Desculpe pela demora em retornar.
Não ocorreu nenhum erro, isso é completamente normal.
O MeanShift aceita um parâmetro bandwidth, conhecido como largura de banda. Para estimar essa largura de banda foi utilizada um método estimate_bandwidth
que depende de certa aleatoriedade em seus cálculos. Devido a isso, cada vez que for rodar o código de estimativa da largura de banda poderá encontrar resultados diferentes.
Logo o gráfico de silhueta se mostrará diferente a cada execução do código, por existir esse fator aleatório no processo.
Você pode utilizar um parâmetro random_state da função estimate_bandwidth
para que os resultados sempre sejam gerados da mesma forma em todas as execuções. Para ter mais detalhes, cheque a documentação da função estimate_bandwidth.
Outra forma de fixar os resultados é definindo uma SEED. É muito comum a utilização do random_state e SEED fixos para algoritmos que dependem de aleatoriedade. Para mais detalhes sobre o SEED, confira os dois tópicos a seguir:
Espero que tenha tirado sua dúvida.
Estou à disposição. Bons estudos!