Dimensão VC, classificação online e dimensão de Littlestone

MAC5005 - Fundamentos Matemáticos do Aprendizado Sequencial e Online

Victor S. Portella

IME-USP

2026-03-02

Relembrando - Aprendizado Estatístico

Conjunto de atributos \(\cX\) e rótulos \(\cY\)

Hipótese \(h : \cX \to \cY\) (o que queremos aprender)

Função de custo \(\ell : \cY^\cX \times (\cX \times \cY) \to \bR\)

Distribuição \(\cD\) desconhecida

Conjunto de treino \(S = ((x_1, y_1), \dotsc, (x_m, y_m))\) gerado IID de \(\cD\)

  • Foco em Classificação binária: \(\cY = \{0, 1\}\) e \(\ell(h, (x,y)) = \ones[h(x) \neq y]\)

  • Erros de generalização e de treino: \[ L_{\cD}(h) = \expect_{(x,y) \sim \cD}[\ell(h, (x,y))] \quad\text{e}\quad L_S(h) = \frac{1}{m} \sum_{i=1}^m \ell(h, (x_i, y_i)) \]

  • Classe de hipóteses \(\cH \subseteq \cY^{\cX}\)

    • Caso realizável: Existe \(h^* \in \cH\) tal que \(h^*(x) = y\) com probabilidade 1 (\(L_{\cD}(h^*) = 0\)).

Relembrando - PAC Aprendizado


Uma classe de hipóteses \(\cH\) é Provavelmente Aproximadamente Correto (PAC) aprendível agnosticamente se existe um algoritmo \(A \colon (\cX \times \cY)^* \to \cH\) tal que

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

então \[ \prob \big( L_{\cD}(A(S)) - \inf_{h \in \cH} L_{\cD}(h) \leq \eps \big) > 1 - \delta \]

Relembrando - ERM para \(\cH\) finito

\[ \ERM_\cH(S) \in \argmin_{h \in \cH} L_{S}(h) \]

No caso realizável, se \(S \sim \cD^m\), então com probabilidade pelo menos \(1 - \delta\) \[ L_{\cD}\big(\ERM_\cH(S)\big) \leq \frac{\log |\cH| + \log\frac{1}{\delta}}{m} \]

Seja \(S \sim \cD^m\). Então, com probabilidade pelo menos \(1 - \delta\) \[ L_{\cD}(\ERM_{\cH}(S)) - \inf_{h \in \cH} L_{\cD}(h) \leq \sqrt{\frac{2(\log(|\cH|+1) + \log\frac{1}{\delta})}{m}} \]

O que acontece quando \(\cH\) é infinito?

O caso de Thresholds

Na lista 1, vimos que a classe de thresholds é PAC-aprendível:
\[ \cH := \{ \ones[x \geq \tau] \colon \tau \in \bR\} \quad \text{com}~\cX = \bR. \]

Para o caso realizável e \(\cH\) de thresholds, se \(S \sim \cD^m\), então \[ L_{\cD}(\ERM_{\cH}(S)) \leq \frac{\log\frac{1}{\delta}}{m} \quad \text{com prob.}~\geq 1-\delta \]

No entanto, nem todo \(\cH\) é PAC-aprendível.

Exemplos: \(\cH = \cY^\cX\) ou \(\cH = \{x \mapsto \sin(\omega \cdot x): \omega \in \bR\}\)

O que Thresholds tem de especial?



No caso realizável:

  • Classificação de alguns pontos de \(\cX\) já informa a classificação de muitos outros pontos
  • Para \(\cH = \cY^\cX\), isso não é verdade.
  • Como quantificar essa forma de complexidade de \(\cH\)?

Função de crescimento (Growth function)

A função de crescimento de \(\cH\) é dada por \[ \Pi_{\cH}(m) = \max_{x_1, \dotsc, x_m \in \cX} \big|\big\{{(h(x_1), \dotsc, h(x_m))} : h \in \cH\big\}\big| \]

  • Para \(\cH = \cY^\cX\) e \(\cX\) infinito, \(\Pi_{\cH}(m) = 2^m\) para todo \(m\).
  • Para \(\cH\) de thresholds, \(\Pi_{\cH}(m) = m+1\) para todo \(m\)

