1
resposta

Ao realizar o fit dos dados num modelo, as labels dos grupos foram diferentes

Acompanhando a aula de Machine Learning de Algoritmos Não Supervisionados, fui executando em meu notebook do Jupyter os mesmos códigos disponibilizados pelo professor.

Até a entrada do Scaler, aonde realiza-se o fit_transform dos generos tive os mesmos resultados, contudo ao executar o fit do kMeans tive um resultado diferente do que o mostrado no vídeo quando ele executa pela primeira vez.

modelo = KMeans(n_clusters=3)
modelo.fit(generos_escalados)
print(f'Grupos {modelo.labels_}')

Meu resultado foi: Grupos [0 0 1 ... 1 0 1]

Resultado do prof no vídeo: Grupos [2 2 1 ... 1 2 1]

Após uma reexecução dos comandos, ele também obtém os resultados como os meus, mas se estamos usando os mesmos dados csv e executando o mesmo código, por que eles mudam? (de 2 2 1 para 0 0 1 etc)

1 resposta

Olá Bruna tudo bem com você??

Então o K-Means possuí uma certa aleatoriedade rodando longe dos nossos olhos, o famoso "Por debaixo dos panos". Isso ocorre por que, conforme a documentação técnica do SkLearn:

"O algoritmo KMeans agrupa dados tentando separar amostras em n grupos de igual variação, minimizando um critério conhecido como inércia ou soma dos quadrados dentro do cluster (veja abaixo). Este algoritmo requer que o número de clusters seja especificado. Ele se adapta bem a um grande número de amostras e foi usado em uma grande variedade de áreas de aplicação em muitos campos diferentes.

O algoritmo k-means divide um conjunto de amostras em clusters disjuntos, cada um deles descrito pela média das amostras no cluster. Os meios são comumente chamados de "centróides" do cluster; note que eles não são, em geral, pontos de, embora vivam no mesmo espaço."

Então é normal estes valores não baterem e cada vez que executados te entregarem um resultado distinto. Mas isso não inviabiliza o uso da biblioteca e nem significa que está errado.

Se a minha resposta te ajudou, fico muito feliz =D e peço que por favor encerre o Post marcando a dúvida como resolvida! Caso precise de ajuda é só voltar aqui e perguntar.

Obrigado

Victor Gonzalez

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software