Repositório de Word Embeddings do NILC

 

NILC - Núcleo Interinstitucional de Linguística Computacional

Introdução

NILC-Embeddings é um repositório destinado ao armazenamento e compartilhamento de vetores de palavras (do inglês, word embeddings) gerados para a Língua Portuguesa. O objetivo é fomentar e tornar acessível recursos vetoriais prontos para serem utilizados nas tarefas de Processamento da Linguagem Natural e Aprendizado de Máquina. O repositório traz vetores gerados a partir de um grande córpus do português do Brasil e português europeu, de fontes e gêneros variados. Foram utilizados dezessete córpus diferentes, totalizando 1,395,926,282 tokens. O treinamento dos vetores ocorreu em algoritmos como Word2vec [1], FastText [2], Wang2vec [3] e Glove [4]. Mais detalhes sobre o projeto podem ser encontrados em: Portuguese Word Embeddings: Evaluating on Word Analogies and Natural Language Tasks

 


Córpus utilizado

A seguir, são apresentadas as fontes do córpus (imagem retirada da Tabela 1.  Sources and statistics of corpora collected do artigo).

A parcela pública do córpus (tudo exceto o LX-Corpus) está disponível para download.


Artigo produzido

Esse trabalho produziu um artigo aceito para publicação no STIL 2017 -- Symposium in Information and Human Language Technology. Os anais do evento estão disponíveis aqui. A versão preprint do artigo pode ser visto aqui.


Download Scripts Pré-processamento e Scripts de Avaliação

Os scripts utilizados para pré-processamento dos dados, bem como os scripts para as avaliações realizadas, estão disponíveis para download


Download Word Embeddings Pré-treinadas

Para cada modelo, foram disponibilizados vetores de palavras gerados em várias dimensões. Alguns modelos como Word2vec, FastText e Wang2vec possuem as variações CBOW e Skip-Gram, que diferenciam-se pela forma como preveem as palavras. Em "Ver Detalhes" pode-se ter acesso à rotinas de pré-processamento, limpeza e avaliação. No córpus, foram feitas tratativas de tokenização, remoção de stopwords, stemmização e outras.

Word2Vec

Modelo Corpora STIL 2017
CBOW 50 dimensões download
CBOW 100 dimensões download
CBOW 300 dimensões download
CBOW 600 dimensões download
CBOW 1000 dimensões download
SKIP-GRAM 50 dimensões download
SKIP-GRAM 100 dimensões download
SKIP-GRAM 300 dimensões download
SKIP-GRAM 600 dimensões download
SKIP-GRAM 1000 dimensões download

 Ver Detalhes »

FastText

Modelo Corpora STIL 2017
CBOW 50 dimensões download
CBOW 100 dimensões download
CBOW 300 dimensões download
CBOW 600 dimensões download
CBOW 1000 dimensões download
SKIP-GRAM 50 dimensões download
SKIP-GRAM 100 dimensões download
SKIP-GRAM 300 dimensões download
SKIP-GRAM 600 dimensões download
SKIP-GRAM 1000 dimensões download

Ver Detalhes »

Wang2Vec

Modelo Corpora STIL 2017
CBOW 50 dimensões download
CBOW 100 dimensões download
CBOW 300 dimensões download
CBOW 600 dimensões download
CBOW 1000 dimensões download
SKIP-GRAM 50 dimensões download
SKIP-GRAM 100 dimensões download
SKIP-GRAM 300 dimensões download
SKIP-GRAM 600 dimensões download
SKIP-GRAM 1000 dimensões download

Ver Detalhes »

Glove

Modelo Corpora STIL 2017
GLOVE 50 dimensões download
GLOVE 100 dimensões download
GLOVE 300 dimensões download
GLOVE 600 dimensões download
GLOVE 1000 dimensões download

Ver Detalhes »


Como Utilizar

Agora os modelos estão corrigidos para serem carregados somente utilizando o KeyedVectors do gensim.
Além disso, todas as embeddings estão sendo carregadas como unicode.
Para executar os modelos e utilizar os vetores pré-treinados, siga os passos abaixo.
  Instalar
pip install gensim==4.3.1 #última versão validada mas deve funcionar com versões mais recentes...seguimos acompanhando
Rodar
from gensim.models import KeyedVectors
model = KeyedVectors.load_word2vec_format(‘model.txt’)
 

Contato

Para contato, favor utilizar o Github do projeto ou Linkedin.


Referências

[1] Mikolov, T., Chen, K., Corrado, G., and Dean, J. (2013). Efficient estimation of word representations in vector space. In Proceedings of International Conference on Learning Representations Workshop (ICLR-2013).

[2] Bojanowski, P., Grave, E., Joulin, A., and Mikolov, T. (2016). Enriching Word Vectors with Subword Information. arXiv preprint arXiv:1607.04606.

[3] Ling, W., Dyer, C., Black, A., and Trancoso, I. (2015). Two/too simple adaptations of word2vec for syntax problems. In Proceedings of the 2015 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Association for Computational Linguistics.

[4] Pennington, J., Socher, R., and Manning, C. D. (2014). Glove: Global vectors for word representation. Proceedings of the 2014 Conference on Empiricial Methods in Natural Language Processing (EMNLP-2014), 12:1532–1543.

© 2017 NILC - Núcleo Interinstitucional de Linguística Computacional

Creative Commons LicenseThis work is licensed under a Creative Commons Attribution 4.0 International License