Decision Tree
Uma árvore de decisão faz previsões por meio de uma sequência de perguntas sobre características aprendidas com os dados. Veja como as divisões são escolhidas, como a poda reduz o sobreajuste e confira o código.
Uma árvore de decisão é um modelo de aprendizado supervisionado que faz previsões por meio de uma sequência de perguntas de sim ou não sobre os atributos de uma entrada, como "A renda é superior a US$ 50.000?", seguindo as respostas da raiz até uma folha que contém a previsão. Árvores de classificação preveem uma classe em cada folha, e árvores de regressão preveem um número. Cada previsão é uma cadeia de regras legível, o que torna as árvores uma ferramenta padrão para IA explicável (XAI); elas também são os blocos de construção de florestas aleatórias e ensembles com boosting de gradiente, que ainda superam o aprendizado profundo em conjuntos de dados tabulares de tamanho médio. O algoritmo CART de Breiman, Friedman, Olshen e Stone (1984), assim como o ID3 (1986) e o C4.5 (1993) de Ross Quinlan, estabeleceram como as árvores são aprendidas a partir dos dados.
Como uma árvore de decisão é construída#
As árvores crescem de cima para baixo por particionamento recursivo. Em cada nó, o algoritmo avalia divisões candidatas — cada uma consiste em um atributo e um limiar para atributos numéricos —, mantém a divisão que torna os dois nós filhos mais homogêneos e repete a busca em cada filho. Árvores de classificação medem a homogeneidade com a impureza de Gini, a probabilidade de rotular incorretamente uma amostra aleatória do nó se os rótulos fossem atribuídos aleatoriamente segundo as proporções das classes do nó, ou com a entropia, cuja redução é chamada de ganho de informação. Árvores de regressão escolhem a divisão que mais reduz o erro quadrático, e cada folha prevê a média dos valores-alvo de suas amostras de treinamento. O crescimento para quando um nó é puro, contém poucas amostras ou atinge uma profundidade máxima. Cada divisão olha apenas um passo à frente, então essa busca gulosa constrói rapidamente uma boa árvore, enquanto encontrar a árvore comprovadamente ótima é NP-hard.
O DecisionTreeClassifier do scikit-learn implementa uma versão otimizada do CART. Este exemplo desenvolve uma árvore de profundidade 2 com o conjunto de dados de flores iris e mostra as regras aprendidas:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier, export_text
iris = load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, random_state=42)
# A depth limit keeps the tree small enough to read and less prone to overfitting
clf = DecisionTreeClassifier(max_depth=2, random_state=42)
clf.fit(X_train, y_train)
print(export_text(clf, feature_names=iris.feature_names))
print(f"Test accuracy: {clf.score(X_test, y_test):.2f}")A árvore usa apenas o comprimento da pétala: flores com comprimento igual ou inferior a 2.45 cm são setosas (classe 0), e um segundo limiar em 4.75 cm separa as versicolores (classe 1) das virginicas (classe 2). Essas regras classificam corretamente 97% das flores reservadas para teste.
Toda divisão é uma regra de limiar desse tipo, que uma árvore aprende a partir dos dados e que uma pessoa também pode definir manualmente. O monitor de exercícios AIGym do Ultralytics define manualmente duas dessas regras para a saída de estimativa de pose do YOLO26: rotula um quadro como "para cima" quando o ângulo do cotovelo, calculado com os pontos-chave do ombro, cotovelo e punho, excede 145°, e como "para baixo" quando fica abaixo de 90°; conta uma repetição a cada mudança de "para cima" para "para baixo".
Sobreajuste e poda#
Uma árvore que cresce até todas as folhas serem puras memoriza seus dados de treinamento, incluindo o ruído — um caso clássico de sobreajuste. A pré-poda interrompe o crescimento antecipadamente com limites, como uma profundidade máxima ou um número mínimo de amostras por folha. A pós-poda desenvolve a árvore completa e depois remove os ramos que pouco acrescentam; o scikit-learn implementa a poda por complexidade-custo mínima com o parâmetro ccp_alpha, em que valores maiores podam mais. Os dois tipos de limites são hiperparâmetros escolhidos por validação cruzada.
Mesmo uma árvore podada tem alta variância: uma pequena alteração nos dados de treinamento pode mudar a divisão do topo e, com ela, todas as divisões abaixo. Ensembles resolvem isso combinando muitas árvores: calculam a média de árvores treinadas com amostras bootstrap, como fazem as florestas aleatórias, ou adicionam árvores uma a uma para corrigir os erros das anteriores, como faz o boosting de gradiente.
Pontos fortes e limitações#
As árvores lidam com atributos numéricos e categóricos em conjunto, não precisam de normalização de atributos, capturam interações e efeitos não lineares sem engenharia de atributos manual e fazem previsões com poucas comparações. Suas divisões são alinhadas aos eixos; assim, um limite diagonal, como "gastos superiores à renda", vira uma escada com muitas divisões, a menos que se adicione um atributo de proporção. Árvores de regressão preveem um valor constante em cada folha e, ao contrário da regressão linear, não conseguem extrapolar uma tendência para além do intervalo dos dados de treinamento.
Aplicações#
- Decisões de crédito: Credores usam árvores pouco profundas e sistemas de pontuação baseados em árvores para classificar solicitações por risco, e cada decisão pode ser rastreada até os limiares de renda, histórico de crédito e dívidas que a determinaram.
- Triagem clínica: Regras clínicas de decisão estruturadas como árvores encaminham pacientes com base em sinais vitais e sintomas, por exemplo, para decidir se precisam de exames de imagem imediatos.
- Cancelamento de clientes: Árvores dividem clientes por uso, tempo de relacionamento e histórico de suporte em segmentos com risco alto ou baixo de cancelamento, e os caminhos descrevem cada segmento em termos simples.
- Manutenção preditiva: Árvores com boosting de gradiente aplicadas a atributos de vibração, temperatura e tempo de operação estimam quais máquinas provavelmente apresentarão falhas antes da próxima manutenção.
Árvores de decisão e termos relacionados#
- Florestas aleatórias: Calculam a média de muitas árvores treinadas com amostras bootstrap e subconjuntos aleatórios de atributos, trocando a facilidade de interpretação de uma única árvore por maior precisão e estabilidade.
- XGBoost, LightGBM e CatBoost: Bibliotecas de boosting de gradiente que adicionam árvores uma a uma para corrigir os erros das árvores anteriores; o LightGBM foi desenvolvido para ter velocidade em grandes conjuntos de dados, e o CatBoost, para lidar nativamente com atributos categóricos.
- Aprendizado profundo: Redes neurais aprendem atributos a partir de imagens, áudio e texto brutos, enquanto as árvores dividem os dados com base em atributos que já existem como colunas de uma tabela.
- Árvores de análise de decisão: Em pesquisa operacional e planejamento empresarial, árvore de decisão também é um diagrama que um analista desenha manualmente, com nós de decisão, nós de acaso e resultados, para comparar opções pelo valor esperado; ela é construída com probabilidades estimadas, em vez de ser aprendida a partir de dados de treinamento.










