Na segunda parte do nosso último artigo sobre TendênciasAI no Esporte, o cientista-chefe Patrick Lucey descreve como Opta Vision resolve um desafio fundamental que tem impedido a análise do futebol nos últimos 25 anos, usando uma combinação de vision computacional e AI generativa.
Se você perdeu a primeira parte na semana passada, pode encontrá-la aqui.
O principal desafio de capturar dados de localização e movimento de jogadores a partir de vídeo no futebol é que o vídeo remoto não oferece uma perspectiva uniforme da partida.
Para acompanhar uma partida por vídeo remoto, é utilizado apenas um ângulo de câmera. É a visão da câmera principal/do jogo - normalmente situada na linha do meio de campo em um ângulo razoavelmente alto. O motivo pelo qual esse é o único ângulo utilizado é que ele contém as informações necessárias, como as linhas laterais, o círculo central, a área de 18 jardas etc., para calibrar a câmera. Outras visualizações não contêm essas informações, o que torna a calibração da câmera praticamente impossível.
No entanto, mesmo usando a visão de câmera de jogo de alto ângulo, em média apenas 11 dos 22 jogadores estão normalmente à vista. E muitas vezes há close-ups e replays - períodos em que anteriormente não era possível capturar dados de rastreamento de jogadores.
A quantidade de tempo em que os replays/close-ups são usados varia de jogo para jogo; alguns jogos têm close-ups mínimos e outros têm muitos - até 20% do jogo.
Claramente, há limitações significativas para uma análise significativa de um jogo de equipe como o futebol se 20% dos eventos do jogo e 50% das corridas fora da bola que os jogadores fazem não forem capturados.
Dê uma olhada nestes dois exemplos. O primeiro (parte superior) mostra quando 11 dos 22 jogadores estão fora de vista, e o segundo exemplo (parte inferior) mostra quando todos os jogadores estão fora de vista, devido a um close-up.
Esses dois exemplos foram extraídos do mesmo segmento de jogo. Primeiro, temos a câmera do jogo por um período de tempo, sem metade dos jogadores de cada equipe. Em seguida, temos um close-up por cerca de 8 segundos, faltando 20 jogadores. O close-up contém três passes antes de uma bola cruzada ser jogada pelo lado direito do campo.
Usando o rastreamento remoto padrão, que não captura dados de rastreamento durante os close-ups, perderíamos a posição e o movimento da maioria dos jogadores e, possivelmente, o mais importante, esses três passes e, principalmente, o último passe que leva a uma jogada de ataque.
Os passes-chave são raros e muito importantes. A falta de passes-chave e dos passes que levam ao passe-chave, bem como da influência e das decisões de outros jogadores, deixa uma grande lacuna na análise.
A capacidade de preencher essa lacuna por meio da obtenção de dados de rastreamento completos pode, portanto, permitir a realização de uma análise completa. Mas como?
Entre naVision Opta AI generativa
Os especialistas humanos são muito bons em estimar o que está acontecendo quando não conseguem ver as coisas no esporte, com base no que viram no passado e no conhecimento de como diferentes equipes, jogadores e técnicos jogam em diferentes situações. A questão é: como podemos fazer com que um computador aprenda isso e "impute" os detalhes que faltam?
Conforme explicado nos artigos anteriores desta série, os modelos de AI generativa treinados em texto podem corrigir uma frase incorreta ou preencher uma palavra que esteja faltando. Os modelos treinados em imagens podem usar preenchimento e expansão (pintura interna e externa) para completar uma imagem. Modelos multimodais treinados em texto, imagens e vídeos, como a tecnologia de texto para vídeo "Sora" da OpenAI, podem gerar um vídeo completo a partir de apenas uma descrição textual.
Para o futebol, a linguagem que criamos utiliza nossos dados de eventos (ou seja, o que aconteceu com a bola e quem estava envolvido) e nossos dados de rastreamento (localização e movimento do jogador). Da mesma forma que o Sora aprendeu o mapeamento entre texto e vídeo, Stats Perform aprendeu o mapeamento entre eventos e dados de rastreamento, o que nos permite resolver esse problema.
Ao ter os dados de rastreamento remoto antes e depois do evento na bola e, em seguida, ter as informações sobre quais eventos/ações na bola ocorrem e por meio de quais jogadores, nosso modelo (que é treinado em uma enorme quantidade de dados proprietários Opta ) tem contexto suficiente para estimar com precisão (ou "imputar") onde esses jogadores estão. Veja nossos resultados abaixo - na minha opinião, é mágico!
Para este trabalho, fomos inspirados pelo trabalho recente no domínio de Veículos Autônomos, que faz algo semelhante - usando os mapas como seu "equivalente em texto" e, em seguida, usando vision computacional para mapear os objetos do mundo nesse "espaço do mapa".
Como estamos lidando com dados visuais, os modelos de difusão são preferidos para tarefas visuais, como geração de imagens ou trajetórias, porque são excelentes na captura de detalhes finos e na produção de resultados de alta qualidade. Para dados sequenciais, como texto e tarefas baseadas em texto (por exemplo, ChatGPT e Gemini), as redes neurais transformadoras são mais adequadas. Embora a difusão seja uma abordagem diferente dos transformadores, ela ainda se enquadra no conceito de AI generativa, pois pode criar imagens novas e realistas (ou, neste caso, gerar trajetórias realistas de jogadores ausentes).
Conforme mencionado, os resultados são bastante "mágicos". Porém, o mais importante é que isso resolve um problema importante no futebol, pois agora todos os passes podem ser analisados no contexto da localização e do movimento de outros jogadores - algo que chamamos de "análise completa".
Assim, podemos fazer o mesmo tipo de análise a partir de vídeo remoto que poderíamos fazer no local, o que representa uma enorme mudança de paradigma na obtenção de informações de mais jogadores, equipes e ligas.
Isso também nos permite criar dados completos de jogos anteriores. À medida que avançarmos nessa jornada, você ouvirá mais sobre isso. Mas mostramos isso recentemente na MIT Sloan Sports Analytics Conference, onde Harry Hughes, da equipe Stats Perform AI , fez um trabalho incrível ao apresentar esse trabalho - veja aqui os detalhes completos, juntamente com um link para um vídeo da apresentação.
Por que um sistema CV não pode rastrear durante os close-ups?
Como você pode ver no exemplo no canto inferior esquerdo, podemos ver os jogadores claramente (ou seja, camisas brancas), portanto, detectar esses jogadores por meio de um sistema CV é bastante fácil.
No entanto, como isso ocorre no nível do solo, é praticamente impossível estimar onde esses jogadores estão no "espaço de pixels" (ou seja, nas imagens) em relação ao restante dos jogadores e ao campo. Esse tipo de raciocínio para detecção de posição e movimento é muito mais fácil de ser feito no "espaço de rastreamento" (ou seja, a visualização de cima para baixo do campo).
Yann LeCun, uma figura importante na área de AI , mencionou recentemente que modelar o mundo no "espaço de pixels" é ineficiente e impossível de resolver. Concordamos que essa percepção é a chave para solucionar esse desafio de gerar dados de rastreamento completos a partir de vídeos remotos. Nossa abordagem para gerar dados de rastreamento trata essencialmente o "espaço de dados de rastreamento" como uma compressão de 1.000.000:1 do espaço de pixels.
A vantagem de operar no espaço de dados de rastreamento é que ele também "nos prende ao mundo real", pois limita as possibilidades às dimensões do campo (105x68m em média no futebol), e o contexto adicional dos eventos o restringe ainda mais.
Por que parar nos dados de rastreamento do jogador? Os sistemas de CV poderiam detectar "dados de eventos" diretamente do vídeo?
Antes de mais nada, vamos definir o que são "dados de eventos". Usando o futebol como exemplo, os dados de eventos referem-se às ações que os jogadores realizam durante o jogo e às decisões que os dirigentes tomam. Eles incluem cobranças de falta, chutes a gol, escanteios, arremessos, toques, passes, dribles, chutes, gols, gols contra, defesas, cabeceios, desarmes, interceptações, faltas, pênaltis, cartões amarelos, cartões vermelhos etc.
Os dados de posição e movimento combinados com os dados de eventos fornecem a visão completa do jogo. Sem ambos, é impossível analisar e prever as decisões e capacidades dos jogadores em situações específicas.
Alguns aspectos importantes a serem observados sobre "eventos" são:
- Na verdade, muitos eventos são de natureza multimodal - tanto visuais quanto sonoros (ou seja, o apito do árbitro), pois dependem das decisões do árbitro humano. Só é uma falta, pênalti, impedimento, cartão amarelo, cartão vermelho, escanteio ou gol se o árbitro humano decidir que é esse evento. Até mesmo um goleiro que toca um chute por cima do travessão só pode ser uma defesa se o árbitro conceder um escanteio.
- Alguns eventos têm duração. Um passe tem um local de início e um local de término se o jogador o receber com sucesso.
- Alguns eventos podem mudar após o fato devido à intervenção do VAR ou do árbitro assistente.
- Muitos eventos ocorrem com vários participantes próximos e exigem uma avaliação minuciosa para detectar e classificar com precisão e consistência de acordo com as definições prescritas.
Quando se considera que as equipes e a mídia precisam que os dados do evento sejam coletados ao vivo, de forma consistente e precisa para que sejam úteis, para centenas de competições de futebol masculino e feminino de elite em todo o mundo, podemos ver a necessidade de ter humanos especializados no circuito para ambas as situações em que diferentes pontos de vista são encontrados, mas também para interpretar as decisões do árbitro (ou mudança nas decisões). Além disso, mesmo quando há de 10 a 12 câmeras e um chip na bola, a intervenção humana é necessária, como exemplificado pelo sistema semiautomático de detecção de impedimento usado na Copa do Mundo masculina da FIFA de 2022.
Portanto, as fontes de entrada de dados esportivos podem ser consideradas multimodais, incorporando entradas de coleta humana e também por meio de vision computacional. A natureza complementar dos dados de entrada, bem como a redundância incorporada a esse processo, garante que dados completos e precisos sejam capturados, independentemente do que aconteça durante o jogo, do vídeo de entrada ou da tomada de decisão do árbitro.
O GPT-4o ou o Gemini não podem fazer o processamento de imagem/vídeo para esportes, já que são multimodais? Por que não é possível usar isso para criar dados de rastreamento de jogadores?
Além do alto custo e da latência do uso de APIs comerciais para processar imagens e dados de vídeo, o uso de modelos prontos para uso capturará apenas uma parte dos jogadores que estão claramente visíveis, o que resulta na falta de detalhes críticos da "última milha", incluindo grandes lacunas no jogo, devido às várias nuances do esporte e seus muitos casos extremos.
Os motivos pelos quais isso acontece são:
- Dados de treinamento: Modelos como o GPT-4o e o Gemini são treinados com base em dados disponíveis publicamente, que se baseiam no emparelhamento de imagens e legendas, e não em sequências detalhadas de dados esportivos específicos do domínio que contêm dados de rastreamento e eventos associados, e
- Linguagem: Modelos como GPT-4o e Gemini estão aprendendo as correlações entre imagens/vídeo e texto. Conforme mencionado anteriormente, queremos aprender as correlações entre os dados de rastreamento e os dados de eventos, que são nossos equivalentes de imagens/vídeo e texto.
Outra maneira de pensar nisso é que os dados esportivos (rastreamento e evento) são seu próprio "idioma", e o GPT-4o e o Gemini foram otimizados para a linguagem natural (imagem e legenda) - portanto, os modelos de base do Stats Performestão literalmente falando um idioma diferente dos modelos não treinados em dados esportivos detalhados.
Embora teoricamente seja possível aprender um modelo entre o emparelhamento de imagem/vídeo e dados de eventos, isso não é prático devido à compactação do vídeo para rastreamento (ou seja, 1.000.000:1), os dados de rastreamento fundamentam os dados na realidade do esporte, e os dados de rastreamento são um resultado muito útil por si só para visualização, interação e interpretabilidade (como mostraremos no próximo artigo).
Fazer com que um agente AI assista a um jogo esportivo ao vivo e explique as regras é o mesmo que analisar um jogo?
Essa é uma boa pergunta e realmente chega ao cerne da diferença entre entender um idioma (ou entender um tópico como um novato ou especialista). Os LLMs multimodais atuais baseados em linguagem natural podem reconhecer um vídeo e identificá-lo como um jogo de futebol (e talvez identificar alguns dos times e jogadores e, possivelmente, o placar e o tempo da partida a partir do "bug" do placar na tela). A partir disso, ele poderia explicar as regras do futebol e talvez um pouco da história dos clubes envolvidos, sendo algo que ele poderia obter rapidamente de uma pesquisa na Wikipedia (ou seja, informações de texto de alto nível que podem ser encontradas publicamente na Internet).
No entanto, identificar o esporte que está sendo praticado e detectar detalhes sobre o que está acontecendo no jogo são duas coisas muito diferentes. A próxima onda da GenAI não é apenas identificar o esporte que está sendo jogado, que é o que um novato poderia fazer, mas sim assistir ao jogo como um "especialista". Para fazer isso, você precisa ter a linguagem de um especialista. No caso do futebol, é entender qual formação um time está jogando, ou onde um defensor "deveria estar" em uma determinada situação, qual passe um jogador "deveria ter feito" e qual foi o custo de um passe errado que levou a um contra-ataque. Também é fundamental conectá-lo ao elemento "ao vivo", algo que os LLMs atuais não conseguem fazer porque têm um limite de conhecimento. Portanto, ter o evento e os dados de rastreamento, mas também ter o banco de dados de esportes "ao vivo e atualizado" é extremamente importante e absolutamente necessário para "assistir" a um jogo como um especialista.
No próximo artigo, discutiremos como podemos usar o evento e o rastreamento como a linguagem bruta do esporte e, em seguida, transformá-los de forma que possamos "assistir" a um jogo como um especialista. Em essência, os dados de eventos e rastreamento servem como palavras (textuais e visuais), mas ainda não estão estruturados, pois precisamos formar frases, parágrafos e capítulos até um livro inteiro (ou uma biblioteca de livros).
Os dados esportivos são estruturados ou não estruturados?
Em termos de eventos distintos (como um passe ou um chute), os dados são estruturados. Eles podem ser armazenados e recuperados em um banco de dados. Também podemos armazenar os dados de rastreamento como uma linha por quadro de ação.
O desafio é que um esporte como o futebol é um jogo contínuo e, para modelar o quadro completo de 22 jogadores se movimentando e eventos ocorrendo, precisamos juntá-los sequencialmente, e não de forma independente. A analogia aqui seria armazenar cada palavra ou frase de um livro separadamente - isso pode garantir que ela seja armazenada, mas perderá o contexto.
Os dados de rastreamento e de eventos associados a cada evento podem ser considerados como uma frase em um livro (onde um jogo é um livro). Outra maneira de pensar nos dados de rastreamento e de eventos que coletamos é pensar neles como átomos, que precisamos reunir em uma estrutura coerente.
No entanto, o número de átomos (ou seja, eventos e jogadores) contém mais permutações do que o número de átomos no universo!
Os modelos de AI generativa nos permitem aprender a estrutura correta a partir desses átomos brutos não estruturados.
Basicamente, tudo o que fazemos em AI tem a ver com representação ou com a obtenção da estrutura de entrada correta para o computador aprender.
Para gerar dados de rastreamento e eventos em conjunto, precisamos levar em consideração a posição, as velocidades e as acelerações de todos os jogadores, bem como os eventos anteriores. Todos esses fatores variam com o tempo. Como mencionado acima, isso tem mais permutações do que átomos no universo; portanto, nossos modelos com os dados brutos nos permitem aprender a estrutura correta (que também é conhecida como incorporação).
No próximo artigo, vamos nos aprofundar em como podemos utilizar os dados de rastreamento de várias maneiras diferentes, especificamente sobre como assistir a um jogo como um especialista, mas também como fazer pesquisas de forma visual e interativa.
Você falou brevemente sobre o RoboSoccer no último artigo, isso tem alguma relação?
Começamos este artigo falando sobre a história da vision computacional no esporte, mas não tocamos em uma das primeiras áreas realmente ativas de vision computacional no esporte na década de 1990, que foi o RoboSoccer. Essa foi uma das áreas de pesquisa mais ativas antes que a revolução do Moneyball visse um foco no esporte do mundo real.
O objetivo do RoboSoccer, ou RoboCup, era fazer com que uma equipe de robôs humanoides totalmente autônomos vencesse o melhor time de futebol humano do mundo, em um campo real, até 2050. Para chegar a esse nível, precisamos de duas coisas:
- Criar um robô que possa começar a se mover como um ser humano, o que está se aproximando com base no recente lançamento do robô da Boston Dynamics, e
- Fazer com que esses robôs "percebam" o mundo como um jogador humano. Mas, para isso, precisamos gerar exemplos suficientes para que esses robôs aprendam sobre o movimento e a estrutura do futebol.
Acredito que o trabalho que estamos fazendo no Opta Vision nos ajudará a analisar todos os jogos que já foram jogados "completamente" e também começará a fornecer a quantidade de dados completos necessários para treinar um robô para ler o jogo como um especialista humano.
No entanto, a beleza do esporte é que ele é praticado por seres humanos - é imprevisível, fluido e proporciona uma experiência ao vivo, única e compartilhada para as pessoas desfrutarem. Embora seja um objetivo interessante a ser perseguido (muito parecido com ensinar um computador a jogar xadrez, Jeopardy! ou Go - mas muito mais difícil), acho que desafios como a RoboCup mostrarão como os seres humanos são incríveis e o nível de preparação, prática e treinamento necessários para um desempenho cognitivo e físico de alto nível.
Em artigos futuros, destacaremos como podemos usar dados de rastreamento de vision computacional para entender esportes como futebol, basquete e tênis. Também destacaremos a função que AI geradora desempenha na previsão.