Intuição: Mesmo que \(|\cH| = \infty\), o que importa é o comportamento no conj. de treino \(S\)

Cota da união em \(\cH\) restrito a \(S\) ao invés de \(\cH\) inteiro.

Eq. 3.23 de [MRT] Com probabilidade pelo menos \(1 - \delta\), \[ L_{\cD}(h) - L_{S}(h) \leq \sqrt{ \frac{8(\log(4 \cdot \Pi_{\cH}(2m)) + \log(1/\delta))}{m}} \qquad \forall h \in \cH. \]

Dimensão VC (Vapnik-Chervonenkis)


O que importa não é o valor de \(\Pi_{\cH}(m)\), mas sim seu crescimento

\(\Pi_{\cH}(m) \leq m^d\) para algum \(d\) e todo \(m\) é suficiente para PAC-aprendizado

\(\Pi_{\cH}(m)\) pode ser difícil de calcular

A dimensão VC de \(\cH\) é dado por \[ \VC(\cH) := \sup \{m \in \bN \colon \Pi_{\cH}(m) = 2^m\} \]

Note que \(\VC(\cH) = d\) se e somente se:

  • Existe \(S = (x_1, \dotsc, x_d) \in \cX^d\) tal que \(\cH\) fragmenta \(S\), isto é \[ \{(h(x_1), \dotsc, h(x_d)) \; \colon \; h \in \cH\} = \{0,1\}^d \]
  • Para todo \(\hat S \in \cX^{d+1}\), temos que \(\cH\) não fragmenta \(\hat S\)

Exemplo - Thresholds




Exemplo - Hiperplanos

Fig. 3.2 de [MRT]

Conectando Dimensão VC e \(\Pi_{\cH}(m)\)

Pergunta: Podemos controlar a função de crescimento em termos da dimensão VC?

  • Se \(m \leq \VC(\cH)\), então \(\Pi_\cH(m) = 2^m\), não é interessante.
  • E se \(m > \VC(\cH)\)?

Lema de Sauer Se \(\cH \subseteq {\{0,1\}}^\cX\), então para todo \(m \geq 0\) \[ \Pi_{\cH}(m) \leq \sum_{i = 0}^{\VC(\cH)} \binom{m}{i}. \] Em particular, se \(m \geq \VC(\cH)\), \[ \Pi_{\cH}(m) \leq \Big(\frac{e m }{\VC(\cH)}\Big)^{\VC(\cH)}. \]

Generalização em termos da Dimensão VC

O Lema de Sauer junto da generalização usando \(\Pi_{\cH}(m)\) nos levam à seguinte garantia:

Se \(m \geq \VC(\cH)\), com probabilidade pelo menos \(1 - \delta\), \[ L_{\cD}(h) - L_{S}(h) \leq \sqrt{\frac{8}{m}} \cdot \sqrt{ \VC(\cH) \log(4 e m) + \log(1/\delta)} \qquad \forall h \in \cH. \]

Em particular, \(\cH\) é PAC-aprendível se \(|\VC(\cH)| < \infty\).

Além disso, temos a seguinte impossibilidade.

Se \(\VC(\cH) = \infty\), então \(\cH\) não é PAC-aprendível.

Extra - Além de ERM e Dimensão VC

Diversos tópicos fundamentais em generalização que estamos pulando:

  • Complexidade de Radamacher (depende da distribuição)
  • Estabilidade algorítmica (depende do algoritmo)
  • Generalização além de classificação binária (regressão, classificação multiclasse, etc)

Ainda é um tópico com pesquisa interessante

“A Theory of Universal Learning”, Bousquet, Hanneke, Moran, van Handel, Yehudayoff

Classificação Binária Online

Classificação Binária Online

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


  • O Adversário escolhe um \(x_t \in \cX\)
  • O Jogador/Algoritmo escolhe uma predição \(p_t \in \cY = \{0,1\}\)
  • O Adversário escolhe e revela o rótulo real \(y_t \in \{0,1\}\)

Assim como no aprendizado estatístico, vamos começar pelo caso realizável:

Temos uma classe de hipóteses \(\cH \subseteq \cY^\cX\) conhecida, e existe \(h^* \in \cH\) tal que \[ y_t = h^*(x_t) \quad \text{para todo}~t \in [T] := \{1, \dotsc, T\}. \]

