1
resposta

Uso do fit_predict

Em aulas anteriores fizemos o codigo: kmeans = KMeans(n_clusters=5, n_init = 10, max_iter = 300) y_pred = kmeans.fit_predict(values) labels = kmeans.labels_

E na criação da função foi feito: kmeans = KMeans(n_clusters = n_clusters, n_init = 10, max_iter = 300) labels = kmeans.fit_predict(dataset)

Pra mim não ficou clara a diferença, porque em um caso o labels_ foi usado direto no kmeans e no outro foi utilizado o fit_predict?

1 resposta

Oii Vladimir! Tudo bem?

Agradeço por trazer sua dúvida para o fórum, que a propósito, é ótima! De fato o código pode gerar algumas dúvidas, já que conseguimos obter o mesmo retorno com ambos e suas diferenças são bem pequenas.

No código que está sendo usado o fit_predict, este método realiza o ajuste do modelo aos dados ( fit) e, também, a predição (predict) que prevê os rótulos em uma linha de código. Ele retorna os rótulos dos clusters para os dados fornecidos.

Já no outro código usando o atributo labels, este método ajusta o modelo aos dados (fit) e depois armazena os rótulos clusters. E o seu retorno será o mesmo que foi utilizado o fit_predict.

Em resumo, ambos os códigos ajustam o modelo aos dados e retorna os rótulos dos clusters. E sua diferença está em fit_predict que é uma abordagem mais concisa de fazer as duas operações de uma vez só. E ao usar fit e depois labels_ pode ser útil se você precisar realizar operações adicionais entre o ajuste do modelo e a obtenção dos rótulos.

Espero ter ajudado a esclarecer a dúvida. Conte sempre com a Alura para se desenvolver.

Bons estudos, Vladimir!