Uma abordagem para detectar relatórios de defeitos duplicados baseada em aprendizagem profunda

Detalhes bibliográficos
Ano de defesa: 2020
Autor(a) principal: Rocha, Thiago Marques
Outros Autores: http://lattes.cnpq.br/2186173819661694, https://orcid.org/0000-0001-5083-2989
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal do Amazonas
Instituto de Computação
Brasil
UFAM
Programa de Pós-graduação em Informática
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
MLP
LDA
Link de acesso: https://tede.ufam.edu.br/handle/tede/7946
Resumo: Em ambientes de desenvolvimento de software em larga escala, os relatórios de defeitos são mantidos por meio de sistemas de rastreamento de problemas e analisados por especialistas de domínio. Nesses sistemas, os usuários podem criar relatórios de defeitos de maneira despadronizada, ou seja, cada usuário pode relatar um problema específico com um conjunto exclusivo de palavras. Portanto, relatórios diferentes podem descrever o mesmo problema, gerando duplicação. Para evitar tarefas redundantes para a equipe de desenvolvimento, um especialista precisa examinar todos os novos relatórios enquanto rotula possíveis duplicatas. No entanto, essa abordagem não é trivial, nem escalável e impacta diretamente o tempo de correção dos defeitos. Esforços recentes para detectar relatórios de defeitos duplicados tendem a se concentrar em abordagens que utilizam redes neurais profundas que consideram as informações híbridas dos relatórios como recursos textuais e categóricos. Entretanto, essas abordagens ignoram que um único relatório pode ter várias duplicatas identificadas anteriormente e, portanto, várias descrições textuais, títulos e informações categóricas. Neste trabalho, propusemos o SiameseQAT, um método para detecção de relatórios de defeitos duplicados que considera não apenas informações sobre relatórios individuais, mas também informações coletivas de grupos de defeitos. O SiameseQAT combina aprendizado contextual e semântico com recursos textuais e categóricos, além de recursos baseados em extração de tópicos, utilizando a Quintet Loss uma nova função de perda introduzida por este trabalho, que considera o centroide de grupos duplicados e suas informações contextuais. Validamos nossa abordagem nos repositórios de software de código aberto Eclipse, Netbeans e Open Office, que incluem mais de 500 mil relatórios de defeitos. Avaliamos a recuperação e a classificação de duplicatas, relatando uma média de Recall@25 de 71% para recuperação e 99% de AUROC para tarefas de classificação, resultados superiores aos apresentados por trabalhos relacionados.