Distributions
Distribuições de Dados e Visualização
Antes de construir qualquer modelo, você deve entender seus dados visualmente. A distribuição das features informa qual pré-processamento é necessário, quais problemas esperar e se os dados podem suportar uma determinada tarefa.
Por que a Distribuição Importa
O mesmo algoritmo aplicado à mesma tarefa pode falhar ou ter sucesso dependendo da distribuição dos dados. Um classificador linear funciona perfeitamente em dados linearmente separáveis, mas não consegue aprender XOR. A normalização é crítica para aprendizado baseado em gradiente, mas irrelevante para árvores de decisão.
O Problema do Salmão vs Robalo
Um dataset introdutório clássico: classificar peixes em uma esteira como "salmão" ou "robalo" com base em dois sensores — tamanho (cm) e brilho (0–10).
Visão unidimensional: cada feature individualmente. Note que nem o tamanho sozinho nem o brilho sozinho separa perfeitamente as espécies.
Visão bidimensional: combinar ambas as features permite que uma fronteira de decisão linear separe a maioria das amostras.
Lição
Mais features = espaço de features mais rico = maior potencial de separação. Mas adicionar features irrelevantes pode prejudicar. A seleção de features importa.
O Dataset Iris
UCI Machine Learning Repository: introduzido por Ronald A. Fisher em 1936, este dataset de 150 amostras de três espécies de Íris é um benchmark fundamental de AM.
| Feature | Unidade | Intervalo |
|---|---|---|
| Comprimento da sépala | cm | 4,3–7,9 |
| Largura da sépala | cm | 2,0–4,4 |
| Comprimento da pétala | cm | 1,0–6,9 |
| Largura da pétala | cm | 0,1–2,5 |
import pandas as pd
from sklearn.datasets import load_iris
# Carregar o conjunto de dados Iris
iris = load_iris()
# Transforma em DataFrame
df = pd.DataFrame(
data=iris.data,
columns=['sepal_l', 'sepal_w', 'petal_l', 'petal_w']
)
df['class'] = iris.target_names[iris.target]
# Imprime os dados
print(df)
Output:
sepal_l sepal_w petal_l petal_w class
0 5.1 3.5 1.4 0.2 setosa
1 4.9 3.0 1.4 0.2 setosa
2 4.7 3.2 1.3 0.2 setosa
3 4.6 3.1 1.5 0.2 setosa
4 5.0 3.6 1.4 0.2 setosa
.. ... ... ... ... ...
145 6.7 3.0 5.2 2.3 virginica
146 6.3 2.5 5.0 1.9 virginica
147 6.5 3.0 5.2 2.0 virginica
148 6.2 3.4 5.4 2.3 virginica
149 5.9 3.0 5.1 1.8 virginica
[150 rows x 5 columns]
Pairplot do dataset Iris. Note: comprimento da pétala vs. largura da pétala separa claramente as três espécies. Comprimento da sépala vs. largura da sépala mostra sobreposição — nem todos os pares de features são igualmente discriminativos.
Formas Comuns de Distribuição
