Verificação verde
Link copiado para a área de transferência

Florence-2: O mais recente modelo de visão-linguagem de Microsoft

Apresentamos-te o Florence-2, o modelo de linguagem visual da Microsoft que oferece uma melhor deteção de objectos, segmentação e desempenho de zero-shot com grande eficiência.

Em junho de 2024, a Microsoft apresentou o Florence-2, um modelo de linguagem visual multimodal (VLM) concebido para lidar com uma vasta gama de tarefas, incluindo deteção de objectos, segmentação, legendagem de imagens e aterramento. O Florence-2 estabelece uma nova referência para o desempenho zero-shot, o que significa que pode executar tarefas sem treino específico prévio, e aumenta o tamanho do modelo para um tamanho menor do que outros modelos de linguagem visual de última geração.

A versatilidade e o desempenho melhorado do Florence-2 têm o potencial de afetar significativamente várias indústrias, melhorando a precisão e reduzindo a necessidade de formação extensiva. Neste artigo, vamos explorar as características inovadoras do Florence-2, comparar o seu desempenho com outros VLMs e discutir as suas potenciais aplicações.

O que é Florença-2?

O Florence-2 pode lidar com uma variedade de tarefas numa única estrutura unificada. As impressionantes capacidades do modelo devem-se em parte ao seu enorme conjunto de dados de treino denominado FLD-5B. O FLD-5B inclui 5,4 mil milhões de anotações em 126 milhões de imagens. Este conjunto de dados abrangente foi criado especificamente para dotar o Florence-2 das capacidades necessárias para lidar com uma vasta gama de tarefas de visão com elevada precisão e eficiência. 

Vê mais detalhadamente as tarefas que o Florence-2 suporta:

  • Deteção de objectos: Consegue identificar e localizar objectos nas imagens com elevada precisão.
  • Segmentação: Esta tarefa consiste em dividir uma imagem em segmentos significativos para facilitar a análise e a interpretação.
  • Legenda de imagens: Florence-2 é capaz de gerar legendas descritivas para imagens que fornecem contexto e detalhes.
  • Fundamentação visual: O modelo pode associar frases ou palavras específicas numa legenda com as regiões correspondentes na imagem.
  • Desempenho zero: Consegue executar tarefas sem formação específica.
Figura 1. Compreende como Florence-2 foi treinado.

O modelo suporta tarefas baseadas em texto e em regiões. São adicionados tokens de localização especiais ao vocabulário do modelo para tarefas que envolvam regiões específicas de uma imagem. Estes tokens ajudam o modelo a compreender diferentes formas, como rectângulos à volta de objectos (representação em caixa), formas de quatro lados (representação em caixa quádrupla) e formas de muitos lados (representação em polígono). O modelo é treinado utilizando um método chamado perda de entropia cruzada, que o ajuda a aprender comparando as suas previsões com as respostas correctas e ajustando os seus parâmetros internos em conformidade.

Criar o conjunto de dados FLD-5B

O conjunto de dados FLD-5B inclui diferentes tipos de anotações: descrições de texto, pares de regiões e texto, e combinações de texto, frases e regiões. Foi criado através de um processo de duas fases que envolveu a recolha de dados e a anotação. As imagens foram obtidas a partir de conjuntos de dados populares como o ImageNet-22k, Object 365, Open Images, Conceptual Captions e LAION. As anotações no conjunto de dados FLD-5B são maioritariamente sintéticas, o que significa que foram geradas automaticamente e não etiquetadas manualmente. 

Figura 2. Cria o conjunto de dados FLD-5B.

Inicialmente, modelos especializados com competências em tarefas específicas, como a deteção ou segmentação de objectos, criaram estas anotações. Depois, foi utilizado um processo de filtragem e melhoramento para garantir que as anotações eram detalhadas e exactas. Depois de remover qualquer ruído, o conjunto de dados passou por um refinamento iterativo, em que os resultados do Florence-2 foram utilizados para atualizar e melhorar continuamente as anotações. 

