Connect with us

Inteligencia artificial

Sapiens: Fundación para Modelos de Visión Humana

mm
Sapiens: Foundation for Human Vision Models

El éxito notable de la preentrenación a gran escala seguida de una afinación específica de tarea para el modelado de lenguaje ha establecido este enfoque como una práctica estándar. De manera similar, los métodos de visión por computadora están adoptando progresivamente escalas de datos extensas para la preentrenación. La aparición de grandes conjuntos de datos, como LAION5B, Instagram-3.5B, JFT-300M, LVD142M, Visual Genome y YFCC100M, ha permitido explorar un corpus de datos más allá del alcance de los benchmarks tradicionales. El trabajo destacado en este dominio incluye DINOv2, MAWS y AIM. DINOv2 logra un rendimiento de estado del arte en la generación de características auto-supervisadas al escalar el método iBot contrastivo en el conjunto de datos LDV-142M. MAWS estudia la escalabilidad de los auto-codificadores enmascarados (MAE) en mil millones de imágenes. AIM explora la escalabilidad de la preentrenación visual auto-regresiva similar a BERT para transformadores de visión. En contraste con estos métodos, que se centran principalmente en la preentrenación de imágenes generales o la clasificación de imágenes de cero disparos, Sapiens adopta un enfoque distintamente centrado en el ser humano: los modelos de Sapiens aprovechan una vasta colección de imágenes humanas para la preentrenación, y luego se afinan para una serie de tareas relacionadas con los seres humanos. La búsqueda de la digitización 3D de seres humanos a gran escala sigue siendo un objetivo crucial en la visión por computadora.

Se ha realizado un progreso significativo dentro de entornos controlados o de estudio, pero persisten desafíos al extender estos métodos a entornos no restringidos. Para abordar estos desafíos, es crucial desarrollar modelos versátiles capaces de realizar múltiples tareas fundamentales, como la estimación de puntos clave, la segmentación de partes del cuerpo, la estimación de profundidad y la predicción de normales de superficie a partir de imágenes en entornos naturales. En este trabajo, Sapiens tiene como objetivo desarrollar modelos para estas tareas esenciales de visión humana que se generalicen a entornos in-the-wild. Actualmente, los modelos de lenguaje más grandes y accesibles públicamente contienen más de 100B parámetros, mientras que los modelos de lenguaje más comúnmente utilizados contienen alrededor de 7B parámetros. En contraste, los Transformadores de Visión (ViT), a pesar de compartir una arquitectura similar, no se han escalado con éxito a esta magnitud. Aunque existen esfuerzos notables en esta dirección, incluyendo el desarrollo de un ViT-4B denso entrenado en texto e imágenes, y la formulación de técnicas para el entrenamiento estable de un ViT-22B, los esqueletos de visión comúnmente utilizados aún oscilan entre 300M y 600M parámetros y se pre-entrenan principalmente a una resolución de imagen de aproximadamente 224 píxeles. De manera similar, los modelos de generación de imágenes basados en transformadores existentes, como DiT, utilizan menos de 700M parámetros y operan en un espacio latente altamente comprimido. Para abordar esta brecha, Sapiens introduce una colección de modelos ViT de gran escala y alta resolución que se pre-entrenan de forma nativa a una resolución de imagen de 1024 píxeles en millones de imágenes humanas.

