Ao clicar em "Aceitar todos os cookies", concorda com o armazenamento de cookies no seu dispositivo para melhorar a navegação no site, analisar a utilização do site e ajudar nos nossos esforços de marketing. Mais informações
Definições de cookies
Ao clicar em "Aceitar todos os cookies", concorda com o armazenamento de cookies no seu dispositivo para melhorar a navegação no site, analisar a utilização do site e ajudar nos nossos esforços de marketing. Mais informações
Conheça 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 formação específica prévia, 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, iremos explorar as caraterí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.
Eis um olhar mais atento sobre as tarefas que o Florence-2 suporta:
Deteção de objectos: Pode identificar e localizar objectos nas imagens com elevada precisão.
Segmentação: Esta tarefa envolve a divisão de uma imagem em segmentos significativos para facilitar a análise e 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 de tiro zero: Pode efetuar tarefas sem formação específica.
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 corretas 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 em 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.
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 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) de forma faseada. 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.
Fig. 3. Arquitetura do modelo de linguagem de visão de 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 à partida. 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 analisar alguns exemplos para compreender melhor.
Aplicações da legendagem de imagens
Quando está numa plataforma de streaming a tentar decidir o que ver, pode ler um resumo de um filme para o 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ários e texto, o Florence-2 pode criar descrições detalhadas que transmitem o conteúdo e a disposição 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 caraterísticas e os pormenores dos produtos.
Educação: As legendas de imagens podem rotular e descrever imagens e diagramas educativos, ajudando no ensino e na aprendizagem.
Imobiliário: Pode fornecer descrições detalhadas de imagens de propriedades que realçam caraterísticas e comodidades para potenciais compradores.
Utilizar a ligação visual à terra enquanto cozinha
O Florence-2 também pode ser utilizado para enriquecer as experiências culinárias. Por exemplo, um livro de receitas em linha poderia utilizar Florence-2 para fundamentar visualmente e rotular partes de uma imagem de uma receita complexa. A fundamentação visual ajuda neste caso, ligando partes específicas da imagem ao texto descritivo correspondente. Cada ingrediente e passo pode ser rotulado e explicado com exatidã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 na 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.
Também melhora 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ários, ajuda a seguir e a monitorizar o estado e a localização dos bens, conduzindo a uma logística mais eficiente e à 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 assistir a uma tendência em que os modelos de IA se estão a tornar 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. É capaz de lidar com várias tarefas, como deteção de objectos, segmentação, legendagem de imagens e ligação à terra, 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.