Compreender a arquitetura do modelo Florence-2

A arquitetura do modelo do Florence-2 segue uma abordagem de aprendizagem sequência a sequência. Isto significa que o modelo processa uma sequência de entrada (como uma imagem com uma mensagem de texto) e gera uma sequência de saída (como uma descrição ou uma etiqueta) passo a passo. Na estrutura sequência-a-sequência, cada tarefa é tratada como um problema de tradução: o modelo recebe uma imagem de entrada e uma mensagem específica da tarefa e gera o resultado correspondente.

Figura 3. Arquitetura do modelo de linguagem de visão do Florence-2.

No centro da arquitetura do modelo está um transformador codificador-descodificador multi-modalidade, que combina um codificador de imagem e um codificador-descodificador multi-modalidade. O codificador de imagem, denominado DaViT (Data-efficient Vision Transformer), processa as imagens de entrada convertendo-as em tokens visuais - representações compactas da imagem que captam informações espaciais (onde estão as coisas) e semânticas (o que são as coisas). Estes tokens visuais são depois combinados com embeddings de texto (representações do texto), permitindo ao modelo fundir sem problemas dados textuais e visuais.

Comparação do Florence-2 com outros VLMs

O Florence-2 destaca-se de outros modelos de linguagem visual devido às suas impressionantes capacidades de zero-shot. Ao contrário de modelos como o PaliGemma, que dependem de um extenso ajuste fino para se adaptarem a várias tarefas, o Florence-2 funciona bem logo que sai da caixa. Além disso, o Florence-2 é capaz de competir com modelos maiores como o GPT-4V e o Flamingo, que muitas vezes têm muitos mais parâmetros, mas nem sempre igualam o desempenho do Florence-2. Por exemplo, o Florence-2 obtém melhores resultados de zero-shot do que o Kosmos-2, apesar de o Kosmos-2 ter mais do dobro do número de parâmetros.

Em testes de referência, o Florence-2 demonstrou um desempenho notável em tarefas como a legendagem COCO e a compreensão de expressões de referência. Superou modelos como o PolyFormer e o UNINEXT em tarefas de deteção e segmentação de objectos no conjunto de dados COCO. É uma escolha altamente competitiva para aplicações do mundo real em que tanto o desempenho como a eficiência de recursos são cruciais.

Aplicações de Florença-2

O Florence-2 pode ser utilizado em muitos sectores diferentes, como o entretenimento, a acessibilidade, a educação, etc. Vamos ver alguns exemplos para perceberes melhor.

Aplicações da legendagem de imagens

Quando estás numa plataforma de streaming a tentar decidir o que ver, podes ler um resumo de um filme para te ajudar a escolher. E se a plataforma também pudesse fornecer uma descrição detalhada do cartaz do filme? O Florence-2 pode tornar isso possível através da legendagem de imagens, que gera texto descritivo para imagens. O Florence-2 pode gerar descrições detalhadas de cartazes de filmes, tornando as plataformas de streaming mais inclusivas para utilizadores com deficiência visual. Ao analisar os elementos visuais de um cartaz, como personagens, cenário e texto, o Florence-2 pode criar descrições detalhadas que transmitem o conteúdo e o clima do cartaz. A imagem abaixo mostra o nível de detalhe que o Florence-2 pode fornecer na sua descrição.

Fig. 4. Exemplo de uma legenda de imagem gerada pelo Florence-2. 

Eis alguns outros exemplos de situações em que a legendagem de imagens pode ser útil:

  • Comércio eletrónico: As legendas das imagens podem fornecer descrições pormenorizadas das imagens dos produtos, ajudando os clientes a compreender melhor as características e os detalhes dos produtos.
  • Viagens e turismo: Pode fornecer descrições detalhadas de pontos de referência e atracções em guias de viagem e aplicações.
  • Educação: As legendas de imagens podem rotular e descrever imagens e diagramas educativos, ajudando no ensino e na aprendizagem.
  • Imóveis: Pode fornecer descrições detalhadas de imagens de propriedades que destacam características e comodidades para potenciais compradores.