Importante: não assumimos mais nada sobre o adversário

Pergunta Qual o número máximo de erros que o algoritmo pode fazer?

Um primeiro algoritmo: CONSISTENTE

Vamos primeiro considerar o caso finito: \(|\cH| < \infty\).

Ideia: A cada rodada \(t\), o jogador escolhe uma hipótese que concorda com as rodadas anteriores: \[ \cV_t := \{ h \in \cH \;\colon\; h(x_s) = y_s~\text{para todo}~s < t \} \]

Na rodada \(t \in [T]\) , O algoritmo CONSISTENTE

  • Escolhe \(h_t \in \cV_t\)
  • Define \(p_t = h_t(x_t)\)

Para \(p_t\) dado por CONSISTENTE, \[ \sum_{t = 1}^T \ones[p_t \neq y_t] \leq |\cH| - 1 \]

O algoritmo HALVING

Podemos fazer algo muito melhor que CONSISTENTE.

Ideia: Predizer de acordo com a maioria a cada rodada.

Na rodada \(t \in [T]\) , O algoritmo HALVING

  • Escolhe \(p_t \in \{0,1\}\) que maximiza o tamanho do conjunto \[ \{ h \in \cV_t \colon h(x_t) = p_t\} \]

Para \(p_t\) dado por HALVING, \[ \sum_{t = 1}^T \ones[p_t \neq y_t] \leq \log_2(|\cH|) \]

E para \(\cH\) infinito?

Nenhum dos dois algoritmos tem garantias no número de erros quando \(|\cH| = \infty\)

HALVING não está nem bem definido

Vamos começar interpretando as estratégias do adversário como uma árvore binária de profundidade \(T\).

Uma árvore de estratégia (do adversário) é uma árvore binária completa de altura \(T\) com conjunto de vértices é \(v_1, \dotsc, v_{2^{T+1} -1} \in \cX\) com \(v_1\) de raiz.

Arestas e Notação:

  • \(\DESC(v_i,0) := v_{2i}\) (filho esquerdo de \(v\))

  • \(\DESC(v,1) := v_{2i + 1}\) (filho direito de \(v\))

As escolhas do adversário são dadas pela árvore. Começando pela raiz \(v = v_1\)

  • Adversário escolhe \(x_t = v\);
  • Adversário espera \(p_t\), e define \(y_t = |1 - p_t|\);
  • Adversário atualia \(v = \DESC(v, y_t)\).

Árvore fragmentada por \(\cH\)

Jogador erra em toda rodada.

Adversário ainda é realizado por \(\cH\)?

Depende de \(\cH\) e da árvore!

Uma árvore de estratégia com vértices \((v_1, \dotsc, v_{2^{T+1}-1})\) é fragmentada por \(\cH\) se para todo \(y \in \{0,1\}^T\) , definindo \(x_1 = v_1\) e \[ x_{t+1} = \DESC(x_{i}, y_i) \quad \text{para todo}~t \in [T-1], \] existe \(h \in \cH\) tal que \(h(x_t) = y_t\) para todo \(t \in [T]\).

Fig. 21.1 de [SSBD]

Dimensão de Littlestone

Uma árvore de estratégia com vértices \((v_1, \dotsc, v_{2^{T + 1}-1})\) é fragmentada por \(\cH\) se para todo \(y \in \{0,1\}^T\) , definindo \(x_1 = v_1\) e \[ x_{t+1} = \DESC(x_{i}, y_i) \quad \text{para todo}~t \in [T-1], \] existe \(h \in \cH\) tal que \(h(x_t) = y_t\) para todo \(t \in [T]\).

Assim como em aprendizado estatístico, a ideia de fragmentação nos leva a uma noção de dimensão de \(\cH\)

A dimensão de Littlestone \(\LDim(\cH)\) de \(\cH\) o maior \(T \in \bN\) tal que existe uma árvore de estratégia de profundiade \(T\) fragmentada por \(\cH\)

Nenhum algoritmo pro jogador contra um adversário realizado por \(\cH\) pode garantir menos que \(\LDim(\cH)\) erros.

Exemplo - \(\cH\) finito

Exemplo - Thresholds


;

Ex. 21.4 de [SSBD]