Connect with us

Inteligência artificial

Sapiens: Fundação para Modelos de Visão Humana

mm
Sapiens: Foundation for Human Vision Models

O sucesso notável do pré-treinamento em larga escala seguido de ajuste fino específico da tarefa para modelagem de linguagem estabeleceu essa abordagem como uma prática padrão. Da mesma forma, os métodos de visão computacional estão progressivamente abraçando escalas de dados extensas para pré-treinamento. O surgimento de grandes conjuntos de dados, como LAION5B, Instagram-3.5B, JFT-300M, LVD142M, Visual Genome e YFCC100M, permitiu a exploração de um corpus de dados bem além do escopo dos benchmarks tradicionais. Trabalhos importantes nesse domínio incluem DINOv2, MAWS e AIM. DINOv2 alcança o desempenho de ponta em gerar recursos auto-supervisionados por meio da escalada do método contrastivo iBot no conjunto de dados LDV-142M. MAWS estuda a escalada de codificadores-autores mascarados (MAE) em bilhões de imagens. AIM explora a escalabilidade do pré-treinamento visual autoregressivo semelhante ao BERT para transformadores de visão. Em contraste com esses métodos, que se concentram principalmente no pré-treinamento de imagens gerais ou classificação de imagens zero-shot, Sapiens adota uma abordagem distintamente centrada no ser humano: os modelos Sapiens aproveitam uma vasta coleção de imagens humanas para pré-treinamento, ajustando subsequentemente para uma variedade de tarefas relacionadas a humanos. A busca por uma digitalização 3D de humanos em larga escala permanece um objetivo crucial na visão computacional.

Foi feito um progresso significativo dentro de ambientes controlados ou de estúdio, no entanto, desafios persistem na extensão desses métodos para ambientes não restritos. Para abordar esses desafios, é crucial desenvolver modelos versáteis capazes de realizar múltiplas tarefas fundamentais, como estimação de pontos-chave, segmentação de partes do corpo, estimação de profundidade e previsão de normais de superfície a partir de imagens em configurações naturais. Neste trabalho, Sapiens visa desenvolver modelos para essas tarefas essenciais de visão humana que se generalizam para configurações in-the-wild. Atualmente, os maiores modelos de linguagem acessíveis publicamente contêm mais de 100B parâmetros, enquanto os modelos de linguagem mais comumente usados contêm cerca de 7B parâmetros. Em contraste, os Transformadores de Visão (ViT), apesar de compartilharem uma arquitetura semelhante, não foram escalados com sucesso a essa extensão. Embora haja esforços notáveis nessa direção, incluindo o desenvolvimento de um ViT denso treinado em texto e imagens e a formulação de técnicas para o treinamento estável de um ViT-22B, os backbone de visão comumente utilizados variam entre 300M a 600M parâmetros e são principalmente pré-treinados em uma resolução de imagem de cerca de 224 pixels. Da mesma forma, os modelos de geração de imagens baseados em transformadores existentes, como DiT, usam menos de 700M parâmetros e operam em um espaço latente altamente compresso. Para abordar essa lacuna, Sapiens apresenta uma coleção de modelos ViT de alta resolução e grande escala que são pré-treinados nativamente em uma resolução de imagem de 1024 pixels em milhões de imagens humanas.

Sapiens apresenta uma família de modelos para quatro tarefas fundamentais de visão centrada no ser humano: estimação de pose 2D, segmentação de partes do corpo, estimação de profundidade e previsão de normais de superfície. Os modelos Sapiens suportam nativamente inferência de alta resolução de 1K e são extremamente fáceis de adaptar para tarefas individuais simplesmente ajustando modelos pré-treinados em mais de 300 milhões de imagens humanas in-the-wild. Sapiens observa que, dado o mesmo orçamento computacional, o pré-treinamento auto-supervisionado em um conjunto de dados curado de imagens humanas aumenta significativamente o desempenho para um conjunto diverso de tarefas centradas no ser humano. Os modelos resultantes exibem uma generalização notável para dados in-the-wild, mesmo quando os dados rotulados são escassos ou inteiramente sintéticos. O design simples do modelo também traz escalabilidade — o desempenho do modelo em tarefas melhora à medida que o número de parâmetros aumenta de 0,3 para 2 bilhões. Sapiens consistentemente supera as linhas de base existentes em várias benchmarks centradas no ser humano, alcançando melhorias significativas sobre os resultados anteriores de ponta: 7,6 mAP em Humans-5K (pose), 17,1 mIoU em Humans-2K (part-seg), 22,4% de erro relativo RMSE em Hi4D (profundidade) e 53,5% de erro relativo angular em THuman2 (normal).

Sapiens: Avanço na Visão Humana

