Aprendizado não supervisionado
Entenda técnicas de agrupamento, como K-Means e agrupamento hierárquico
Aprendizado não supervisionado é uma aula grátis de Python For Kids no CoddyKit. Esta é a aula 3 de 6. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Python For Kids, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Python For Kids inclui 6 aulas no total.
Aprendizado Não Supervisionado
O aprendizado não supervisionado é um tipo de aprendizado de máquina no qual o algoritmo aprende padrões a partir de dados não rotulados. Ele é frequentemente usado para agrupamento, redução de dimensionalidade e detecção de anomalias.
Nesta lição, você explorará técnicas de agrupamento, como K-Means e agrupamento hierárquico.

O Que é Aprendizado Não Supervisionado?
O aprendizado não supervisionado envolve analisar e agrupar dados sem rótulos predefinidos. Seu objetivo é identificar estruturas ou padrões ocultos nos dados.
As principais tarefas incluem:
- Agrupamento: Agrupamento de pontos de dados semelhantes.
- Redução de Dimensionalidade: Redução do número de características, mantendo as informações importantes.
Agrupamento K-Means
O K-Means é um algoritmo popular de agrupamento que particiona os dados em K grupos com base na similaridade das características. Vamos ver como ele funciona:
# Example: K-Means Clustering
from sklearn.cluster import KMeans
import numpy as np
# Sample data
X = np.array([[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]])
kmeans = KMeans(n_clusters=2, random_state=0)
kmeans.fit(X)
print("Cluster Centers:", kmeans.cluster_centers_)
print("Labels:", kmeans.labels_)Agrupamento Hierárquico
O agrupamento hierárquico constrói uma estrutura semelhante a uma árvore (dendrograma) para agrupar pontos de dados semelhantes. Ele não exige um número predefinido de grupos.
# Example: Hierarchical Clustering
from scipy.cluster.hierarchy import dendrogram, linkage
import matplotlib.pyplot as plt
# Sample data
X = [[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]]
linked = linkage(X, 'single')
dendrogram(linked)
plt.show()Redução de Dimensionalidade
A redução de dimensionalidade simplifica os dados ao reduzir o número de características, mantendo as informações importantes. A Análise de Componentes Principais (PCA) é uma técnica comum para essa tarefa.
# Example: PCA
from sklearn.decomposition import PCA
import numpy as np
# Sample data
X = np.array([[1, 2], [3, 4], [5, 6], [7, 8]])
pca = PCA(n_components=1)
X_reduced = pca.fit_transform(X)
print("Reduced Data:", X_reduced)Aplicações do Aprendizado Não Supervisionado
O aprendizado não supervisionado é usado em:
- Segmentação de Clientes: Agrupamento de clientes com base em seu comportamento.
- Detecção de Anomalias: Identificação de padrões incomuns nos dados.
- Compressão de Imagens: Redução do tamanho das imagens, mantendo sua qualidade.
Visualizando Grupos
Visualizar os grupos ajuda a compreender o agrupamento dos pontos de dados. Matplotlib e Seaborn são úteis para essa finalidade:
# Example: Visualizing clusters
import matplotlib.pyplot as plt
# Sample data and labels
X = [[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]]
labels = [0, 0, 0, 1, 1, 1]
for i in range(len(X)):
plt.scatter(X[i][0], X[i][1], c='r' if labels[i] == 0 else 'b')
plt.show()Desafios do Aprendizado Não Supervisionado
O aprendizado não supervisionado apresenta vários desafios, incluindo:
- Definição do Número de Grupos: O K-Means exige que você especifique antecipadamente o número de grupos.
- Interpretabilidade: Os grupos nem sempre têm significados claros.
- Escalabilidade: O processamento de grandes conjuntos de dados pode exigir muitos recursos computacionais.
Erros Comuns no Aprendizado Não Supervisionado
Veja alguns erros que devem ser evitados:
- Escolher o número errado de grupos no K-Means.
- Deixar de pré-processar os dados, como ao escalonar as características.
- Interpretar os grupos além do que os dados permitem sem validação.
O Que Aprendemos?
Nesta lição, você aprendeu:
- Os fundamentos do aprendizado não supervisionado e suas principais tarefas.
- Como implementar o K-Means e o agrupamento hierárquico.
- O conceito de redução de dimensionalidade usando PCA.
- Aplicações, desafios e erros comuns no aprendizado não supervisionado.
Excelente trabalho! Vamos para o próximo tópico.

Perguntas Frequentes
A aula “Aprendizado não supervisionado” é grátis?
Sim — o texto completo de “Aprendizado não supervisionado” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Python For Kids, atualize para CoddyKit PRO. O curso de Python For Kids inclui 6 aulas no total.
O que vou aprender em “Aprendizado não supervisionado”?
Entenda técnicas de agrupamento, como K-Means e agrupamento hierárquico Você pratica Python For Kids com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Python For Kids?
Nenhuma experiência prévia é necessária. Python For Kids no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 6.
Quanto tempo leva a aula “Aprendizado não supervisionado”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Python For Kids?
Sim. Cada aula de Python For Kids inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Introdução ao aprendizado de máquina
- Aprendizado supervisionado com Scikit-Learn
- Aprendizado não supervisionado
- Engenharia e seleção de atributos
- Introdução às redes neurais
- Introdução ao TensorFlow e ao Keras