Modelos poderosos de cluster de documentos são essenciais, pois podem processar com eficiência grandes conjuntos de documentos. Esses modelos podem ser úteis em muitos campos, incluindo pesquisas gerais. Pesquisar através de grandes corpora de publicações pode ser uma tarefa lenta e tediosa; Tais modelos podem reduzir significativamente esse tempo. Investigamos diferentes variações de um modelo BERT pré-treinado para encontrar, que é mais capaz de produzir incorporações de palavras para representar documentos dentro de um corpus maior. Essas incorporações são reduzidas em dimensionalidade usando PCA e agrupadas com K-Means para obter informações sobre qual modelo pode melhor diferenciar os tópicos dentro de um corpus. Descobrimos que Sbert era o melhor modelo para esta tarefa das variações testadas de Bert.
Pré -requisitos:
Dependências: o projeto usa várias bibliotecas Python, necessárias para executar esse código. Para instalar o código, execute o snippet de código abaixo no prompt da Anaconda.
pip install -r requirements.txt
Python Notebook: Existem dois notebooks do Python: [1] NLP_FINAL_PROJECT_CODE.IPYNB e [2] BERT COSINE SIMULIDIDADE TEST.IPYNB
O NLP_FINAL_PROJECT_CODE.IPYNB contém a base de código para avaliar as incorporações textuais Bert para clustering. Utilizamos o PCA para redução de dimensionalidade e K-means para agrupamento. As incorporações são calculadas separadamente e armazenadas no arquivo CSV na pasta ./data .
No teste de similaridade de Bert Cosine.ipynb, estamos testando a capacidade de incorporar Bert de capturar a semelhança entre os documentos. Para isso, agrupamos manualmente os arquivos com base em seu conteúdo 1) grupo de arquivos semelhantes e 2) grupo de arquivos diferentes. Em seguida, medimos a similaridade de cosseno entre cada grupo. Nossa hipótese foi de que as incorporações de Bert poderiam detectar semelhanças entre os documentos com base em sua representação pré -traida. Também avaliamos Sbert, que provou fornecer uma melhor representação do que as diferentes variantes de Bert.