Sapiens presenta una familia de modelos para cuatro tareas fundamentales de visión centrada en el ser humano: estimación de pose 2D, segmentación de partes del cuerpo, estimación de profundidad y predicción de normales de superficie. Los modelos de Sapiens admiten de forma nativa la inferencia de alta resolución de 1K y son extremadamente fáciles de adaptar para tareas individuales mediante la simple afinación de modelos pre-entrenados en más de 300 millones de imágenes humanas in-the-wild. Sapiens observa que, dado el mismo presupuesto computacional, la pre-entrenación auto-supervisada en un conjunto de datos curado de imágenes humanas mejora significativamente el rendimiento para un conjunto diverso de tareas centradas en el ser humano. Los modelos resultantes exhiben una generalización notable a datos in-the-wild, incluso cuando los datos etiquetados son escasos o completamente sintéticos. El diseño simple del modelo también aporta escalabilidad: el rendimiento del modelo en tareas mejora a medida que la cantidad de parámetros se escala de 0,3 a 2 mil millones. Sapiens supera consistentemente las líneas de base existentes en varios benchmarks centrados en el ser humano, logrando mejoras significativas sobre los resultados de estado del arte anteriores: 7,6 mAP en Humans-5K (pose), 17,1 mIoU en Humans-2K (part-seg), 22,4% de error relativo RMSE en Hi4D (profundidad) y 53,5% de error relativo angular en THuman2 (normal).

Sapiens : Avance en Modelos de Visión Humana

En los últimos años, se han producido avances notables hacia la generación de seres humanos foto-realistas en 2D y 3D. El éxito de estos métodos se atribuye en gran medida a la estimación robusta de varios activos, como puntos clave 2D, segmentación de partes del cuerpo de grano fino, profundidad y normales de superficie. Sin embargo, la estimación robusta y precisa de estos activos sigue siendo un área de investigación activa, y los sistemas complicados para mejorar el rendimiento para tareas individuales a menudo obstaculizan una adopción más amplia. Además, obtener anotaciones de referencia precisas in-the-wild es notoriamente difícil de escalar. El objetivo de Sapiens es proporcionar un marco unificado y modelos para inferir estos activos in-the-wild, desbloqueando una amplia gama de aplicaciones centradas en el ser humano para todos.

Sapiens argumenta que dichos modelos centrados en el ser humano deben satisfacer tres criterios: generalización, aplicabilidad amplia y alta fidelidad. La generalización garantiza la robustez ante condiciones no vistas, permitiendo que el modelo se desempeñe de manera consistente en entornos variados. La aplicabilidad amplia indica la versatilidad del modelo, haciéndolo adecuado para una amplia gama de tareas con modificaciones mínimas. La alta fidelidad denota la capacidad del modelo para producir salidas precisas y de alta resolución, esenciales para tareas de generación de seres humanos fieles. Este documento detalla el desarrollo de modelos que encarnan estos atributos, colectivamente referidos como Sapiens.

Siguiendo estas ideas, Sapiens aprovecha grandes conjuntos de datos y arquitecturas de modelo escalables, clave para la generalización. Para una mayor aplicabilidad, Sapiens adopta el enfoque de pre-entrenar y luego afinar, permitiendo la adaptación post-pre-entrenamiento a tareas específicas con ajustes mínimos. Este enfoque plantea una pregunta crítica: ¿Qué tipo de datos es más efectivo para la pre-entrenación? Dado los límites computacionales, ¿debe hacerse hincapié en recopilar tantas imágenes humanas como sea posible, o es preferible pre-entrenar en un conjunto de datos menos curado para reflejar mejor la variabilidad del mundo real? Los métodos existentes a menudo pasan por alto la distribución de los datos de pre-entrenación en el contexto de tareas posteriores. Para estudiar la influencia de la distribución de los datos de pre-entrenación en tareas específicas de seres humanos, Sapiens recopila el conjunto de datos Humans-300M, que cuenta con 300 millones de imágenes humanas diversas. Estas imágenes no etiquetadas se utilizan para pre-entrenar una familia de transformadores de visión desde cero, con recuentos de parámetros que van desde 300M hasta 2B.

