Florence-2: el último modelo de lenguaje visual de Microsoft
Conoce Florence-2, el modelo de lenguaje visual de Microsoft que ofrece una detección de objetos, segmentación y rendimiento zero-shot mejorados con gran eficiencia.

En junio de 2024, Microsoft presentó Florence-2, un modelo de lenguaje visual (VLM) multimodal diseñado para gestionar una amplia gama de tareas, incluyendo detección de objetos, segmentación, subtitulado de imágenes y grounding. Florence-2 establece un nuevo estándar en rendimiento zero-shot, lo que significa que puede realizar tareas sin un entrenamiento previo específico, y cuenta con un tamaño de modelo menor que otros modelos de lenguaje visual de última generación.
Es más que un simple modelo; la versatilidad y el rendimiento mejorado de Florence-2 tienen el potencial de impactar significativamente en diversas industrias al mejorar la precisión y reducir la necesidad de un entrenamiento extensivo. En este artículo, exploraremos las características innovadoras de Florence-2, compararemos su rendimiento con otros VLM y discutiremos sus posibles aplicaciones.
Link to this section¿Qué es Florence-2?#
Florence-2 puede manejar una variedad de tareas dentro de un único marco unificado. Las impresionantes capacidades del modelo se deben en parte a su enorme conjunto de datos de entrenamiento llamado FLD-5B. FLD-5B incluye 5.4 mil millones de anotaciones en 126 millones de imágenes. Este conjunto de datos integral fue creado específicamente para dotar a Florence-2 de las capacidades necesarias para manejar una amplia gama de tareas de visión con alta precisión y eficiencia.
Aquí tienes un vistazo más de cerca a las tareas que admite Florence-2:
- Detección de Objetos: Puede identificar y localizar objetos dentro de imágenes con alta precisión.
- Segmentación: Esta tarea implica dividir una imagen en segmentos significativos para facilitar su análisis e interpretación.
- Subtitulado de Imágenes: Florence-2 es capaz de generar subtítulos descriptivos para imágenes que proporcionan contexto y detalles.
- Grounding Visual: El modelo puede asociar frases o palabras específicas en un subtítulo con las regiones correspondientes en la imagen.
- Rendimiento Zero-shot: Puede realizar tareas sin entrenamiento específico.

Fig 1. Entendiendo cómo se entrenó Florence-2.
El modelo admite tareas tanto basadas en texto como en regiones. Se añaden tokens de ubicación especiales al vocabulario del modelo para tareas que involucran regiones específicas de una imagen. Estos tokens ayudan al modelo a entender diferentes formas, como rectángulos alrededor de objetos (representación de caja), formas de cuatro lados (representación de caja cuádruple) y formas de muchos lados (representación de polígono). El modelo se entrena utilizando un método llamado pérdida de entropía cruzada (cross-entropy loss), que le ayuda a aprender comparando sus predicciones con las respuestas correctas y ajustando sus parámetros internos en consecuencia.
Link to this sectionCreación del conjunto de datos FLD-5B#
El conjunto de datos FLD-5B incluye diferentes tipos de anotaciones: descripciones de texto, pares de regiones y texto, y combinaciones de texto, frases y regiones. Se creó mediante un proceso de dos pasos que involucra recopilación y anotación de datos. Las imágenes se obtuvieron de conjuntos de datos populares como ImageNet-22k, Object 365, Open Images, Conceptual Captions y LAION. Las anotaciones en el conjunto de datos FLD-5B son en su mayoría sintéticas, lo que significa que fueron generadas automáticamente en lugar de etiquetadas manualmente.

