Avanços em Chatbots Multimodais
Um novo chatbot combina imagens e texto pra melhorar as interações com os usuários.
― 8 min ler
Índice
O objetivo da inteligência artificial é imitar a inteligência humana, que inclui reconhecer vários tipos de informação, papear com os outros e criar novas ideias. Os sistemas de IA no começo focavam em tarefas separadas em áreas como visão, som, linguagem e espaço. Recentemente, os pesquisadores começaram a juntar essas áreas pra criar sistemas que conseguem processar entradas de mais de uma fonte.
Esse trabalho tem a meta de criar um chatbot que possa ter conversas com os usuários enquanto compartilha imagens relevantes. A galera costuma conversar enviando mensagens e fotos em apps de chat famosos. Numa interação típica, uma pessoa pode mandar uma foto relacionada ao que tá falando. Esse projeto se concentra em construir um chatbot que consiga fazer a mesma coisa.
Trabalhos Anteriores
Vários estudos tentaram desenvolver maneiras de fazer imagens e diálogos funcionarem juntos. Uma área de pesquisa se chama diálogo fundamentado em imagem. Aqui, a tarefa é criar respostas para perguntas sobre determinadas imagens. No entanto, essa tarefa não é suficiente pra um chatbot que precisa ter conversas abertas sobre qualquer assunto, não apenas os ligados a imagens.
Outra área é o diálogo aumentado por imagem, onde sistemas geram respostas com base em contextos de diálogo, com ou sem imagens compartilhadas. Porém, os métodos anteriores não atenderam totalmente às necessidades de um chatbot eficaz. Alguns sistemas conseguiram classificar e recuperar imagens, mas não geraram respostas, que são essenciais pra um chatbot. Outros usaram geradores de resposta que só consideravam o texto anterior, levando a respostas que às vezes contradiziam as imagens.
O sistema de chatbot proposto aqui inclui um modelo de imagem e um Modelo de Diálogo. Cada modelo deve entender tanto texto quanto imagens pra proporcionar interações coerentes. O modelo de imagem recupera imagens relevantes, enquanto o modelo de diálogo gera respostas apropriadas.
Sistema Proposto
O sistema de chatbot proposto segue um processo de três etapas pra engajar os usuários de forma eficaz.
Primeiro, o chatbot pega tanto o histórico da conversa (as mensagens trocadas até agora) quanto uma coleção de imagens. Ele classifica todas as imagens com base em quão bem elas combinam com o contexto da conversa. Se a imagem mais relevante tiver uma pontuação maior que um certo nível, ela é escolhida como a melhor opção.
Segundo, o chatbot usa o histórico da conversa e a imagem selecionada pra criar uma resposta. Se o sistema não encontrar uma correspondência forte com a imagem, ele usa a última imagem compartilhada. Se nenhuma imagem tiver sido compartilhada, uma imagem padrão com zeros é utilizada. O chatbot cria uma resposta com base no histórico da conversa, na imagem e nas partes já geradas da resposta.
Por fim, o chatbot envia a resposta e qualquer imagem recuperada pro usuário. Pra interações futuras, as últimas mensagens e imagens são armazenadas pra referência.
Recuperador de Imagens
Arquitetura do Modelo
O recuperador de imagens é composto por dois componentes principais: um codificador de imagem e um codificador de texto. O codificador de imagem processa as imagens em representações, enquanto o codificador de texto faz o mesmo pro histórico de diálogo.
O codificador de imagem usado nesse projeto é um Vision Transformer (ViT). Os ViTs são particularmente bons em lidar com tarefas de imagem processando pequenos pedaços das imagens. O codificador de texto é baseado no BERT, que se destaca em entender a linguagem considerando as relações entre todos os tokens numa frase.
Entrada e Saída
Pro codificador de imagem, as imagens são redimensionadas pra tamanhos padrão, enquanto o codificador de texto processa o histórico de diálogo em um formato específico. Durante o treinamento, o modelo trabalha com pares de imagens e diálogos. O processo de treinamento envolve comparar as verdadeiras combinações de imagens e diálogos com combinações aleatórias.
Durante a avaliação, o recuperador de imagens classifica todas as imagens em resposta a um trecho de diálogo e identifica a melhor correspondência com base em sua similaridade.
Gerador de Respostas
Arquitetura do Modelo Unimodal
Pra gerar respostas baseadas apenas em texto, o sistema usa um modelo chamado GPT-2. Esse modelo foca em gerar texto prevendo a próxima palavra numa frase com base nas palavras que vieram antes. Uma variante chamada DialoGPT também tá incluída, que foi otimizada pra tarefas de diálogo.
Arquitetura do Modelo Multimodal
Pra gerar respostas baseadas tanto em texto quanto em imagens, o modelo VisionEncoderDecoder é usado. Essa arquitetura permite a combinação de um codificador de imagem ViT com um decodificador de texto pra produzir respostas coerentes que são relevantes tanto pra conversa quanto pra imagem.
Entrada e Saída
A entrada pro codificador de imagem envolve imagens redimensionadas, enquanto o decodificador de texto processa o histórico de diálogo e a resposta gerada. A saída é uma resposta gerada que busca se alinhar tanto com a imagem quanto com a conversa em andamento.
Descrição do Conjunto de Dados
O conjunto de dados usado nesse projeto se chama PhotoChat. Esse conjunto inclui conversas onde um participante compartilha uma imagem em algum momento. As conversas geralmente envolvem temas casuais e duram cerca de 12 trocas.
O conjunto foi coletado por "crowdworkers", que conversaram livremente usando imagens selecionadas aleatoriamente. Essas imagens cobrem assuntos comuns como pessoas, comida e animais. O objetivo de usar esse conjunto de dados é treinar e avaliar o chatbot de forma eficaz.
Pré-processamento de Dados
Pra preparar o conjunto de dados PhotoChat pra treinamento e avaliação, várias etapas foram realizadas. As imagens foram armazenadas como URLs, e imagens que não eram mais acessíveis foram removidas. O conjunto foi formatado pra permitir que o chatbot lidasse com as conversas de forma suave, incluindo modificar como as imagens são compartilhadas e emparelhadas com o diálogo.
Métodos de Avaliação
Avaliação Automática
O processo de avaliação inclui várias métricas automáticas pra avaliar o desempenho do recuperador de imagens e do gerador de respostas. Pro recuperador de imagens, métricas como Recall e Mean Reciprocal Rank (MRR) são medidas. Recall indica com que frequência a imagem correta aparece entre as imagens recuperadas, enquanto MRR avalia a média da classificação da imagem correta.
Pros geradores de resposta, métricas como Perplexity, BLEU e Distinct são usadas. Perplexity mede quão prováveis são as respostas geradas, enquanto BLEU mede a similaridade entre as respostas geradas e as reais. Distinct avalia a diversidade das respostas.
Avaliação Humana
Além da avaliação automática, uma avaliação humana é realizada pra validar o desempenho do sistema. "Crowdworkers" interagem com o chatbot e fornecem feedback sobre vários aspectos da conversa, incluindo fluência, coerência, engajamento e humanização.
Resultados
Desempenho do Recuperador de Imagens
O desempenho do recuperador de imagens foi avaliado com base nas métricas mencionadas acima. Várias configurações de modelo foram testadas, cada uma com diferentes arquiteturas e números de parâmetros. No geral, os modelos mostraram resultados promissores, alcançando pontuações competitivas em métricas como Recall e MRR.
Desempenho do Gerador de Respostas
Avaliações semelhantes foram feitas pros geradores de resposta. Os geradores multimodais geralmente superaram os modelos unimodais, mostrando melhores pontuações de Perplexity, BLEU e Distinct. Isso indica que incorporar imagens no processo de geração de respostas resulta em melhores capacidades de modelagem de linguagem.
Resultados da Avaliação Humana
Os avaliadores humanos classificaram os chatbots em diferentes métricas. Em geral, todos os sistemas demonstraram fluência e coerência similar, mas o chatbot que entendia tanto imagens quanto texto obteve pontuações mais altas em engajamento. Esses resultados sugerem que usar imagens junto com o diálogo aumenta o engajamento do usuário durante as conversas.
Limitações e Trabalhos Futuros
Embora esse projeto tenha avançado na criação de um chatbot multimodal, há várias limitações. O sistema atual de recuperação de imagens depende de um conjunto fixo de imagens, que pode não incluir opções relevantes pra cada conversa. Trabalhos futuros poderiam se concentrar em expandir o conjunto de imagens ou integrar uma função de geração de imagem online.
Outra limitação é que o gerador de respostas atualmente só consegue lidar com uma imagem de cada vez. Melhorar o sistema pra processar múltiplas imagens num diálogo criaria uma interação mais dinâmica. Além disso, o chatbot não pode receber imagens dos usuários, limitando o potencial pra experiências mais interativas.
Por fim, melhorar a compreensão do sistema sobre contexto e respostas parecidas com as humanas aumentaria seu desempenho geral. Modelos mais avançados capazes de reter o histórico da conversa melhor abordariam algumas deficiências vistas na coerência e no engajamento.
Conclusão
Esse trabalho representa um passo significativo no desenvolvimento de chatbots de IA que aproveitam tanto imagens quanto textos pra interações mais humanas. Ao integrar modelos de deep learning avançados pra recuperação de imagens e geração de respostas, o chatbot demonstra o potencial de criar conversas dinâmicas e envolventes. Pesquisas contínuas e melhorias podem refinar ainda mais esses sistemas, abrindo caminho pra companheiros de IA mais interativos e capazes.
Título: Building Multimodal AI Chatbots
Resumo: This work aims to create a multimodal AI system that chats with humans and shares relevant photos. While earlier works were limited to dialogues about specific objects or scenes within images, recent works have incorporated images into open-domain dialogues. However, their response generators are unimodal, accepting text input but no image input, thus prone to generating responses contradictory to the images shared in the dialogue. Therefore, this work proposes a complete chatbot system using two multimodal deep learning models: an image retriever that understands texts and a response generator that understands images. The image retriever, implemented by ViT and BERT, selects the most relevant image given the dialogue history and a database of images. The response generator, implemented by ViT and GPT-2/DialoGPT, generates an appropriate response given the dialogue history and the most recently retrieved image. The two models are trained and evaluated on PhotoChat, an open-domain dialogue dataset in which a photo is shared in each session. In automatic evaluation, the proposed image retriever outperforms existing baselines VSE++ and SCAN with Recall@1/5/10 of 0.1/0.3/0.4 and MRR of 0.2 when ranking 1,000 images. The proposed response generator also surpasses the baseline Divter with PPL of 16.9, BLEU-1/2 of 0.13/0.03, and Distinct-1/2 of 0.97/0.86, showing a significant improvement in PPL by -42.8 and BLEU-1/2 by +0.07/0.02. In human evaluation with a Likert scale of 1-5, the complete multimodal chatbot system receives higher image-groundedness of 4.3 and engagingness of 4.3, along with competitive fluency of 4.1, coherence of 3.9, and humanness of 3.1, when compared to other chatbot variants. The source code is available at: https://github.com/minniie/multimodal_chat.git.
Autores: Min Young Lee
Última atualização: 2023-04-21 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2305.03512
Fonte PDF: https://arxiv.org/pdf/2305.03512
Licença: https://creativecommons.org/licenses/by/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.