Titulo Estágio
Exploração de técnicas para a Resposta Automática a Perguntas por Agentes Conversacionais
Áreas de especialidade
Sistemas Inteligentes
Local do Estágio
DEI/CISUC
Enquadramento
A forma mais natural de interagir com um sistema computacional será através da nossa língua, escrita ou falada. Aliado a este facto, recentes avanços tecnológicos no âmbito do Processamento de Linguagem Natural e Inteligência Artificial têm levado a um crescente desenvolvimento e adopção de sistemas de diálogo, agentes conversacionais inteligentes, ou chatbots, pelas mais variadas entidades, a operar sobre diversos domínios.
Apesar de utilizada no dia-a-dia para a comunicação entre humanos, a Linguagem Natural (LN) é rica em fenómenos que dificultam o seu processamento e interpretação por programas de computador. Destaca-se a ambiguidade – a mesma palavra pode ser usada para referir dois conceitos diferentes (e.g. banco: instituição/assento) – e a homonímia – o mesmo conceito pode ser referido através de palavras diferentes (e.g. carro e automóvel). Isto para além de diferentes registos de linguagem (e.g. formal e informal), figuras de estilo (e.g. metáfora, ironia), ou de terminologia específica de determinados domínios, entre outros.
Entre os modelos seguidos para o funcionamento de agente conversacional destacam-se os baseados em regras e os baseados em corpos. De forma a lidar com os vários fenónimos da LN, os primeiros implicam uma grande quantidade de trabalho manual.
No segundos, há dois tipos principais de agente: (i) generativos, que analisam grandes quantidades de conversas (e.g. em redes sociais ou legendas de filmes) e aprendem a traduzir perguntas em respostas; (ii) baseados em Recuperação de Informação (RI), que procuram mapear frases com perguntas a que conseguem responder, recorrendo, por exemplo, a uma base de conhecimento.
Os agentes baseados em RI têm semelhanças a um motor de pesquisa com uma maior capacidade de interpretar pedidos em LN e de interagir com os utilizadores. São também os mais adequados para responder a perguntas concretas, dentro de um domínio mais fechado.
Uma das técnicas que se pode aplicar nests agentes é Similaridade Semântica Textual: dado um par de palavras, expressões ou frases, o objectivo consiste em quantificar a proximidade do significado transmitido por cada uma.
Nos últimos anos têm sido organizadas tarefas de avaliação conjunta em Similaridade Semântica, onde vários sistemas, desenvolvidos por diferentes equipas, procuram aproximar ao máximo os seus cálculos de similaridade a valores atribuídos por humanos. Destaca-se a tarefa Semantic Textual Similarity (STS), para o inglês e outras línguas, no âmbito das avaliações SemEval (ver edição de 2017: http://alt.qcri.org/semeval2017/task1/), e a tarefa ASSIN, para português (ver http://propor2016.di.fc.ul.pt/?page_id=381). Equipas do grupo CMS, do CISUC, participaram na última e em edições anteriores da tarefa STS do SemEval.
Objetivo
O principal objectivo desta dissertação passa por explorar técnicas para o mapeamento automático de interações em LN (frases) com perguntas a que um sistema deve conseguir responder.
Entre frases, a similaridade semântica é normalmente calculada com base num conjunto de características, tais como palavras e sequências de palavras em comum, ou palavras relacionadas, entre outras. As abordagens que têm revelado mais sucesso nesta tarefa tiram partido de aprendizagem computacional supervisionada (Supervised Machine Learning). Muito resumidamente, baseiam-se num conjunto de pares de frases e a respectiva similaridade, anotada por humanos, de onde as características a explorar são extraídas automaticamente, e utilizadas na aprendizagem de um modelo de similaridade, também de forma automática. Após a aprendizagem, o modelo poderá ser usado para calcular a similaridade de frases para as quais se desconhece o valor de similaridade.
Nesta dissertação, pretende-se explorar os modelos anteriores num agente que consiga responder a perguntas, em domínio fechado, pelo menos numa fase inicial. Apesar de se pretender chegar a uma solução flexível, o agente será testado com listas de perguntas, essencialmente FAQs, associadas ao Balcão do Empreendedor (https://bde.portaldocidadao.pt).
Pretendem-se então criar e testar diferentes modelos de similaridade semântica que permitam associar uma interacção do utilizador, feita através em português, com uma das perguntas conhecidas e, nessa sequência, fornecer a respectiva resposta.
Em casos de maior incerteza, o sistema poderá apresentar ao utilizador um conjunto de opções ou pedir-lhe para clarificar algum aspecto da pergunta.
Um contributo secundário passará por tirar conclusões sobre as características mais relevantes no mapeamento das interações com perguntas, minimizando desta forma o tempo necessário para o pré-processamento.
O trabalho terá uma forte componente experimental, com foco principal na avaliação e melhoria de abordagens para o cálculo da similaridade semântica, que incluirá a combinação de características; seleção de algoritmos de aprendizagem; identificação de características mais relevantes; e pode ainda envolver a necessidade de criar dados de teste.
Outros objectivos passam por: (i) escolher o(s) modelo(s) a aplicar aos sistemas de diálogo; (ii) definir de estratégias para lidar com interacções fora de contexto (e.g. recorrendo a um modelo generativo); (iii) analisar plataformas e standards disponíveis que possam facilitar o desenvolvimento; (iv) implementar um protótipo que integre o(s) modelo(s) selecionado e permita a resposta a perguntas numa lista; (v) validação do protótipo.
Plano de Trabalhos - Semestre 1
- Levantamento do estado da arte de chatbots / agentes conversacionais inteligentes
- Levantamento do estado da arte de similaridade semântica
- Experimentação das abordagens de similaridade semântica conhecidas e identificação de melhorias
- Planeamento da integração das abordagens anteriores num agente conversacional
- Elaboração da proposta de dissertação
Plano de Trabalhos - Semestre 2
- Implementação e avaliação de melhorias ao modelo de similaridade semântica
- Desenvolvimento base do funcionamento do agente (incluindo representação dos dados)
- Experimentação e avaliação de diferentes modelos de similaridade e outras melhorias focadas no diálogo
- Integração de outros modelos de similaridade semântica e experimentação no agente
- Elaboração da dissertação
- Escrita de artigo científico
Condições
O local de trabalho será o laboratório de investigação do grupo CMS do CISUC onde haverá um acompanhamento regular por parte dos orientadores.
Há a possibilidade de este trabalho ser integrado num projecto de investigação que visa demonstrar a aplicação de Inteligência Artificial à Administração Pública. Nesse contexto, poderá ser remunerado através de uma bolsa de investigação para licenciado (745€/mês) com a duração de, pelo menos, 6 meses.
Orientador
Hugo Gonçalo Oliveira e Ana Alves
hroliv@dei.uc.pt 📩