Fig 2. Creación del conjunto de datos FLD-5B.
Inicialmente, modelos especialistas capacitados en tareas específicas, como la detección de objetos o la segmentación, crearon estas anotaciones. Luego, se utilizó un proceso de filtrado y mejora para asegurarse de que las anotaciones fueran detalladas y precisas. Tras eliminar cualquier ruido, el conjunto de datos pasó por un refinamiento iterativo, donde las salidas de Florence-2 se utilizaron para actualizar y mejorar continuamente las anotaciones.
Link to this sectionEntendiendo la arquitectura del modelo de Florence-2#
La arquitectura del modelo de Florence-2 sigue un enfoque de aprendizaje de secuencia a secuencia. Esto significa que el modelo procesa una secuencia de entrada (como una imagen con una instrucción de texto) y genera una secuencia de salida (como una descripción o una etiqueta) paso a paso. En el marco de trabajo de secuencia a secuencia, cada tarea se trata como un problema de traducción: el modelo toma una imagen de entrada y una instrucción específica de la tarea y genera la salida correspondiente.

Fig 3. Arquitectura del modelo de lenguaje visual de Florence-2.
En el núcleo de la arquitectura del modelo hay un Transformer codificador-decodificador multimodal, que combina un codificador de imágenes y un codificador-decodificador multimodal. El codificador de imágenes, llamado DaViT (Data-efficient Vision Transformer), procesa las imágenes de entrada convirtiéndolas en embeddings de tokens visuales: representaciones compactas de la imagen que capturan tanto información espacial (dónde están las cosas) como semántica (qué son las cosas). Estos tokens visuales se combinan luego con embeddings de texto (representaciones del texto), permitiendo al modelo fusionar sin problemas datos textuales y visuales.
Link to this sectionComparación de Florence-2 con otros VLM#
Florence-2 destaca entre otros modelos de lenguaje visual debido a sus impresionantes capacidades zero-shot. A diferencia de modelos como PaliGemma, que dependen de un ajuste fino (fine-tuning) extenso para adaptarse a varias tareas, Florence-2 funciona bien desde el primer momento. Además, Florence-2 es capaz de competir con modelos más grandes como GPT-4V y Flamingo, que a menudo tienen muchos más parámetros pero no siempre igualan el rendimiento de Florence-2. Por ejemplo, Florence-2 logra mejores resultados zero-shot que Kosmos-2, a pesar de que Kosmos-2 tiene más del doble de parámetros.
En pruebas de referencia (benchmark), Florence-2 ha mostrado un rendimiento notable en tareas como el subtitulado de COCO y la comprensión de expresiones de referencia. Superó a modelos como PolyFormer y UNINEXT en tareas de detección de objetos y segmentación en el conjunto de datos COCO. Es una opción altamente competitiva para aplicaciones del mundo real donde tanto el rendimiento como la eficiencia de los recursos son cruciales.
Link to this sectionAplicaciones de Florence-2#
Florence-2 puede utilizarse en muchas industrias diferentes, como entretenimiento, accesibilidad, educación, etc. Veamos algunos ejemplos para comprenderlo mejor.
Link to this sectionAplicaciones del subtitulado de imágenes#
Cuando estás en una plataforma de streaming intentando decidir qué ver, es posible que leas un resumen de una película para ayudarte a elegir. ¿Qué pasaría si la plataforma también pudiera proporcionar una descripción detallada del póster de la película? Florence-2 puede hacerlo posible mediante el subtitulado de imágenes, que genera texto descriptivo para las imágenes. Florence-2 puede generar descripciones detalladas de los pósters de películas, haciendo que las plataformas de streaming sean más inclusivas para los usuarios con discapacidad visual. Al analizar los elementos visuales de un póster, como personajes, escenarios y texto, Florence-2 puede crear descripciones detalladas que transmitan el contenido y el estado de ánimo del póster. La imagen a continuación muestra el nivel de detalle que Florence-2 puede proporcionar en su descripción.