Nos últimos anos, houve avanços notáveis na geração de humanos fotorealistas em 2D e 3D. O sucesso desses métodos é grandemente atribuído à estimação robusta de vários ativos, como pontos-chave 2D, segmentação de partes do corpo de granulação fina, profundidade e normais de superfície. No entanto, a estimação robusta e precisa desses ativos permanece uma área de pesquisa ativa, e sistemas complicados para melhorar o desempenho para tarefas individuais frequentemente dificultam a adoção mais ampla. Além disso, obter anotações de ground-truth precisas in-the-wild é notoriamente difícil de escalar. O objetivo de Sapiens é fornecer um framework unificado e modelos para inferir esses ativos in-the-wild, desbloqueando uma ampla gama de aplicações centradas no ser humano para todos.

Sapiens argumenta que tais modelos centrados no ser humano devem atender a três critérios: generalização, aplicabilidade ampla e alta fidelidade. A generalização garante a robustez em condições não vistas, permitindo que o modelo desempenhe consistentemente em ambientes variados. A aplicabilidade ampla indica a versatilidade do modelo, tornando-o adequado para uma ampla gama de tarefas com modificações mínimas. A alta fidelidade denota a capacidade do modelo de produzir saídas precisas e de alta resolução, essenciais para tarefas de geração de humanos fiéis. Este artigo detalha o desenvolvimento de modelos que incorporam esses atributos, coletivamente referidos como Sapiens.

Seguindo insights, Sapiens aproveita grandes conjuntos de dados e arquiteturas de modelo escaláveis, chaves para a generalização. Para uma aplicabilidade mais ampla, Sapiens adota a abordagem de pré-treinamento e, em seguida, ajuste fino, permitindo a adaptação pós-pré-treinamento a tarefas específicas com ajustes mínimos. Essa abordagem levanta uma pergunta crítica: que tipo de dados é mais eficaz para o pré-treinamento? Dadas as limitações computacionais, deve-se enfatizar a coleta de tantas imagens humanas quanto possível, ou é preferível pré-treinar em um conjunto de dados menos curado para refletir melhor a variabilidade do mundo real? Métodos existentes frequentemente ignoram a distribuição dos dados de pré-treinamento no contexto de tarefas downstream. Para estudar a influência da distribuição dos dados de pré-treinamento em tarefas específicas de humanos, Sapiens coleta o conjunto de dados Humans-300M, com 300 milhões de imagens humanas diversificadas. Essas imagens não rotuladas são usadas para pré-treinar uma família de transformadores de visão do zero, com contagens de parâmetros variando de 300M a 2B.

Entre vários métodos de auto-supervisão para aprender recursos visuais de propósito geral a partir de grandes conjuntos de dados, Sapiens escolhe a abordagem de codificador-autores mascarados (MAE) por sua simplicidade e eficiência no pré-treinamento. MAE, com um modelo de inferência de uma única passagem em comparação com estratégias contrastivas ou de multi-inferência, permite processar um volume maior de imagens com os mesmos recursos computacionais. Para uma fidelidade mais alta, em contraste com métodos anteriores, Sapiens aumenta a resolução de entrada nativa de seu pré-treinamento para 1024 pixels, resultando em um aumento aproximado de 4× em FLOPs em comparação com o maior backbone de visão existente. Cada modelo é pré-treinado em 1,2 trilhão de tokens. Para o ajuste fino em tarefas centradas no ser humano, Sapiens usa uma arquitetura codificador-decodificador consistente. O codificador é inicializado com pesos do pré-treinamento, enquanto o decodificador, uma cabeça leve e específica da tarefa, é inicializado aleatoriamente. Ambos os componentes são, em seguida, ajustados finos de ponta a ponta. Sapiens se concentra em quatro tarefas-chave: estimação de pose 2D, segmentação de partes do corpo, profundidade e estimação de normais, como demonstrado na figura a seguir.

Consistente com estudos anteriores, Sapiens afirma o impacto crítico da qualidade do rótulo no desempenho in-the-wild do modelo. Benchmarks públicos frequentemente contêm rótulos ruins, fornecendo sinais de supervisão inconsistentes durante o ajuste fino do modelo. Ao mesmo tempo, é importante utilizar anotações precisas e detalhadas para alinhar-se estreitamente com o objetivo principal de Sapiens de digitalização 3D de humanos. Para esse fim, Sapiens propõe um conjunto de pontos-chave 2D de corpo inteiro substancialmente mais denso para estimação de pose e um vocabulário de classes detalhado para segmentação de partes do corpo, superando o escopo de conjuntos de dados anteriores. Especificamente, Sapiens introduz uma coleção abrangente de 308 pontos-chave que abrangem o corpo, mãos, pés, superfície e rosto. Além disso, Sapiens expande o vocabulário de classes de segmentação para 28 classes, cobrindo partes do corpo como cabelo, língua, dentes, lábio superior/inferior e torso. Para garantir a qualidade e a consistência das anotações e um alto grau de automação, Sapiens utiliza um setup de captura multi-visão para coletar anotações de pose e segmentação. Sapiens também utiliza dados sintéticos centrados no ser humano para estimação de profundidade e normais, aproveitando 600 digitalizações detalhadas de RenderPeople para gerar mapas de profundidade de alta resolução e normais de superfície. Sapiens demonstra que a combinação do pré-treinamento em larga escala com anotações limitadas, mas de alta qualidade, leva a uma generalização robusta in-the-wild. No geral, o método Sapiens mostra uma estratégia eficaz para desenvolver modelos discriminativos altamente precisos capazes de performar em cenários do mundo real sem a necessidade de coletar um conjunto caro e diverso de anotações.

Sapiens: Método e Arquitetura

Sapiens segue a abordagem de codificador-autores mascarados (MAE) para pré-treinamento. O modelo é treinado para reconstruir a imagem humana original dada sua observação parcial. Como todos os auto-encoders, o modelo Sapiens tem um codificador que mapeia a imagem visível para uma representação latente e um decodificador que reconstrói a imagem original a partir dessa representação latente. O conjunto de dados de pré-treinamento consiste em imagens de um e vários humanos, com cada imagem redimensionada para um tamanho fixo com uma proporção de aspecto quadrada. Semelhante ao ViT, a imagem é dividida em patches regulares não sobrepostos com um tamanho de patch fixo. Um subconjunto desses patches é selecionado aleatoriamente e mascarado, deixando o restante visível. A proporção de patches mascarados para os visíveis, conhecida como taxa de mascaramento, permanece fixa durante o treinamento.

Os modelos Sapiens exibem generalização em uma variedade de características de imagem, incluindo escalas, cortes, idade e etnia dos sujeitos e número de sujeitos. Cada token de patch no modelo conta por 0,02% da área da imagem em comparação com 0,4% nos ViTs padrão, uma redução de 16× — fornecendo um raciocínio inter-token de granulação fina para os modelos. Mesmo com uma taxa de mascaramento aumentada de 95%, o modelo Sapiens alcança uma reconstrução plausível da anatomia humana em amostras mantidas. A reconstrução do modelo pré-treinado Sapiens em imagens humanas não vistas é demonstrada na imagem a seguir.

Além disso, Sapiens utiliza um conjunto de dados grande e proprietário para pré-treinamento, consistindo de aproximadamente 1 bilhão de imagens in-the-wild, focando exclusivamente em imagens humanas. O pré-processamento envolve descartar imagens com marcas d’água, texto, representações artísticas ou elementos não naturais. Sapiens, em seguida, usa um detector de caixa delimitadora de pessoa off-the-shelf para filtrar as imagens, retenção das imagens com uma pontuação de detecção acima de 0,9 e dimensões da caixa delimitadora excedendo 300 pixels. Mais de 248 milhões de imagens no conjunto de dados contêm vários sujeitos.

Estimação de Pose 2D

A estrutura Sapien ajusta finos o codificador e decodificador em P em vários esqueletos, incluindo K = 17 [67], K = 133 [55] e um esqueleto altamente detalhado, com K = 308, como mostrado na figura a seguir.

Em comparação com formatos existentes com no máximo 68 pontos-chave faciais, as anotações de Sapiens consistem em 243 pontos-chave faciais, incluindo pontos representativos ao redor dos olhos, lábios, nariz e orelhas. Esse design é personalizado para capturar meticulosamente os detalhes nuances das expressões faciais no mundo real. Com esses pontos-chave, a estrutura Sapiens anotou manualmente 1 milhão de imagens em resolução 4K de um setup de captura indoor. Semelhante a tarefas anteriores, definimos os canais de saída do decodificador do estimador de normais N como 3, correspondendo aos componentes xyz do vetor normal em cada pixel. Os dados sintéticos gerados também são usados como supervisão para a estimação de normais de superfície.

Sapiens: Experimento e Resultados

Sapiens-2B é pré-treinado usando 1024 GPUs A100 por 18 dias com PyTorch. Sapiens usa o otimizador AdamW para todos os experimentos. O cronograma de aprendizado inclui um breve aquecimento linear, seguido de annealing cosseno para pré-treinamento e decaimento linear para ajuste fino. Todos os modelos são pré-treinados do zero em uma resolução de 1024 × 1024 com um tamanho de patch de 16. Para o ajuste fino, a imagem de entrada é redimensionada para uma proporção de 4:3, ou seja, 1024 × 768. Sapiens aplica augmentações padrão como recorte, dimensionamento, flip e distorções fotométricas. Um fundo aleatório de imagens COCO não humanas é adicionado para tarefas de segmentação, profundidade e previsão de normais. Importante, Sapiens usa taxas de aprendizado diferenciais para preservar a generalização, com taxas de aprendizado mais baixas para as camadas iniciais e taxas progressivamente mais altas para as camadas subsequentes. O decaimento da taxa de aprendizado por camada é definido como 0,85 com um decaimento de peso de 0,1 para o codificador.

