← Todos os artigos

Como os modelos de xG divergem (e por que seus números raramente batem)

Por Andre Schlaepfer · Atualizado em abril de 2026 · ~15 min de leitura

Se você já comparou o xG de um mesmo jogo em dois provedores diferentes e encontrou números que divergem em até meio gol, não é impressão sua. Cada modelo de xG faz as próprias escolhas sobre quais variáveis do chute observar e como combiná-las, e essas escolhas produzem estimativas bem diferentes. Este artigo passa pelos quatro modelos acadêmicos que alimentam esta calculadora — o modelo por zonas de Rathke, o modelo do Kos Angle de Karim & Marwane, o modelo baseado em CNN de Matteotti & Sotudeh e o modelo combinado baseado em Anzer & Bauer, Hewitt & Karakuş e Narayanan & Pifer — e explica de onde vêm os números e por que eles divergem. A revisão abaixo é uma versão condensada da revisão bibliográfica do meu trabalho de conclusão de curso de 2024 na UFRJ.

1. Rathke (2017) — xG por zonas

O modelo mais antigo e simples da calculadora. Rathke divide o campo ofensivo em oito zonas e reporta a porcentagem histórica de chutes que viraram gol em cada uma. A Zona 1, uma faixa estreita logo à frente da pequena área, marca a cerca de 39,8%; a Zona 2, no coração da grande área logo atrás dela, fica em 18,8%; zonas fora da área caem para valores de um dígito. A Zona 6 — o corredor próximo à linha de fundo, fora da grande área — fica abaixo de 3%.

O modelo precisa apenas da coordenada x/y do chute para produzir um valor. Essa é sua força e sua fraqueza. Ele entrega um número rápido e intuitivo que qualquer pessoa pode checar olhando para o campo, mas não distingue um cabeceio livre na marca do pênalti de um chute espremido entre três defensores nas mesmas coordenadas. Use-o como linha de base.

2. Karim & Marwane (2023) — o Kos Angle

Karim e Marwane introduziram uma variável angular que chamam de Kos Angle: parte-se do ângulo do triângulo formado pela bola e as duas traves, e subtraem-se os ângulos ocupados pelos defensores dentro desse triângulo. O que sobra é o ângulo “aberto” efetivamente disponível para o chute alcançar o gol. Intuitivamente, um ângulo aberto de 40° sem ninguém na frente é muito diferente de um ângulo de 40° com um zagueiro no meio.

Os autores concluíram que incluir o Kos Angle como variável em modelos padrão melhorou bastante a performance, e nos modelos baseados em árvores ele foi consistentemente a variável de maior SHAP — ou seja, a que mais influenciou o xG final. No simulador, é o modelo que reage de forma mais dramática quando você coloca um defensor entre a bola e o gol: um local aparentemente bom pode perder grande parte do xG assim que o corredor é fechado.

3. Matteotti & Sotudeh — xG por pixels via CNN

Matteotti e Sotudeh seguem outro caminho. Em vez de construir variáveis manualmente, transformam cada chute em uma imagem de dois canais numa grade 30×40. O canal um tem um único pixel para a bola. O canal dois tem um pixel para cada defensor. A imagem é então suavizada por um filtro gaussiano (σ = 1,25), de modo que o modelo veja um heat-map de defensores em vez de pontos, e é alimentada em uma rede neural convolucional que devolve a probabilidade de gol.

É um modelo conservador: raramente produz valores de xG muito altos, mesmo em chances que olheiros humanos chamariam de claras, porque o alvo do treinamento (o chute virou gol ou não) é muito enviesado para zero. No simulador, o modelo CNN funciona como contrapeso: quando os modelos mais simples de zona ou ângulo dizem que a chance é enorme, o valor mais comedido da CNN lembra que mesmo chutes à queima-roupa são defendidos com frequência.

4. xG agregado (Anzer & Bauer, Hewitt & Karakuş, Narayanan & Pifer)

O quarto modelo é um conjunto combinado de variáveis tirado de três artigos recentes. Inclui coordenadas x/y, distância e ângulo, posição do goleiro, número de jogadores dentro do triângulo do chute, densidade de jogadores, distâncias dos dois defensores mais próximos do finalizador, um flag para chutes de primeiro toque, um flag para chutes sob pressão, a parte do corpo usada e a técnica. Por baixo dos panos, o modelo em produção é um Gradient Boost, escolhido entre regressão logística, AdaBoost e Gradient Boost após comparar Precisão, Recall, Brier score e ROC-AUC sobre dados do StatsBomb.

É o modelo mais rico e, em geral, o mais preciso da calculadora. Se você quer um único valor que reflita bem o que provedores modernos de xG produzem, este é uma referência principal sensata.

Por que os números divergem

Olhando para os quatro em conjunto, fica óbvio por que os valores públicos de xG de provedores diferentes raramente batem.

  • Variáveis de entrada diferentes. Rathke enxerga só posição. A CNN enxerga posição mais heat-maps de defensores. O modelo agregado enxerga posição, defensores, goleiro, técnica e parte do corpo. Mais variáveis significa mais sensibilidade, para o bem e para o mal.
  • Bases de treino diferentes. Cada modelo é treinado num recorte distinto de ligas e temporadas. A literatura revisada aqui cobre dados do StatsBomb de Bundesliga, Premier League, Serie A, Ligue 1, Champions League, Euro 2020 e Copa do Mundo de 2022, além, no caso de Matteotti & Sotudeh, de ligas não europeias como a Indian Super League.
  • Premissas algorítmicas diferentes. Regressão logística, random forest, gradient boost, AdaBoost e CNNs aprendem não linearidades de formas distintas. O mesmo vetor de variáveis pode gerar resultados bem diferentes.

Trate a divergência como uma informação extra

Quando os quatro modelos concordam, você pode ter confiança de que a chance é tão boa ou tão ruim quanto parece. Quando eles discordam, o tamanho da divergência também diz algo: provavelmente você está olhando para um chute cuja qualidade depende muito do contexto que os modelos mais simples não enxergam — posicionamento de defensor, posição do goleiro, ângulo aberto estreito. É aí que vale a pena construir intuição ajustando o cenário no simulador e observando os quatro valores se moverem juntos ou se afastarem.