Usa a ligação visual à terra enquanto cozinhas

O Florence-2 também pode ser utilizado para enriquecer as experiências culinárias. Por exemplo, um livro de receitas em linha pode utilizar Florence-2 para fundamentar visualmente e rotular partes de uma imagem de uma receita complexa. A fundamentação visual ajuda aqui, ligando partes específicas da imagem ao texto descritivo correspondente. Cada ingrediente e passo pode ser rotulado e explicado com precisão, tornando mais fácil para os cozinheiros domésticos seguirem a receita e compreenderem o papel de cada componente no prato.

Fig. 5. Um exemplo de ligação à terra visual utilizando Florence-2. 

OCR baseado em região para documentos financeiros

O OCR com processamento baseado em regiões, que se concentra na extração de texto de áreas específicas de um documento, pode ser útil quando se trata de áreas como a contabilidade. As áreas designadas dos documentos financeiros podem ser analisadas para extrair automaticamente informações importantes, como detalhes de transacções, números de contas e datas de vencimento. Ao reduzir a necessidade de introdução manual de dados, minimiza os erros e acelera os tempos de processamento. As instituições financeiras podem utilizá-lo para simplificar tarefas como o processamento de facturas, a reconciliação de recibos e a compensação de cheques, conduzindo a transacções mais rápidas e a um melhor serviço ao cliente. 

Fig. 6. Um exemplo de extração de OCR com região utilizando Florence-2. 

Segmentação baseada na região em aplicações industriais

A segmentação baseada na região, que envolve a divisão de uma imagem em partes significativas para uma análise focada e uma inspeção detalhada, pode alimentar aplicações industriais que melhoram a precisão e a eficiência em vários processos. Ao concentrar-se em áreas específicas de uma imagem, esta tecnologia permite a inspeção e análise detalhadas de componentes e produtos. No que diz respeito ao controlo de qualidade, pode identificar defeitos ou inconsistências nos materiais, tais como fissuras ou desalinhamentos, garantindo que apenas os produtos de qualidade superior chegam ao mercado.

Fig. 7. Um exemplo de segmentação baseada em regiões utilizando Florence-2.

Melhora também as linhas de montagem automatizadas, orientando os braços robóticos para peças específicas e optimizando a colocação e montagem de componentes. Do mesmo modo, na gestão de inventário, ajuda a seguir e a monitorizar o estado e a localização dos bens, conduzindo a uma logística mais eficiente e a uma redução do tempo de inatividade. Em geral, a segmentação baseada na região aumenta a precisão e a produtividade, conduzindo a poupanças de custos e a uma maior qualidade dos produtos em ambientes industriais.

Principais conclusões

Estamos a começar a ver uma tendência em que os modelos de IA estão a tornar-se mais leves, mantendo, ao mesmo tempo, um elevado desempenho. O Florence-2 representa um grande passo em frente em termos de modelos de linguagem visual. Consegue lidar com várias tarefas, como deteção de objectos, segmentação, legendagem de imagens e aterramento, com um desempenho impressionante de zero disparos. Apesar do seu tamanho mais pequeno, o Florence-2 é eficiente e multifuncional, o que o torna extremamente útil em termos de aplicações em diferentes sectores. Modelos como o Florence-2 estão a trazer mais possibilidades para a mesa, expandindo o potencial de inovações de IA.

Explora mais sobre IA visitando o nosso repositório GitHub e juntando-te à nossa comunidade. Consulta as nossas páginas de soluções para leres sobre aplicações de IA no fabrico e na agricultura. 🚀

Logótipo do FacebookLogótipo do TwitterLogótipo do LinkedInSímbolo de ligação de cópia

Ler mais nesta categoria

Vamos construir juntos o futuro
da IA!

Começa a tua viagem com o futuro da aprendizagem automática