Fig 4. Un ejemplo de un subtítulo de imagen generado por Florence-2.
Aquí hay otros ejemplos donde el subtitulado de imágenes puede ser útil:
- Comercio electrónico: El subtitulado de imágenes puede proporcionar descripciones detalladas de imágenes de productos, ayudando a los clientes a entender las características y detalles de los productos con mayor claridad.
- Viajes y turismo: Puede proporcionar descripciones detalladas de puntos de referencia y atracciones en guías de viaje y aplicaciones.
- Educación: El subtitulado de imágenes puede etiquetar y describir imágenes y diagramas educativos, ayudando en la enseñanza y el aprendizaje.
- Bienes raíces: Puede proporcionar descripciones detalladas de imágenes de propiedades que resaltan características y comodidades para posibles compradores.
Link to this sectionUso del grounding visual al cocinar#
Florence-2 también se puede utilizar para enriquecer las experiencias culinarias. Por ejemplo, un libro de cocina en línea podría usar Florence-2 para realizar el grounding visual y etiquetar partes de la imagen de una receta compleja. El grounding visual ayuda aquí al vincular partes específicas de la imagen con el texto descriptivo correspondiente. Cada ingrediente y paso puede ser etiquetado y explicado con precisión, lo que facilita que los cocineros caseros sigan la receta y entiendan el papel de cada componente en el plato.

Fig 5. Un ejemplo de grounding visual usando Florence-2.
Link to this sectionOCR basado en regiones para documentos financieros#
El OCR con procesamiento basado en regiones, que se enfoca en extraer texto de áreas específicas dentro de un documento, puede ser útil cuando se trata de campos como la contabilidad. Se pueden analizar áreas designadas de documentos financieros para extraer automáticamente información importante como detalles de transacciones, números de cuenta y fechas de vencimiento. Al reducir la necesidad de entrada manual de datos, minimiza errores y acelera los tiempos de procesamiento. Las instituciones financieras pueden utilizarlo para agilizar tareas como el procesamiento de facturas, la conciliación de recibos y la compensación de cheques, lo que conduce a transacciones más rápidas y un mejor servicio al cliente.

Fig 6. Un ejemplo de extracción de OCR con región usando Florence-2.
Link to this sectionSegmentación basada en regiones en aplicaciones industriales#
La segmentación basada en regiones, que implica dividir una imagen en partes significativas para un análisis enfocado y una inspección detallada, puede impulsar aplicaciones industriales que mejoran la precisión y la eficiencia en diversos procesos. Al centrarse en áreas específicas dentro de una imagen, esta tecnología permite una inspección y un análisis detallados de componentes y productos. Con respecto al control de calidad, puede identificar defectos o inconsistencias en los materiales, como grietas o desalineaciones, asegurando que solo productos de alta calidad lleguen al mercado.

Fig 7. Un ejemplo de segmentación basada en regiones usando Florence-2.
También mejora las líneas de ensamblaje automatizadas al guiar a los brazos robóticos hacia piezas específicas y optimizar la colocación y el ensamblaje de los componentes. De manera similar, en la gestión de inventarios, ayuda a rastrear y monitorear el estado y la ubicación de los productos, lo que lleva a una logística más eficiente y a una reducción del tiempo de inactividad. En general, la segmentación basada en regiones aumenta la precisión y la productividad, lo que conlleva un ahorro de costes y una mayor calidad del producto en entornos industriales.
Link to this sectionConclusiones clave#
Estamos empezando a ver una tendencia donde los modelos de IA se vuelven más ligeros manteniendo un alto rendimiento. Florence-2 marca un gran paso adelante en términos de modelos de lenguaje visual. Puede manejar varias tareas como detección de objetos, segmentación, subtitulado de imágenes y grounding con un impresionante rendimiento zero-shot. A pesar de su tamaño más pequeño, Florence-2 es eficiente y multifuncional, lo que lo hace extremadamente útil en términos de aplicaciones en diferentes industrias. Modelos como Florence-2 están poniendo más posibilidades sobre la mesa, expandiendo el potencial para las innovaciones en IA.
Explora más sobre IA visitando nuestro repositorio de GitHub y uniéndote a nuestra comunidad. Echa un vistazo a nuestras páginas de soluciones para leer sobre las aplicaciones de IA en fabricación y agricultura. 🚀






