Aplicações de MWU

MAC5005 - Fundamentos Matemáticos do Aprendizado Sequencial e Online

Victor S. Portella

IME-USP

2026-03-16

Relembrando - Predição com Ajuda de Experts

Vamos estudar primeiro Predição com Ajuda de Experts

Para cada rodada \(t = 1, \dotsc, T\):


  • O Jogador/Algoritmo escolhe um expert \(i_t \in [d]\) para seguir
  • O Adversário escolhe custos \(\ell_t \in [0,1]^d\) para os experts
  • O Jogador/Algoritmo sofre o custo \(\ell_t(i)\)

Classificação binária com \(\cH\) finito é um caso especial

Relembrando - Medida de Desempenho: Regret

No pior caso, o jogador erra toda rodada.

Ou seja, numero de erros não é informativo nesse caso.

Alternativa - Regret: comparar custo com o do melhor expert do jogo. \[ \Regret(T) = \sum_{t=1}^T \ell_t(i_t) - \min_{i \in [d]} \sum_{t = 1}^T \ell_t(i) \]

Objetivo: garantir regret sublinear no número de rodadas \(T\) : \[ \frac{\Regret(T)}{T} \longrightarrow 0 \quad \text{quando} \quad T \to \infty. \]

Má noticia: ainda muito dificil!

Impossibilidade de Cover Para qualquer algoritmo, existem custos tais que \[ \Regret(T) \geq T/2. \]

Relembrando - Convexificação do Jogador

Em seu formato original, impossível conseguir regret sublinear (impopssibilidade de Cover)

Solução: “convexificar” a escolha do jogador

  • O Jogador/Algoritmo escolhe uma distribuição \(p_t \in \Delta_d\) sobre os experts, onde \[ \Delta_d = \Big \{ p \in [0,1]^d \; \colon\; \sum_{i=1}^d p_i = 1 \Big \} \]
  • O Adversário escolhe custos \(\ell_t \in [0,1]^d\) para os experts
  • O Jogador/Algoritmo sofre o custo esperado \(\ell_t^\T p_t\)

Relembrando - Método dos Pesos Multiplicativos (MWU)

MWU(\(T, \eta\)):

Defina \(w_1 := \ones\)

Para \(t = 1, \dotsc, T\):

  • Jogador revela \[p_t = \frac{w_t}{\lVert w_t\rVert_1} \in \Delta_d\]
  • Adversário revela os custos \(\ell_t \in [0,1]^d\) e Jogador sofre custo \(\ell_t^\T p_t\)
  • Jogador atualiza os pesos \(p_{t+1}\) para a próxima rodada: \[ w_{t+1}(i) := w_t(i) \cdot \exp(-\eta \ell_t(i)) \quad \text{para todo}~i \in [d] \]

Para \(\eta > 0\), o algoritmo MWU(\(T, \eta\)) com \(\eta = \sqrt{2 \log d / T}\) garante \[ \Regret(T) \leq \sqrt{2 T \ln d}. \]

Aplicação: Jogos de Soma Zero

Jogos de Soma Zero

O jogo é definido por uma matrix de recompensas1 \(A \in [-1,1]^{m \times n}\)

Temos dois jogadores: o jogador coluna e o jogador linha.

Em cada rodada:

  • Jogador linha escolhe uma linha \(i\)
  • Jogador coluna escolhe uma coluna \(j\)
  • Jogador linha recebe \(A(\)\(i\),\(j\)\()\) pontos, jogador coluna recebe \(-A(\)\(i\),\(j\)\()\) pontos

Jogos de Soma Zero com Estratégias Mistas

Aqui, também é interessante considerarmos jogadores aleatorizados:

Em cada rodada:

  • Jogador linha seleciona uma distribuição \(q \in \Delta_m\) sobre as linhas
  • Jogador coluna seleciona uma distribuição \(p \in \Delta_n\) sobre as colunas
  • A recompensa (esperada) do jogador linha é:

\[ \sum_{i = 1}^m \sum_{j = 1}^n A(i,j) q_i p_j = q^\T A p \]

Pergunta: Faz diferença quem joga primeiro?

Teorema Minimax de Von Neumann

\[ \max_{p \in \Delta_n} \min_{q \in \Delta_m} q^\T A p = \min_{q \in \Delta_m} \max_{p \in \Delta_n} q^\T A p = \text{OPT} \]

Equilíbrio Aproximado com MWU

  • Jogador coluna joga sua estratégia atual \(p_t\) (começa com \(p_1 = \frac{1}{n} \mathbb{1}\))
  • Jogador linha escolhe \(q_t = e_j\) onde a linha \(j\) maximiza \(e_j^\T A p_t\)
  • Jogador coluna atualiza sua estratégia com MWU: \[ p_{t+1}(i) \propto p_t(i) \exp(-\eta \ell_t(i)) \quad \text{com} \quad \ell_t = A^\T e_j \quad\text{(j-ésima linha de $A$}) \]