Entre los varios métodos de auto-supervisión para el aprendizaje de características visuales de propósito general a partir de grandes conjuntos de datos, Sapiens elige el enfoque de auto-codificador enmascarado (MAE) por su simplicidad y eficiencia en la pre-entrenación. MAE, que tiene un modelo de inferencia de un solo paso en comparación con estrategias contrastivas o de multi-inferencia, permite procesar un mayor volumen de imágenes con los mismos recursos computacionales. Para una mayor fidelidad, a diferencia de los métodos anteriores, Sapiens aumenta la resolución de entrada nativa de su pre-entrenamiento a 1024 píxeles, lo que resulta en un aumento aproximado de 4× en FLOPs en comparación con el esqueleto de visión más grande existente. Cada modelo se pre-entrena en 1,2 billones de tokens. Para la afinación en tareas centradas en el ser humano, Sapiens utiliza una arquitectura codificador-decodificador consistente. El codificador se inicializa con pesos desde la pre-entrenación, mientras que el decodificador, una cabeza ligera y específica de la tarea, se inicializa aleatoriamente. Ambos componentes se afinan de manera end-to-end. Sapiens se centra en cuatro tareas clave: estimación de pose 2D, segmentación de partes del cuerpo, profundidad y estimación de normales, como se demuestra en la siguiente figura.

Consistente con estudios anteriores, Sapiens afirma el impacto crítico de la calidad de la etiqueta en el rendimiento in-the-wild del modelo. Los benchmarks públicos a menudo contienen etiquetas ruidosas, proporcionando señales de supervisión inconsistentes durante la afinación del modelo. Al mismo tiempo, es importante utilizar anotaciones precisas y detalladas para alinearse estrechamente con el objetivo principal de Sapiens de digitización 3D de seres humanos. Con este fin, Sapiens propone un conjunto de puntos clave de cuerpo completo 2D sustancialmente más denso para la estimación de pose y un vocabulario de clase detallado para la segmentación de partes del cuerpo, superando el alcance de los conjuntos de datos anteriores. En particular, Sapiens introduce una colección exhaustiva de 308 puntos clave que abarcan el cuerpo, las manos, los pies, la superficie y la cara. Además, Sapiens amplía el vocabulario de clases de segmentación a 28 clases, cubriendo partes del cuerpo como el cabello, la lengua, los dientes, el labio superior/inferior y el torso. Para garantizar la calidad y la coherencia de las anotaciones y un alto grado de automatización, Sapiens utiliza un conjunto de captura multi-vista para recopilar anotaciones de pose y segmentación. Sapiens también utiliza datos sintéticos centrados en el ser humano para la estimación de profundidad y normales, aprovechando 600 escaneos detallados de RenderPeople para generar mapas de profundidad y normales de superficie de alta resolución. Sapiens demuestra que la combinación de la pre-entrenación a gran escala con anotaciones de alta calidad limitadas conduce a una generalización in-the-wild robusta. En general, el método de Sapiens muestra una estrategia efectiva para desarrollar modelos discriminativos altamente precisos capaces de funcionar en escenarios del mundo real sin la necesidad de recopilar un conjunto costoso y diverso de anotaciones.

Sapiens : Método y Arquitectura

Sapiens sigue el enfoque de auto-codificador enmascarado (MAE) para la pre-entrenación. El modelo se entrena para reconstruir la imagen humana original dada su observación parcial. Al igual que todos los auto-codificadores, el modelo de Sapiens tiene un codificador que mapea la imagen visible a una representación latente y un decodificador que reconstruye la imagen original a partir de esta representación latente. El conjunto de datos de pre-entrenación consiste en imágenes de un solo ser humano y múltiples seres humanos, con cada imagen redimensionada a un tamaño fijo con una relación de aspecto cuadrada. Similar a ViT, la imagen se divide en parches regulares no superpuestos con un tamaño de parche fijo. Un subconjunto de estos parches se selecciona aleatoriamente y se enmascara, dejando el resto visible. La proporción de parches enmascarados a parches visibles, conocida como la relación de enmascaramiento, permanece fija durante el entrenamiento.

