Janaina, uma analista da ALEGO, desenvolveu o programa Pytho...

Próximas questões
Com base no mesmo assunto
Q3880233 Programação
Janaina, uma analista da ALEGO, desenvolveu o programa Python (versão 3) que utiliza as bibliotecas numpy (2.0.2) e scikit-learn (versão 1.6.1) para realizar uma análise de agrupamentos. Analise o código a seguir.
  Imagem associada para resolução da questão

O resultado impresso é igual a
Alternativas

Comentários

Veja os comentários dos nossos alunos

Alguém poderia me explicar o motivo do gabarito não ser a A?

Para resolver você precisa conhecer o cerne do algoritmo K-means. O pulo do gato da questão está em encontrar os centróides:

Cluster 1:(1,2)(1,4)(1,0)

Centróide:( 1,2) <-- média ([1+1+1]/3, [2+4+0]/3)

Cluster 2: (10,2)(10,4)(10,0)

Centróide: (10,2) <-- média ([10+10+10]/3, [2+4+0]/3)

Análise passo a passo da questão de KMeans do scikit-learn:

1. Entendendo os Dados de Entrada (X)

O conjunto de dados X possui 6 pontos bidimensionais:

* Grupo 1: [1, 2], [1, 4], [1, 0] (todos com coordenada x = 1)

* Grupo 2: [10, 2], [10, 4], [10, 0] (todos com coordenada x = 10)

2. Agrupamento em k=2 clusters

Ao aplicar o algoritmo KMeans(n_clusters=2, random_state=0):

* Os pontos se dividem claramente em dois grupos distintos com base na distância euclidiana ao longo do eixo x.

* Cluster A: constituído por [1, 2], [1, 4], [1, 0].

* Cluster B: constituído por [10, 2], [10, 4], [10, 0].

3. Cálculo dos Centroides (kmeans.cluster_centers_)

O centroide de cada cluster é a média aritmética das coordenadas dos seus pontos componentes:

* Média do Cluster 1:

* Média do Cluster 2:

Portanto, a matriz final de centroides retornada por kmeans.cluster_centers_ é:

Gabarito Correto

Alternativa A:

array([[ 1., 2.],

[10., 2.]])

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo