Título: | Paralelização do algoritmo de indexação de dados multimídia baseado em quantização |
Autor(es): | Freire, André Fernandes |
Orientador(es): | Teodoro, George Luiz Medeiros |
Assunto: | Quantização Similaridade Dados - recuperação Recuperação da informação Indexação Algoritmos de computador |
Data de apresentação: | 30-Jan-2019 |
Data de publicação: | 31-Jul-2020 |
Referência: | FREIRE, André Fernandes. Paralelização do algoritmo de indexação de dados multimídia baseado em quantização. 2019. 65 f. Trabalho de Conclusão de Curso (Licenciatura em Computação) — Universidade de Brasília, Brasília, 2019. |
Resumo: | A busca por similaridade em espaços de alta dimensionalidade é uma operação fundamental em diversas aplicações de recuperação de dados multimídia, no entanto essa operação é tipicamente uma das mais computacionalmente caras. Alguns métodos propõem a busca aproximada para minimizar esse problema, uma alternativa que tenta fazer um compromisso entre o custo computacional e a precisão da busca. Um dos métodos baseados em busca aproximada é o Product Quantization for Approximate Nearest Neighbor Search (PQANNS), que propõe a decomposição do espaço de busca em um produto cartesiano de subespaços de baixa dimensionalidade e a quantização de cada um deles separadamente. Para tanto, é utilizada uma estrutura de lista invertida para fazer a indexação dos dados, o que permite a realização de buscas não-exaustivas. A redução da dimensionalidade dos dados aliada à busca não-exaustiva faz com que o PQANNS responda consultas de forma eficiente e com baixa demanda de memória, no entanto sua execução sequencial ainda é limitada a trabalhar com bases que caibam na memória RAM de apenas uma máquina. Nosso objetivo é propor uma paralelização em memória distribuída do PQANNS, sendo assim capaz de lidar com grandes bases de dados. Também propomos uma paralelização em máquina multicore, visando reduzir o tempo de resposta às consultas e utilizar toda a capacidade de processamento disponível. Nossa paralelização em memória distribuída foi avaliada utilizando 128 nós/3584 núcleos de CPU, obtendo uma eficiência de 0.97 e foi capaz de realizar a indexação e busca em uma base de dados contendo 256 bilhões de vetores Scale Invariant Feature Transform (SIFT). Além disso, a execução da nossa paralelização em máquina multicore obteve um excelente ganho em desempenho com até 28 núcleos, obtendo um speedup médio de 26, 36x utilizando todos os núcleos. |
Abstract: | The search for similarity in high dimensional spaces is a core operation found in several multimedia retrieval applications. However this operation is typically one of the most computationally expensive. Some methods propose an approximate search to minimize this problem, trying to make a trade-off between computational cost and search precision. One of these methods is the Product Quantization for Approximate Nearest Neighbor Search (PQANNS), which proposes the decomposition of the search space into a Cartesian product of low-dimensional subspaces and the quantization of each of them separately. In order to do so, an inverted file structure is used to index the data, which allows non-exhaustive searches. The reduction of data dimensionality coupled with the non-exhaustive search causes the PQANNS to respond efficiently and with low memory requirements, however its sequential execution is still limited to working with bases that fit into the RAM memory of a single machine. Our goal is to propose a parallelization strategy that works on distributed memory plataforms of PQANNS, thus being able to handle large databases. We also propose a multicore machine parallelization, in order to reduce the response time to the queries and to use all available processing capacity. Our distributed memory parallelization was evaluated using 128 nodes/3584 CPU cores, obtaining an efficiency of 0.97 and was able to perform the index and search in a database containing 256 billion Scale Invariant Feature Transform (SIFT) vectors. In addition, the execution of our parallelization in a multicore machine obtained a performance gain with up to 28 cores, obtaining an average speedup of 26.36x using all the cores. |
Informações adicionais: | Trabalho de Conclusão de Curso (graduação) — Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2019. |
Licença: | A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor que autoriza a Biblioteca Digital da Produção Intelectual Discente da Universidade de Brasília (BDM) a disponibilizar o trabalho de conclusão de curso por meio do sítio bdm.unb.br, com as seguintes condições: disponível sob Licença Creative Commons 4.0 International, que permite copiar, distribuir e transmitir o trabalho, desde que seja citado o autor e licenciante. Não permite o uso para fins comerciais nem a adaptação desta. |
Aparece na Coleção: | Computação
|
Todos os itens na BDM estão protegidos por copyright. Todos os direitos reservados.