Los modelos de Sapiens exhiben generalización en una variedad de características de imagen, incluyendo escalas, recortes, la edad y el origen étnico de los sujetos, y el número de sujetos. Cada token de parche en el modelo cuenta por 0,02% del área de la imagen en comparación con 0,4% en ViTs estándar, lo que proporciona una razón de 16× para la razón de inter-razonamiento de tokens para los modelos. Incluso con una relación de enmascaramiento aumentada del 95%, el modelo de Sapiens logra una reconstrucción plausible de la anatomía humana en muestras retenidas. La reconstrucción del modelo pre-entrenado de Sapiens en imágenes humanas no vistas se demuestra en la siguiente imagen.

Además, Sapiens utiliza un conjunto de datos grande y propio para la pre-entrenación, que consiste aproximadamente en 1.000 millones de imágenes in-the-wild, centrándose exclusivamente en imágenes humanas. El pre-procesamiento implica descartar imágenes con marcas de agua, texto, representaciones artísticas o elementos no naturales. Sapiens utiliza entonces un detector de cuadro delimitador de persona de fábrica para filtrar las imágenes, reteniendo aquellas con una puntuación de detección superior a 0,9 y dimensiones de cuadro delimitador superiores a 300 píxeles. Más de 248 millones de imágenes en el conjunto de datos contienen varios sujetos.

Estimación de Pose 2D

El marco de Sapiens afina el codificador y el decodificador en P a través de múltiples esqueletos, incluyendo K = 17 [67], K = 133 [55] y un esqueleto altamente detallado, con K = 308, como se muestra en la siguiente figura.

En comparación con formatos existentes con un máximo de 68 puntos clave faciales, las anotaciones de Sapiens consisten en 243 puntos clave faciales, incluyendo puntos representativos alrededor de los ojos, los labios, la nariz y las orejas. Este diseño está pensado para capturar minuciosamente los matices de las expresiones faciales en el mundo real. Con estos puntos clave, el marco de Sapiens anotó manualmente 1 millón de imágenes a una resolución de 4K desde un conjunto de captura interior. De manera similar a tareas anteriores, se establecieron los canales de salida del decodificador del estimador de normales N en 3, correspondientes a los componentes xyz del vector normal en cada píxel. Los datos sintéticos generados también se utilizan como supervisión para la estimación de normales de superficie.

Sapiens : Experimento y Resultados

Sapiens-2B se pre-entrena utilizando 1024 GPUs A100 durante 18 días con PyTorch. Sapiens utiliza el optimizador AdamW para todos los experimentos. El calendario de aprendizaje incluye un breve calentamiento lineal, seguido de un anealing coseno para la pre-entrenación y un decaimiento lineal para la afinación. Todos los modelos se pre-entrenan desde cero a una resolución de 1024 × 1024 con un tamaño de parche de 16. Para la afinación, la imagen de entrada se redimensiona a una relación de aspecto de 4:3, es decir, 1024 × 768. Sapiens aplica aumentos estándar como recorte, escalado, volteo y distorsiones fotométricas. Un fondo aleatorio de imágenes no humanas de COCO se agrega para tareas de segmentación, profundidad y predicción de normales. Es importante que Sapiens utilice tasas de aprendizaje diferenciales para preservar la generalización, con tasas de aprendizaje más bajas para las capas iniciales y tasas progresivamente más altas para las capas posteriores. El decaimiento de la tasa de aprendizaje por capa se establece en 0,85 con un decaimiento de peso de 0,1 para el codificador.

Las especificaciones de diseño de Sapiens se detallan en la siguiente tabla. Siguiendo un enfoque específico, Sapiens prioriza la escalabilidad de los modelos por anchura en lugar de profundidad. Notablemente, el modelo Sapiens-0,3B, aunque arquitectónicamente similar al ViT-Large tradicional, consta de veinte veces más FLOPs debido a su mayor resolución.