Defina \(\displaystyle \bar{p} = \frac{1}{T} \sum_{t = 1}^T p_t\) e \(\displaystyle \bar{q} = \frac{1}{T} \sum_{t = 1}^T q_t\). Então, para todo \(q \in \Delta_m, p \in \Delta_n\),

\[ \begin{aligned} q^\T A \bar{p} &\leq \frac{\Regret(T)}{T} + \max_q \min_p q^\T A p \quad \text{e} \\ \bar{q}^\T A p &\geq - \frac{\Regret(T)}{T} + \min_p \max_q q^\T A p \end{aligned} % \displaystyle \text{OPT} - \frac{\text{Regret}(T)}{T} \leq \bar{q}^\T A \bar{p} \leq \text{OPT} + \frac{\text{Regret}(T)}{T} \] Em particular, \(\max_{p} \min_{q } q^\T A p = \min_{q} \max_{p} q^\T A p\) e, se \(T > 2 \ln m/\eps^2\), \(\Regret(T)/T \leq \eps\).

Aplicação: Boosting

Motivação

Em PAC Learning com hipóteses \(\cH\), achar \(h \in \ERM_{\cH}\) generaliza bem


Problema computacional Se \(\cH\) for “muito complexo”, calcular \(\ERM_{\cH}\) pode ser computacionalmente difícil

Exemplos: Árvores de decisão (profundidade limitada), DNF de 3-termos


Achar hipóteses simples que funcionam melhor que jogar uma moeda costuma ser fácil.

Exemplo: Classificar como SPAM todo e-mail contendo “grande ganho”


Pergunta: É possível combinar (eficientemente) combinar hipóteses simples para PAC-learning? (Kearns e Valiant, 1988)

SIM, via Boosting.

Definição de Weak Learner

Uma classe de hipóteses \(\cH\) é fracamente PAC-aprendível (weakly PAC learnable) se existe um algoritmo \(A \colon (\cX \times \cY)^* \to \cB\) (com \(\cB \subseteq \cY^{\cX}\)) e uma constante \(\gamma > 0\) tais que

  • Para todo \(\delta\) > 0,
  • Para toda distribuição \(\cD\) sobre \(\cX \times \cY\) realizada por \(\cH\),
  • Existe \(M(\delta) > 0\) tal que
  • Se \(m > M(\delta)\) e \(S \sim \cD^m\)

então \[ \prob \Big( L_{\cD}(A(S)) \leq \frac{1}{2} - \gamma \Big) > 1 - \delta. \]

Chamamos \(A\) de um weak learner e \(\cB\) de conjunto de classificadores base.

A principal diferença:

  • PAC-aprendivel: erro de generalizacão arbitrariamente pequeno (\(\leq \eps\))

  • Fracamente PAC-aprendivel: erro de generalizacão um pouco (\(\gamma\)) melhor que jogar uma moeda

Exemplo - Intervalos e Thresholds

Exemplo - Decision Stumps

O Oráculo Weak Learner

Vamos assumir que temos acesso a um oráculo (uma sub-rotina) que resolve o problema do aprendizado fraco no conjunto de treino.

A função \(\mathrm{WL}\) recebe

  • conjunto de treino \(S = ((x_1, y_1), \dotsc, (x_m, y_m))\);
  • uma distribuição \(p \in \Delta_m\) sobre os exemplos de \(S\);

e produz uma hipótese \(h := \mathrm{WL}(p, S)\) tal que, com pr

\[ L_{p}(h) = \sum_{i=1}^m p_t(i) \ones[h_t(x_i) \neq y_i] \leq \frac{1}{2} - \gamma \]


A definição de fracamente PAC-aprendível garante algoritmo que escolhe uma hipótese com \(L_{p}\) baixo com probabilidade \(\geq 1-\delta\). Por simplicidade, estamos ignorando isso (\(\delta = 0\))

Boosting básico com MWU

IMPORTANTE: Para simplificar, vamos assumir \(\cY =\{-1,1\}\) ao inés de \(\cY = \{0,1\}\)

Não é necessário, mas simplifica algumas coisas,

  • Algoritmo passa a distribuição atual \(p_t \in \Delta_m\) (começa com \(p_1 = \frac{1}{m} \mathbb{1}\))
  • Weak Learner escolhe uma hipótese \(h_t\) que performa bem nos dados pesados por \(p_t\)
  • Algoritmo atualiza a distribuição sobre os exemplos com MWU: \[ p_{t+1}(i) \propto p_t(i) \exp(-\eta \ell_t(i)) \quad \text{onde} \quad \ell_t(i) = h_t(x_i) y_i \]

Saída: A hipótese final \(h_{S}(x)\) é dada pelo voto da maioria: \[ h_{S}(x) := \mathrm{majority}\big(h_1(x), h_2(x), \dots, h_T(x)\big) \]

Se o weak learner acerta o \(i\)-ésimo exemplo, \(\ell_t(i) = 1\) e o peso \(p_{t+1}(i)\) diminui.

Exemplo em Figura

Fig. 7.2 do MRT

Revisitando a Análise de MWU