As especificações de design de Sapiens são detalhadas na tabela a seguir. Seguindo uma abordagem específica, Sapiens prioriza a escalabilidade dos modelos em largura em vez de profundidade. Notavelmente, o modelo Sapiens-0,3B, embora arquitetonicamente semelhante ao ViT-Large tradicional, consiste em vinte vezes mais FLOPs devido à sua resolução mais alta.

Sapiens é ajustado finos para estimação de pose de face, corpo, pés e mãos (K = 308) usando anotações de alta fidelidade. Para o treinamento, Sapiens usa o conjunto de treinamento com 1M imagens, e para a avaliação, usa o conjunto de teste, nomeado Humans5K, com 5K imagens. A avaliação segue uma abordagem de cima para baixo, onde Sapiens usa um detector off-the-shelf para caixas delimitadoras e realiza a inferência de pose de um humano de cada vez. A Tabela 3 mostra uma comparação dos modelos Sapiens com métodos existentes para estimação de pose de corpo inteiro. Todos os métodos são avaliados em 114 pontos-chave comuns entre o vocabulário de 308 pontos-chave de Sapiens e o vocabulário de 133 pontos-chave de COCO-WholeBody. Sapiens-0,6B supera a técnica de ponta atual, DWPose-l, por +2,8 AP. Ao contrário de DWPose, que utiliza um complexo framework de estudante-professor com destilação de recursos personalizada para a tarefa, Sapiens adota uma arquitetura codificador-decodificador geral com um grande pré-treinamento centrado no ser humano.

Interessantemente, mesmo com a mesma contagem de parâmetros, os modelos Sapiens demonstram desempenho superior em comparação com seus equivalentes. Por exemplo, Sapiens-0,3B excede VitPose+-L por +5,6 AP, e Sapiens-0,6B supera VitPose+-H por +7,9 AP. Dentro da família Sapiens, os resultados indicam uma correlação direta entre o tamanho do modelo e o desempenho. Sapiens-2B estabelece um novo estado da arte com 61,1 AP, uma melhoria significativa de +7,6 AP sobre a arte anterior. Apesar de ajustar finos com anotações de um estúdio indoor, Sapiens demonstra uma generalização robusta para cenários do mundo real, como mostrado na figura a seguir.

Sapiens é ajustado finos e avaliado usando um vocabulário de segmentação de 28 classes. O conjunto de treinamento consiste em 100K imagens, enquanto o conjunto de teste, Humans-2K, consiste em 2K imagens. Sapiens é comparado com métodos existentes de segmentação de partes do corpo ajustados finos no mesmo conjunto de treinamento, usando os checkpoints pré-treinados sugeridos por cada método como inicialização. Semelhante à estimação de pose, Sapiens mostra generalização na segmentação, como demonstrado na tabela a seguir.

Interessantemente, o modelo menor, Sapiens-0,3B, supera os métodos de segmentação de ponta existentes, como Mask2Former e DeepLabV3+, por 12,6 mIoU devido à sua resolução mais alta e ao grande pré-treinamento centrado no ser humano. Além disso, o aumento do tamanho do modelo melhora ainda mais o desempenho de segmentação. Sapiens-2B alcança o melhor desempenho, com 81,2 mIoU e 89,4 mAcc no conjunto de teste, e a figura a seguir mostra os resultados qualitativos dos modelos Sapiens.

Conclusão

Sapiens representa um passo significativo em direção ao avanço dos modelos de visão centrados no ser humano para o reino dos modelos de fundação. Os modelos Sapiens demonstram fortes capacidades de generalização em uma variedade de tarefas centradas no ser humano. O desempenho de ponta é atribuído a: (i) pré-treinamento em larga escala em um conjunto de dados curado especificamente projetado para entender humanos, (ii) backbones de transformadores de visão de alta resolução e alta capacidade escalados, e (iii) anotações de alta qualidade em dados de estúdio e sintéticos aumentados. Os modelos Sapiens têm o potencial de se tornar um bloco de construção fundamental para uma multitude de tarefas downstream e fornecer acesso a backbones de visão de alta qualidade para uma parte significativamente maior da comunidade.

Um engenheiro por profissão, um escritor por coração. Kunal é um escritor técnico com um amor e compreensão profundos de AI e ML, dedicado a simplificar conceitos complexos nestes campos por meio de sua documentação envolvente e informativa.