Sapiens se afina para la estimación de pose de cara, cuerpo, pies y manos (K = 308) utilizando anotaciones de alta fidelidad. Para el entrenamiento, Sapiens utiliza el conjunto de entrenamiento con 1 millón de imágenes, y para la evaluación, utiliza el conjunto de prueba llamado Humans5K, con 5.000 imágenes. La evaluación sigue un enfoque de arriba hacia abajo, donde Sapiens utiliza un detector de cuadro delimitador de fábrica para los cuadros delimitadores y realiza una inferencia de pose de un solo ser humano. La tabla 3 muestra una comparación de los modelos de Sapiens con métodos existentes para la estimación de pose de cuerpo completo. Todos los métodos se evalúan en 114 puntos clave comunes entre el vocabulario de 308 puntos clave de Sapiens y el vocabulario de 133 puntos clave de COCO-WholeBody. Sapiens-0,6B supera al estado del arte actual, DWPose-l, en +2,8 AP. A diferencia de DWPose, que utiliza un marco complejo de estudiante-maestro con destilación de características adaptado para la tarea, Sapiens adopta una arquitectura codificador-decodificador general con una pre-entrenación a gran escala centrada en el ser humano.

Resulta interesante que, incluso con el mismo recuento de parámetros, los modelos de Sapiens demuestran un rendimiento superior en comparación con sus contrapartes. Por ejemplo, Sapiens-0,3B supera a VitPose+-L en +5,6 AP, y Sapiens-0,6B supera a VitPose+-H en +7,9 AP. Dentro de la familia de Sapiens, los resultados indican una correlación directa entre el tamaño del modelo y el rendimiento. Sapiens-2B establece un nuevo estado del arte con 61,1 AP, una mejora significativa de +7,6 AP sobre los resultados de estado del arte anteriores. A pesar de la afinación con anotaciones de un estudio de interior, Sapiens demuestra una generalización robusta a escenarios del mundo real, como se muestra en la siguiente figura.

Sapiens se afina y se evalúa utilizando un vocabulario de segmentación de 28 clases. El conjunto de entrenamiento consiste en 100.000 imágenes, mientras que el conjunto de prueba, Humans-2K, consiste en 2.000 imágenes. Sapiens se compara con métodos de segmentación de partes del cuerpo existentes afinados en el mismo conjunto de entrenamiento, utilizando los puntos de pre-entrenamiento sugeridos por cada método como inicialización. De manera similar a la estimación de pose, Sapiens muestra generalización en la segmentación, como se demuestra en la siguiente tabla.

Resulta interesante que el modelo más pequeño, Sapiens-0,3B, supere a los métodos de segmentación de estado del arte existentes como Mask2Former y DeepLabV3+ en 12,6 mIoU debido a su mayor resolución y pre-entrenación a gran escala centrada en el ser humano. Además, aumentar el tamaño del modelo mejora aún más el rendimiento de segmentación. Sapiens-2B logra el mejor rendimiento, con 81,2 mIoU y 89,4 mAcc en el conjunto de prueba, como se muestra en la siguiente figura que presenta los resultados cualitativos de los modelos de Sapiens.

Conclusión

Sapiens representa un paso significativo hacia el avance de los modelos de visión centrados en el ser humano en el ámbito de los modelos de fundación. Los modelos de Sapiens demuestran capacidades de generalización fuertes en una variedad de tareas centradas en el ser humano. El rendimiento de estado del arte se atribuye a: (i) la pre-entrenación a gran escala en un conjunto de datos curado específicamente diseñado para comprender a los seres humanos, (ii) la escalabilidad de los esqueletos de transformadores de visión de alta resolución y alta capacidad, y (iii) anotaciones de alta calidad en datos de estudio y sintéticos aumentados. Los modelos de Sapiens tienen el potencial de convertirse en un bloque de construcción clave para una multitud de tareas posteriores y proporcionar acceso a esqueletos de visión de alta calidad a una parte significativamente más amplia de la comunidad.

Un ingeniero por profesión, un escritor por corazón. Kunal es un escritor técnico con un profundo amor y comprensión de la IA y el ML, dedicado a simplificar conceptos complejos en estos campos a través de su documentación atractiva e informativa.