Ná análise do MWU, mostramos o seguinte para o potencial \[ \Phi_t := \log \Big( \sum_{i = 1}^d w_{t,i} \Big) \]

Resumo da Análise do MWU Para \(\ell_t \in [-1,1]^d\) \[ \begin{aligned} \Phi_{t+1} - \Phi_{t} &= \log \Big( \sum_{i = 1}^d p_{t,i} \exp(- \eta \ell_{t,i})\Big) \leq - \eta \ell_t^\T p_t + \frac{\eta^2}{2}, \\ \Phi_{T+1} &\geq - \eta \min_{i \in [d]} \sum_{t = 1}^T \ell_t(i) \quad \text{e} \quad \Phi_1 = \ln d \end{aligned} \]

\[ \Regret(T) \leq \frac{\ln d}{\eta} + \frac{\eta T}{2} \]

Análise de Boosting via MWU

\[ \Regret(T) \leq \frac{\ln d}{\eta} + \frac{\eta T}{2} \]

Se \(h_S\) é a hipótese gerada pelo Boosting básico com \(\eta = \gamma\), então \[ T > \frac{\ln m}{\gamma^2} \implies L_{S}(h_{S}) = \frac{1}{m}\sum_{i = 1}^m \ones[h_{S}(x_i)\neq y_i] = 0. \]

Pergunta: Se \(T \leq \ln m/\gamma^2\), não temos nenhuma garantia em \(L_S(h_S)\)?

Análise Melhorada de MWU

Lembre do potencial no MWU \[ \Phi_t := \log \Big( \sum_{i = 1}^d w_{t,i} \Big) \]

Para \(\ell_t \in [-1,1]\) e qualquer \(E \subseteq [d]\) \[ \begin{aligned} \Phi_{t+1} - \Phi_{t} &= \log \Big( \sum_{i = 1}^d p_{t,i} \exp(- \eta \ell_{t,i})\Big) \leq - \eta \ell_t^\T p_t + \frac{\eta^2}{2}, \\ \Phi_{T+1} &\geq \ln |E|- \eta \max_{i \in E} \sum_{t = 1}^T \ell_t(i) \quad \text{e} \quad \Phi_1 = \ln d. \end{aligned} \] Em particular, \[ \sum_{t = 1}^T \ell_t^\T p_t - \max_{i \in [E]} \sum_{t = 1}^T \ell_t(i) \leq \frac{\ln(d/|E|)}{\eta} + \frac{\eta T}{2} \]

Análise Melhorada de Boosting Básico

Para qualquer \(E \subseteq [d]\), \[ \sum_{t = 1}^T \ell_t^\T p_t - \min_{i \in [E]} \sum_{t = 1}^T \ell_t(i) \leq \frac{\ln(d/|E|)}{\eta} + \frac{\eta T}{2}. \]

Se \(h_S\) é a hipótese gerada pelo Boosting básico com \(\eta = \gamma\), então \[ L_{S}(h_{S}) \leq \exp(- T \gamma^2) \]

Pergunta: Temos como fazer boosting sem saber o valor de \(\gamma\)?

O Algoritmo AdaBoost

Inicialização: Pesos uniformes \(p_1(i) = \frac{1}{m}\) para \(i \in [m]\).

Para cada rodada \(t = 1, \dotsc, T\):

  1. O Algoritmo obtém a hipótese \(h_t = \mathrm{WL}(p_t, S)\)
  2. Define-se a importância da hipótese (tamanho do passo): \[ \eta_t := \frac{1}{2} \log\Big(\frac{1 - \eps_t}{\eps_t}\Big) \quad \text{onde}~ \eps_t := L_S(h_t) \]
  3. Algoritmo calcula \(p_{t+1}\) via MWU com passo \(\eta_{t}\) e \(\ell_{t,i} = y_i h_t(x_i)\) na rodada \(t\)

Saída: Voto da maioria ponderado pelo peso de cada hipótese: \[ h_S(x) = \mathrm{sign}\Big(\sum_{t=1}^T \eta_t h_t(x)\Big) \]

Análise de AdaBoost

No caso de AdaBoost, lembrando \(\eps_t = L_S(h_t)\), temos \[ \begin{aligned} L_S(h_S) % \leq \exp \Big( -2 \sum_{t = 1}^T \Big( \frac{1}{2} - \eps_t\Big)^2\Big) \leq \exp\big( - 2 \gamma^2 T \big). \end{aligned} \]

Dimensão VC das Hipósteses de Boosting

Boosting devolve uma hipótese com \(L_S(h_S) = 0\). Mas será que generaliza?

Defina \(d := \VC(\cB)\) e \[ \cH_T := \Bigg\{ \mathrm{sign}\Big(\sum_{t = 1}^T \eta_t h_t\Big) \;\colon\; \eta_t \geq 0, h_t \in \cB~\text{para todo}~t \in [T]\Bigg\}. \] Então \[ \VC(\cH_T) \leq 2(d+1)(T+1) \lg((T + 1)e) \]

Dimensão VC não é o Fim da História

Figura do MRT