Geração de Matrizes de Coocorrência na GPU com Aplicações em Bases Textuais

  • Chayner Cordeiro Barros UFG
  • Wellington S. Martins UFG

Resumo


As matrizes de coocorrência são artefatos computacionais utilizados em aplicações como a construção de modelos de representação, em tarefas tı́picas de NLP (Natural Language Processing) como a tradução por máquina, na mineração de texto, na classificação de documentos. Sua construção é bastante onerosa computacionalmente, porque demanda a análise da relação de coocorrência entre os termos existentes num corpus, podendo exigir bastante memória para armazenar essa relação, caso o vocabulário, a janela de contexto e o corpus empregados sejam muito grandes. Para contornar essas limitações, nossa solução é baseada numa estrutura de dados do tipo hash, capaz de armazenar de forma eficiente uma matriz inerentemente esparsa de grandes dimensões. Esta solução se adapta facilmente a diferentes arquiteturas, tendo sido implementada e testada em aplicações com arquiteturas single thread, mul ticore e manycore.
Palavras-chave: Matrizes de coocorrência, GPU

Referências

Barros, C. C. and Martins, W. (2019). Acelerando a construção de vocabulário e matriz de co-ocorrencia em bases textuais. In Anais Principais do XX Simposio em Sistemas Computacionais de Alto Desempenho, pages 418–429. SBC.

Chelba, C., Mikolov, T., Schuster, M., Ge, Q., Brants, T., Koehn, P., and Robinson, T. (2013). One billion word benchmark for measuring progress in statistical language modeling. arXiv preprint arXiv:1312.3005.

Lin, J. (2009). Scalable language processing algorithms for the masses: A case study in computing word cooccurrence matrices with mapreduce. in proceedings of the conference on empirical methods in natural language processing. EMNLP ’08, pp. 419–428, Stroudsburg, PA, USA.

Mikolov, T., Chen, K., Corrado, G., and Dean, J. (2013). Efficient estimation of word representations in vector space. arXiv preprint arXiv:1301.3781.

Pennington, J., Socher, R., and Manning, C. (2014). Glove: Global vectors for word representation. In Proceedings of the 2014 conference on empirical methods in natural language processing (EMNLP), pages 1532–1543.

Sahlgren, M. (2005). An introduction to random indexing. In Methods and applications of semantic indexing workshop at the 7th international conference on terminology and knowledge engineering.
Publicado
14/09/2020
BARROS, Chayner Cordeiro; MARTINS, Wellington S.. Geração de Matrizes de Coocorrência na GPU com Aplicações em Bases Textuais. In: ESCOLA REGIONAL DE ALTO DESEMPENHO DO CENTRO-OESTE (ERAD-CO), 3. , 2020, Campo Grande. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2020 . p. 17-20. DOI: https://doi.org/10.5753/eradco.2020.12647.