Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
2
respostas

Faça como eu fiz: aplicando técnicas de aprendizado não supervisionado

1. Carregando o dataset

import pandas as pd
from sklearn.datasets import load_iris

iris = load_iris()

df = pd.DataFrame(
    iris.data,
    columns=iris.feature_names
)

print(df.head())

2. Aplicando o K-Means

Utilizei o algoritmo K Means para agrupar as flores em três grupos.

from sklearn.cluster import KMeans

kmeans = KMeans(
    n_clusters=3,
    random_state=42
)

grupos = kmeans.fit_predict(iris.data)

df["grupo_kmeans"] = grupos

print(df.head())

3. Aplicando o Hierarchical Clustering

Depois, utilizei o agrupamento hierárquico para comparar os resultados.

from sklearn.cluster import AgglomerativeClustering

hierarquico = AgglomerativeClustering(
    n_clusters=3
)

df["grupo_hierarquico"] = hierarquico.fit_predict(
    iris.data
)

print(df.head())

4. Reduzindo a dimensionalidade com PCA

Por fim, apliquei o PCA para reduzir as quatro características originais para duas dimensões.

from sklearn.decomposition import PCA

pca = PCA(n_components=2)

componentes = pca.fit_transform(
    iris.data
)

df["PCA_1"] = componentes[:,0]

df["PCA_2"] = componentes[:,1]

print(df.head())
2 respostas

Olá, Estudante! Como vai?

Parabéns pela resolução da atividade!

Vi que você explorou o K-Means para agrupamento com Python, utilizou muito bem o Hierarchical Clustering para comparação e ainda compreendeu a importância do PCA para redução de dimensionalidade.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Uma dica interessante para o futuro é visualizar os clusters após aplicar o PCA. Assim:

import matplotlib.pyplot as plt

plt.scatter(df["PCA_1"], df["PCA_2"], c=df["grupo_kmeans"])
plt.xlabel("PCA 1")
plt.ylabel("PCA 2")
plt.title("Clusters com K-Means após PCA")
plt.show()

Isso faz a projeção dos grupos em duas dimensões, facilitando a interpretação dos resultados.

Se quiser aprofundar ainda mais, algumas boas práticas são:

  • Escolha do número de clusters: utilize métricas como o método do cotovelo ou silhouette score.
  • Normalização dos dados: garante que variáveis em diferentes escalas não distorçam os agrupamentos.
  • Interpretação dos componentes principais: analise a variância explicada para entender o quanto da informação original foi preservada.

Ah, uma pergunta: você acha mais interessante visualizar os clusters com PCA para interpretação rápida ou prefere analisar métricas quantitativas como silhouette score para validar os grupos?

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!
solução!

Obrigado pelo feedback e pelas dicas.