An approach for grouping sentences by semantic similarity using language models and graph theory
Nenhuma Miniatura disponível
Citações na Scopus
Tipo de produção
Dissertação
Data
2024
Autores
Ramos, João Paulo Oliveira
Orientador
Bianchi, Reinaldo Augusto da Costa
Periódico
Título da Revista
ISSN da Revista
Título de Volume
Citação
RAMOS, João Paulo Oliveira. An approach for grouping sentences by semantic similarity using language models and graph theory. 2024. 76 f. Dissertação (Mestrado em Engenharia Mecânica) - Centro Universitário FEI, São Bernardo do Campo, 2024.
Texto completo (DOI)
Palavras-chave
Inteligência artificial,Aprendizado de Máquina
Resumo
Revisão da literatura é uma etapa mandatória durante uma pesquisa cientifica. Nesta
fase, o pesquisador está constantemente procurando, lendo e filtrando os artigos que são
relacionados a seu tópico de pesquisa. Em um cenário em que um número acumulado de artigos
encontrados não são de interesse, tempo e energia são gastos sem resultados concretos. Com o
crescimento exponencial de informações como noticias, artigos científicos, um campo chamado
Sumarização Automática de Texto (SAT) se destaca. Esse campo é uma aplicação da área
de Recuperação de Informação (RI), onde um resumo reduzido e compreensivo é extraído ou
gerado a partir de um documento. A sumarização manual toma tempo, é custosa e impraticável
frente a quantidade de informação textual disponível. O objetivo desse trabalho é criar um
modelo semi-supervisionado capaz de criar um resumo compreensivo de um artigo cientifico,
agrupando parágrafos em quarto classes: Objetivo, Metodologia, Resultados e Motivação.
A metodologia é composta de sete seções, sendo essas: Seção 4.1 que descreve a base
de dados utilizada. Seção 4.2 que trata do pre-processamento dos textos utilizados. Seção 4.3
que trata da metodologia utilizada para extrair as palavras chaves dos textos. Seção 4.4 que
trata da metodologia utilizada para criar o grafo de palavras que é utilizado pelos modelos. Na
Seção 4.5 é apresentada como os parágrafos são distribuídos entre os buckets. Na Seção 4.6 é
apresentado como o modelo de N-gramas foi treinado. Na Seção 4.7.3 é apresentado a métrica
de Entropia, e como ela é aplicada no técnica de agrupamento dos textos, junto do algoritmo
de Dijkstra que é utilizado em um dos modelos de Entropia. Por ultimo é apresentado na
Seção 4.8 o modelo de otimização criado para os modelos de entropia.
A base de dados utilizada foi gerada pelo crawler criado por Meng et al. (2021) com
o objetivo de extrair os artigos do website Emerald (EMERALD. . . , n.d.). Emerald é um
publicador de artigos e revistas cientificas, com uma base de dados com mais de 60 mil
documentos de diversos campos de estudo. Cada artigo científico dessa plataforma contém um
resumo separado em quatro categorias. sendo essas categorias: proposito, método, achados
e valores. O proposito descreve o objetivo do artigo, o método a metodologia e tecnologias,
achados encontram-se os resultados do trabalho, e valores encontramos as motivações e valores
do artigo científico. Nesse trabalho é utilizado uma base de dados reduzida, pois não foi possível
obter acesso completo aos dados da plataforma Emerald. Foram utilizados os artigos marcados
como Open Access. No total foram utilizados 643 artigos nos experimentos. Os textos foram
separados em parágrafos, cada parágrafo sendo uma das categorias citadas anteriormente. A
primeira etapa dos preprocessamentos dos dados, é a extração dos parágrafos. Em seguida, é
feita lematização e tokenização dos textos. Para selecionar os as palavras chaves que foram
utilizadas no segundo modelo de entropia, foi utilizado o algoritmo Summa (BARRIOS et al.,
2016). Foram utilizados cinco palavras por categoria de texto. O grafo de palavras foi criado a
partir de um grafo bi-direcionado, onde cada nó é uma palavra e as arestas são as quantidades
de vezes que uma palavra se conectou com outra palavra. Em seguida foi feita a soma dos
pesos das arestas do grafo, gerando um grafo não-direcional apresentado na Figura 2. Com
essa contagem de conexões entre as palavras nas arestas, foi feito o calculo da probabilidade
conjunta das arestas, gerando o grafo da Figure 4. Em seguida foi feita a transformação das
arestas utilizando o logaritmo negativo, para que seja possível utilizar o algoritmo de Dijkstra
para encontrar o menor caminho das palavras de um paragrafo, para as palavras chaves que
foram definidas anteriormente. Foram criados dois modelos de entropia, um que utiliza apenas
a Entropia como métrica de agrupamento dos paragrafos, e outro que utiliza a entropia, o
algoritmo de Dijkstra e as palavras chaves para enviesar o agrupamento dos parágrafos. Os
modelos são compostos pelo modelo de linguagem N-grama. No total, foram gerados quatro
tamanhos diferentes de N-gramas, sendo eles 2-grama, 3-grama, 4-grama e 5-grama. Cada
N-grama é chamado de bucket, no total são criados 4 buckets, um para cada categoria de
texto. Cada bucket tem como proposito se especializar em um grupo de texto. No caso do
modelo que utiliza apenas a Entropia, o agrupamento é aleatório entre os 4 buckets. Já para o
modelo que utiliza as palavras chave, cada bucket tem uma categoria de texto pré-definida. O
modelo de otimização criado consiste em avaliar se a entropia geral do modelo esta diminuindo
ou não. Se a entropia diminuir, o modelo executa a etapa de troca de textos entre os buckets,
por outro lado, se entropia se mantiver no mesmo valor, ou for maior, o modelo não executa a
troca dos textos entre os buckets. Nessa etapa são selecionados dois buckets aleatoriamente
para cada iteração do modelo.
Os experimentos são apresentados no Capitulo 5. Onde é avaliado a performance para
cada tamanho de n-grama. A curva de otimização dos modelos para avaliar se a entropia.
E por final a influencia das palavras chaves com a utilização do algoritmo de Dijkstra no
agrupamento dos textos. Por final foram utilizados dois modelos conhecidos na literatura como
base de comparação. O modelo K-means, aprestado na Seção 5.4 e o modelo de LSTM (Long
short-term memory) apresentado na Seção 5.5.
Os resultados desse projeto demonstraram que ambos os modelos de entropia não
conseguiram segmentar os textos nas quatro classes previstas, mesmo quando a entropia geral
dos modelos estava diminuindo ou da hipótese de que utilizar as palavras chaves e o algoritmo
Dijkstra seria melhor para enviesar o agrupamento dos textos. O modelo Kmeans e LSTM
também não obtiveram resultados satisfatórios no agrupamento e classificação dos textos.
Conclui-se que a entropia não pode ser utilizada como uma métrica de agrupamento de texto
quando utilizada junto do modelo de linguagem N-grama. O modelo Kmeans pode ter seus
hiper-parâmetros otimizados para uma possível melhora no agrupamento dos textos, o mesmo
pode ocorrer para o modelo LSTM, e sua classificação dos grupos de textos.
The literature review is a mandatory step during research. In this phase, the researcher is constantly searching, reading and filtering papers related to the research topic. In a scenario that an accumulative number of papers are not of interest, time and energy is spent, without concrete results. With the exponential growth of textual information being generated, such as news articles, research papers, and legal documents, Automatic Text Summarization (ATS) becomes an important research field. ATS is an application of Information Retrieval, where a shorter and comprehensive summary is extracted or generated from a source document. Manual summarization is time consuming, costly, and impractical with the amount of text information that is available. The goal of this work is to create a semi-supervised model that is able to create a comprehensive summary of a paper, by grouping paragraphs in four classes: Objective, Motivation, Methodology and Results. This project results showed that both entropy models were not able to split the texts into the four predefined classes, even when the general entropy was dropping, or when using the keywords and Dijkstra algorithm would be a better alternative to bias the texts grouping. Kmeans and LSTM models also did not got satisfactory results on texts grouping and classification. At the end it is possible to tell that the entropy can not be used as a measurement for texts grouping when used together with the N-gram language model. Kmeans model must have their hyperparameter optimized for a possible improvement on the texts grouping task, the same must happen for the LSTM model and the text classification task
The literature review is a mandatory step during research. In this phase, the researcher is constantly searching, reading and filtering papers related to the research topic. In a scenario that an accumulative number of papers are not of interest, time and energy is spent, without concrete results. With the exponential growth of textual information being generated, such as news articles, research papers, and legal documents, Automatic Text Summarization (ATS) becomes an important research field. ATS is an application of Information Retrieval, where a shorter and comprehensive summary is extracted or generated from a source document. Manual summarization is time consuming, costly, and impractical with the amount of text information that is available. The goal of this work is to create a semi-supervised model that is able to create a comprehensive summary of a paper, by grouping paragraphs in four classes: Objective, Motivation, Methodology and Results. This project results showed that both entropy models were not able to split the texts into the four predefined classes, even when the general entropy was dropping, or when using the keywords and Dijkstra algorithm would be a better alternative to bias the texts grouping. Kmeans and LSTM models also did not got satisfactory results on texts grouping and classification. At the end it is possible to tell that the entropy can not be used as a measurement for texts grouping when used together with the N-gram language model. Kmeans model must have their hyperparameter optimized for a possible improvement on the texts grouping task, the same must happen for the LSTM model and the text classification task