Exercícios — Aula 10: Gradient Boosting e Otimização Numérica no Espaço de Funções
Supervised Learning
Contexto e notação
Nesta lista de exercícios, consideramos o problema de aprendizado supervisionado sob o paradigma de comitês aditivos sequenciais (Boosting) e otimização numérica no espaço de funções (ESL Cap. 10; Freund & Schapire, 1997; Friedman, 2001).
Seja \(Z = \{(\mathbf{x}_1, y_1), \dots, (\mathbf{x}_N, y_N)\}\) uma amostra de treinamento com \(N\) pares observados i.i.d., onde \(\mathbf{x}_i \in \mathbb{R}^p\) e \(y_i \in \mathcal{Y}\). Em classificação binária, convenciona-se \(y_i \in \{-1, +1\}\) (ou \(y_i \in \{0, 1\}\) sob perda logística); em regressão, \(y_i \in \mathbb{R}\).
Modelos Aditivos em Estágios (Forward Stagewise Additive Modeling - FSAM): Um modelo aditivo de \(M\) termos tem a forma: \[f_M(\mathbf{x}) = \sum_{m=1}^M \beta_m b(\mathbf{x}; \gamma_m)\] Em cada iteração \(m\), mantendo fixo o ensemble acumulado \(f_{m-1}(\mathbf{x})\), resolve-se o subproblema guloso: \[(\beta_m, \gamma_m) = \arg\min_{\beta, \gamma} \sum_{i=1}^N L(y_i, f_{m-1}(\mathbf{x}_i) + \beta b(\mathbf{x}_i; \gamma))\]
AdaBoost.M1 (Freund & Schapire, 1997): Para classificação binária com perda exponencial \(L(y, f) = e^{-yf}\), o FSAM coincide analiticamente com o AdaBoost. O classificador fraco \(h_m(\mathbf{x}) \in \{-1, +1\}\) minimiza a taxa de erro ponderada \(\text{err}_m = \frac{\sum_{i=1}^N w_i^{(m)} \mathbb{I}(y_i \neq h_m(\mathbf{x}_i))}{\sum_{i=1}^N w_i^{(m)}}\), o multiplicador da iteração é: \[\alpha_m = \frac{1}{2} \ln \left(\frac{1 - \text{err}_m}{\text{err}_m}\right)\] e os pesos das instâncias são atualizados recursivamente por \(w_i^{(m+1)} = w_i^{(m)} \exp(-\alpha_m y_i h_m(\mathbf{x}_i))\).
Gradient Tree Boosting (Friedman, 2001): Para uma função de perda diferenciável arbitrária \(L(y, f(\mathbf{x}))\), a descida de gradiente mais íngreme no espaço não paramétrico \(\mathbb{R}^N\) define os pseudo-resíduos para cada observação \(i = 1, \dots, N\): \[r_{im} = -\left[\frac{\partial L(y_i, f(\mathbf{x}_i))}{\partial f(\mathbf{x}_i)}\right]_{f(\mathbf{x}) = f_{m-1}(\mathbf{x})}\] Uma árvore de regressão \(T_m(\mathbf{x}) = \sum_{j=1}^{J_m} \beta_{jm} \mathbb{I}(\mathbf{x} \in R_{jm})\) com \(J_m\) nós terminais é ajustada aos pseudo-resíduos \(r_{im}\) por mínimos quadrados. Em seguida, para cada folha \(R_{jm}\), determina-se o valor ótimo via busca linear (line search): \[\gamma_{jm} = \arg\min_\gamma \sum_{\mathbf{x}_i \in R_{jm}} L(y_i, f_{m-1}(\mathbf{x}_i) + \gamma)\]
Regularização e Arquitetura:
- Encolhimento (Shrinkage / Learning Rate \(\nu\)): \(f_m(\mathbf{x}) = f_{m-1}(\mathbf{x}) + \nu \sum_{j=1}^{J_m} \gamma_{jm} \mathbb{I}(\mathbf{x} \in R_{jm})\), com \(0 < \nu \le 1\).
- Tamanho das Árvores (\(J\)): Uma árvore com \(J\) folhas modela interações entre no máximo \(J-1\) variáveis simultâneas. \(J=2\) (decision stumps) restringe o ensemble a um Modelo Aditivo Generalizado (GAM) sem interações cruzadas.
Questões discursivas
- Equivalência Formal entre AdaBoost.M1 e o Modelo Aditivo em Estágios com Perda Exponencial.
Considere o critério de perda exponencial \(L(y, f) = e^{-yf}\) para \(y \in \{-1, +1\}\).- Mostre que o subproblema do FSAM na iteração \(m\), dado por \(\min_{\beta, h} \sum_{i=1}^N e^{-y_i(f_{m-1}(\mathbf{x}_i) + \beta h(\mathbf{x}_i))}\), pode ser reescrito na forma \(\min_{\beta, h} \sum_{i=1}^N w_i^{(m)} e^{-\beta y_i h(\mathbf{x}_i)}\), explicitando a expressão de \(w_i^{(m)}\).
- Decompondo a soma em observações com \(y_i = h(\mathbf{x}_i)\) e observações com \(y_i \neq h(\mathbf{x}_i)\), deduza a expressão do erro ponderado \(\text{err}_m\) e prove que o classificador base ótimo \(h_m(\mathbf{x})\) independe do valor positivo de \(\beta\).
- Derive analiticamente a função objetivo em relação a \(\beta > 0\), iguale a zero e obtenha o passo ótimo \(\alpha_m = 2\beta_m = \frac{1}{2} \ln \left(\frac{1 - \text{err}_m}{\text{err}_m}\right)\).
- Mostre que o subproblema do FSAM na iteração \(m\), dado por \(\min_{\beta, h} \sum_{i=1}^N e^{-y_i(f_{m-1}(\mathbf{x}_i) + \beta h(\mathbf{x}_i))}\), pode ser reescrito na forma \(\min_{\beta, h} \sum_{i=1}^N w_i^{(m)} e^{-\beta y_i h(\mathbf{x}_i)}\), explicitando a expressão de \(w_i^{(m)}\).
- Dedução Analítica de Pseudo-Resíduos e Busca Linear para Perdas Robustas.
Em problemas práticos de regressão com dados ruidosos e caudas pesadas, a escolha da função de perda é determinante para a estabilidade do modelo.- Deduza a expressão analítica do pseudo-resíduo \(r_{im}\) e o valor ótimo da folha \(\gamma_{jm}\) para a perda quadrática \(L(y, f) = \frac{1}{2}(y - f)^2\).
- Repita a dedução para a perda absoluta (\(L_1\)) \(L(y, f) = |y - f|\), demonstrando por que o pseudo-resíduo é igual a \(\text{sign}(y_i - f_{m-1}(\mathbf{x}_i))\) e por que o passo ótimo da folha \(\gamma_{jm}\) é a mediana dos resíduos brutos \(y_i - f_{m-1}(\mathbf{x}_i)\) contidos na região \(R_{jm}\).
- A perda de Huber com limiar \(\delta > 0\) é definida por: \[L_\delta(y, f) = \begin{cases} \frac{1}{2}(y - f)^2, & \text{se } |y - f| \le \delta \\ \delta |y - f| - \frac{1}{2}\delta^2, & \text{se } |y - f| > \delta \end{cases}\] Deduza o pseudo-resíduo de Huber e explique detalhadamente por que essa formulação previne o mascaramento de gradientes provocado por outliers extremos.
- Deduza a expressão analítica do pseudo-resíduo \(r_{im}\) e o valor ótimo da folha \(\gamma_{jm}\) para a perda quadrática \(L(y, f) = \frac{1}{2}(y - f)^2\).
- Dinâmica do Tradeoff \((\nu, M)\), Subamostragem e Controle de Interações.
Considere o ajuste de um Gradient Boosting para um problema complexo com \(p = 50\) atributos contínuos.- Explique a relação matemática entre a taxa de encolhimento \(\nu \in (0, 1]\) e o número total de iterações \(M\). Por que a literatura estatística (Friedman, 2001; ESL) recomenda enfaticamente adotar \(\nu \le 0{,}1\) acompanhado de early stopping em vez de \(\nu = 1{,}0\)?
- Demonstre por que uma árvore com \(J\) folhas induz partições ortogonais capazes de representar interações de ordem no máximo \(J-1\). Se o verdadeiro processo gerador contiver um termo não linear da forma \(g(x_1, x_2, x_3) = x_1 \cdot \sin(x_2) \cdot \exp(x_3)\), qual é o menor valor de \(J\) estritamente necessário para que o ensemble consiga aproximar essa interação?
- Discuta como a subamostragem estocástica de instâncias (Stochastic Gradient Boosting com fração \(\eta \approx 0{,}5\)) introduz propriedades estatísticas análogas às do Bagging da Aula 9, indicando o que ocorre com o viés, com a variância e com o tempo de computação por iteração.
- Explique a relação matemática entre a taxa de encolhimento \(\nu \in (0, 1]\) e o número total de iterações \(M\). Por que a literatura estatística (Friedman, 2001; ESL) recomenda enfaticamente adotar \(\nu \le 0{,}1\) acompanhado de early stopping em vez de \(\nu = 1{,}0\)?