Escolar Documentos
Profissional Documentos
Cultura Documentos
[Nome do Aluno]
O presente artigo tem como premissa básica verificar como os modelos geradores de
tópicos BERTopic e Top2Vec produzem significação semântica das decisões judiciais
do STJ. Os modelos de Deep Learning, e em especial o BERT (Bidirectional Encoder
Representations from Transformers), utilizam um Transformer, um mecanismo de
atenção que aprende através de relações contextuais entre palavras de um
determinado texto. O corpus usado consiste em 30.515 decisões judiciais
pesquisadas no portal do órgão. Para tal, foi criado uma base de dados em MongoDB
para receber os documentos extraídos por ferramenta web scraping utilizando a
linguagem de programação Python. Os modelos sumarizaram os documentos em
clusters de similaridade ou dissimilaridade gerando tópicos como saída básica. Com
isso busca-se valorar esse insumo – informação digital, ao introduzir e delinear um
escopo de forma a quantificar e prever eventos jurídicos em dados históricos alocados
em tribunais do Brasil. Esta técnica Jurimetria ganhou força ao longo dos tempos com
o acúmulo de dados digitais. O objetivo é estreitar as áreas do Direito e da Estatística
para produzir pesquisas empíricas. A ideia central da PLN é generalizar os dados
através de robustos cálculos matemáticos realizados pelos algoritmos de Deep
Learning e Machine Lerning em redes neurais com várias camadas. Os modelos
estatísticos aprendem com dados de treinamento em uma coleção de textos para
fazer previsões futuras. Os algoritmos de PLN oriundos de Deep Learning convertem
padrões de palavras, sentença e parágrafos em vetores matemáticos dentro de um
espaço geométrico.
CAMPOS, Eduardo. STJ Judicial Decisions from the point of view of Artificial
Intelligence: Topic generator models BERTopic and Top2Vec, 2023. 49 f. Completion
of course work (MBA in Data Science) – Institute of Mathematics and Computer
Sciences, University of São Paulo, São Carlos, 2023.
The basic premise of this article is to verify how the topic generator models BERTopic
and Top2Vec produce semantic meaning of STJ judicial decisions. Deep Learning
models, and in particular BERT (Bidirectional Encoder Representations from
Transformers), use a Transformer, an attention mechanism that learns through
contextual relationships between words in a given text. The corpus used consists of
30,515 court decisions searched on the STJ's portal. To this end, a database was
created in MongoDB to receive documents extracted by a web scraping tool using the
Python programming language. The models summarized the documents in clusters of
similarity or dissimilarity generating topics as basic output. This seeks to value this
input – digital information, by introducing and outlining a scope in order to quantify and
predict legal events in historical data allocated in courts in Brazil. This Jurimetria
technique has gained strength over time with the accumulation of digital data. The
objective is to narrow the areas of Law and Statistics to produce empirical research.
The central idea of PLN is to generalize data through robust mathematical calculations
performed by Deep Learning and Machine Lerning algorithms in neural networks with
several layers. Statistical models learn from training data in a collection of texts to make
future predictions. NLP algorithms from Deep Learning convert word, sentence and
paragraph patterns into mathematical vectors within a geometric space.
1 INTRODUÇÃO ....................................................................................................... 12
1.1 Contextualização - Motivação ..................................................................................................... 12
1.2 Objetivos ..................................................................................................................................... 13
1.3 Estrutura deste trabalho ............................................................................................................. 14
2 REFERENCIAL TEÓRICO..................................................................................... 15
2.1 Considerações iniciais ................................................................................................................. 15
2.2 Conceitos Fundamentais ............................................................................................................. 15
2.2.1 Jurimetria ............................................................................................................................. 15
2.2.2 Processamento de Linguagem Natural (PLN) ....................................................................... 16
2.2.3. Tokenização – Tokenization ................................................................................................ 18
2.2.4 Stemização – Stemming ....................................................................................................... 19
2.2.5 Lematização – Lemmatization.............................................................................................. 19
2.2.6 Bag of words......................................................................................................................... 20
2.2.7 TF-IDF ................................................................................................................................... 20
2.2.8 Word embedding .................................................................................................................. 21
2.2.9 Stopwords............................................................................................................................. 22
2.2.10 Corpus................................................................................................................................. 22
2.3 A Ascensão do Transformer como modelo da PLN: Atenção é tudo que você precisa. ............. 24
2.3.1 Modelos geradores de tópicos: BERTopic e Top2Vec .......................................................... 26
3 DESENVOLVIMENTO ........................................................................................... 31
3.1 Considerações iniciais ................................................................................................................. 31
3.2 Fase da Metodologia ................................................................................................................... 31
3.2.1 Escolha dos dados ................................................................................................................ 32
3.2.2 Raspagem de dados - web scraping ..................................................................................... 33
3.2.3 Pré-processamento de dados .............................................................................................. 35
4 ANÁLISE DOS RESULTADOS ............................................................................. 36
4.1 Métrica de Coerência de Tópicos (MCT) ..................................................................................... 36
REFERÊNCIAS......................................................................................................... 47
12
1 INTRODUÇÃO
1.1 Contextualização - Motivação
semanas para serem ajustados. Após todo esse treinamento, os modelos estarão
prontos para atuar em novos corpora e aprender suas nuances a cada “fine tune”.
O ponto de partida do presente trabalho são os dados brutos extraídos da
jurisprudência oriunda das decisões judiciais do Superior Tribunal de Justiça (STJ),
que concentra uma das maiores base de dados em português de cunho jurídico.
Criado pela Constituição Federal de 1988, o Superior Tribunal de Justiça
(STJ) é a corte responsável por uniformizar a interpretação da lei federal em
todo o Brasil. É de sua responsabilidade a solução definitiva dos casos civis
e criminais que não envolvam matéria constitucional nem a justiça
especializada.1
1.2 Objetivos
2 REFERENCIAL TEÓRICO
2.1 Considerações iniciais
regras formais que garantam uma argumentação válida cujo objetivo era semelhante
à econometria (LOEVINGER, 1992).
Perceba que esse novo ramo do Direito ganhou força ao longo dos tempos com
o acúmulo de dados digitais. O objetivo é estreitar as áreas do Direito e da Estatística
para produzir pesquisas empíricas. A Associação Brasileira de Jurimetria (ABJ),
fundada em 2011 por pesquisadores do Instituto de Matemática e Estatística da
Universidade de São Paulo (IME-USP) e da Pontifícia Universidade Católica de São
Paulo (PUC-SP) mantém a difusão no tema no Brasil2. Como dito, esta intercessão
entre áreas do conhecimento tão distintas entre si gera ruídos que são captados por
ambas as partes e cada uma se beneficia internamente.
A artigo
Menina substantivo
Comeu verbo
. pontuação
Para a máquina, um token contém sua estrutura bem definida. O maior cuidado
é com a língua portuguesa, diferentemente do inglês, temos várias conjugações
verbais que poderão ser eliminadas e prejudicar o contexto.
2.2.7 TF-IDF
Por mais que tenhamos todo este contexto de PLN, o computador não trabalha
dentro do senso humano de descrever as coisas, cada informação é traduzida em bits.
Em linguagens naturais, uma palavra possui significado além de um simples conjunto
de letras organizados em certa ordem. Uma série de conceitos e alusões existem por
trás de cada palavra na mente humana, porém o mesmo não é valido para sistemas
computacionais, que reconhecem uma palavra simplesmente como um conjunto de
caracteres.
Modelos de língua que sejam adequados ao tratamento computacional são
fundamentais para o sucesso dos métodos de processamento de línguas naturais.
Nos últimos anos, a representação de palavras por meio de vetores tem gerado
resultados bastante promissores. Tais vetores são treinados por modelos neurais
(BENGIO et al., 2003; MIKOLOV et al., 2013) em grandes corpora por meio de
técnicas de aprendizado de máquina não supervisionado.”4
Os algoritmos de PLN oriundos de Deep Learning convertem padrões de
palavras, sentença e parágrafos em vetores matemáticos dentro de um espaço
geométrico. Verdadeiras matrizes em três dimensões (figura 02) que mensuram a
distâncias entre eles.
2.2.9 Stopwords
É preciso retirar qualquer unidade textual que possa gerar ruídos, assim as
stopwords são palavras irrelevantes que estão frequentemente no texto, mas que não
alteram ou adicionam valores ao contexto de forma geral. Geralmente elas são
formadas por pequenas estruturas textuais, como por exemplo: “a”, “de”, “da”, “o”,
“que”, “em”, “mas”, “se”, “quando” e diversas outras. Cada idioma tem suas
especificidades e a retirada de algumas stopwords poderá inviabilizar o processo.
Repisa-se, este conceito é de suma importância para todos os pesquisadores
que trabalham com PLN. Somente com a boa prática de verificar o lixo – garbage in -
no pré-processamento fará que os dados possam ser modelados de maneira fiel ao
objetivo pretendido. Uma outra métrica que deve ser levada em conta é a transparência
com todo o processo de modelagem. A atenção e foco deverá ficar com o corpus. Os
hiperparâmetros poderão ser ajustados após o saneamento do corpus. No nosso
estudo buscamos utilizar o pacote stopwords em português para melhor adequação
da modelagem.
2.2.10 Corpus
conhecidos como (GIGO). Assim, uma boa limpeza para eliminar dados duplicados,
dados desnecessários e dados redundantes é de crucial importância.
Outra questão é o balanceamento dos dados para manter saudável os dados
de treinamento e teste. O objetivo é a criação de um corpus jurídico vasto, mas
separado por tópicos específicos e que possam ser utilizados como referência para
futuras modelagens de dados em PLN. A modelagem foi realizada na base de dados
STJ Data Lake, na qual foi retirada uma amostra do repositório “Código de Processo
Civil” contendo 30.515 documentos. Abaixo (figura 03) temos um documento como
exemplo já tratado:
2.3 A Ascensão do Transformer como modelo da PLN: Atenção é tudo que você
precisa.
Considerado até pouco tempos atrás como o modelo estado-da-arte por conter
milhões/bilhões de parâmetros, o Transformer (VASWANI et al., 2017) será a
arquitetura utilizada no presente trabalho por sua facilidade de uso e seu poder de
predileção. Ele é um modelo de aprendizado profundo que utiliza o mecanismo de
atenção, pesando a influência de diferentes partes dos dados de entrada (DENIS,
2021). Ele substitui os modelos de rede neural recorrente, como o Long-Short Term
Memory (LSTM), Latent Dirichlet Allocation (LDA) e Probabilistic Latent Semantic
Analysis (PLSA).
O modelo Transformer facilita a paralelização durante o treinamento, ele
permite o treinamento em conjuntos de dados maiores do que era possível antes de
ser introduzido (HILL, 2021). Assim, surgiram novos modelos pré-treinados oriundos
do Transformer, como BERT (Bidirectional Encoder Representations from
Transformers) e GPT (Generative Pre-Training Transformer), que foram treinados com
enormes conjuntos de dados de linguagem geral, como Wikipedia Corpus e Common
Crawl, e podem ser receber ajustes para tarefas específicas de linguagem natural
(HILL, 2021).
O modelo pré-treinado Transformer é concebido pelas estruturas codificador e
decodificador. Eles são ordenados por uma pilha de camadas idênticas
(representadas por Nx) e estas camadas são organizadas por duas subcamadas:
A saída é computada como a soma ponderada dos valores tal que o peso
atribuído a cada valor é computado por uma função de compatibilidade da consulta
com a chave correspondente (VASWANI et al., 2017)(tabela 02).
2.3.1.1.1 BERTimbau
2.3.1.2 Top2Vec
2.3.1.2.1 Doc2Vec
Ele faz um bom trabalho ao aprender a estrutura local dentro de seus dados,
mas também tenta preservar os relacionamentos entre seus grupos, como pode ser
visto em sua exploração do MNIST.
“O padrão atual para UMAP é a distância euclidiana. A distância
Hellinger seria uma função de distância mais apropriada para usar com dados
CountVectorize. Isso será lançado em uma versão futura do UMAP. Enquanto
isso, a distância do cosseno é provavelmente um padrão de texto melhor que
o euclidiano e pode ser definido usando o argumento de palavra-chave metric
'cosseno'” (MCINNES, HEALY E MELVILLE, 2020).
2.3.1.2.3 HDBSCAN
3 DESENVOLVIMENTO
3.1 Considerações iniciais
Etapa 2 - manipulação:
• Implementação dos algoritmos e outros frameworks Python (Pandas,
RE, Scikit learn, dentre outros); e
• Importação dos dados para o MongoDB - repositório, separados em
pastas específica e limpeza dos dados.
É inequívoco que existe uma fluidez na elaboração dos tópicos gerados pelo
BERTopic, basta analisar e comparar os documentos do cluster com os tópicos. O
BERTopic fez a melhor performance analisando as métricas de coerências. Olhando
as saídas geradas nos tópicos criados, existe claramente uma padronização
semântica boa.
Na análise dos dados gerados na saída (figura 11), o Top2Vec preconiza que
a maior vantagem do modelo é a não remoção de stopwords, lematização e conheci-
mento a priori do número de tópicos pois não são necessários para o Top2Vec apren-
der bons vetores de tópicos. Entretanto, na prática verificou-se que o modelo é extre-
mamente influenciado pelo pré-processamento do dataset. Sem o saneamento, ele
acaba gerando tópicos com stopwords. O gerador de tópicos não cria coleções de
tópicos com fluidez semântica, deixando entrar outliers que sujam a predileção.
Mesmo utilizando o vetorizador “distiluse-base-multiligual-cased” baseado no
41
framework PyTorch e Transformers para mais de 100 línguas não foi suficiente para
sanar e limpar as stopwords de maneira correta.
Doc2Vec ☒ ☒
HuggingFace Transformers ☒ ☐
Flair ☒ ☐
Spacy ☒ ☐
Gensim ☒ ☐
9https://towardsdatascience.com/topic-modeling-with-lsa-plsa-lda-nmf-bertopic-top2vec-a-comparison-
A seguir apresentamos uma (tabela 06) sintetizada dos principais aspectos dos
modelos testados.
significativa de outliers. K-
Means pode ser usado para
evitar esse comportamento
Melhor desempenho com Melhor desempenho com
documentos mais curtos. A documentos mais curtos. A
maioria dos modelos de maioria dos modelos de
embeddings tem um limite no embeddings tem um limite no
Cadeia de número de tokens de número de tokens de entrada. A
documentos longos entrada. A estratégia pode estratégia pode lidar com isso
lidar com isso (divisão, (divisão, média, etc), mas pode
média, etc), mas pode não não necessariamente levar a
necessariamente levar a tópicos melhores
tópicos melhores
Cadeia de Sim Sim
documentos curtos
Pode ser menos eficaz Pode ser menos eficaz com
Pequenos datasets
com pequenos conjuntos de pequenos conjuntos de dados
(<1000 docs)
dados
Dimensiona melhor com Dimensiona melhor com
Grandes datasets
corpora maiores do que os corpora maiores do que os
(>1000 docs)
modelos tradicionais modelos tradicionais
Modelagem BERTopic suporta Top2Vec não suporta
dinâmica de Modelagem dinâmica de Modelagem dinâmica de tópicos
tópicos tópicos
Tempos de treinamento Tempos de treinamento mais
mais longos em comparação longos em comparação com
com modelos clássicos e modelos clássicos e recursos
recursos computacionais computacionais (GPU)
Velocidade e (GPU) potencialmente caros. potencialmente caros. Existem
Recursos Existem estratégias de estratégias de otimização, mas
otimização, mas LDA e NMF LDA e NMF permanecem mais
permanecem mais rápidos e rápidos e menos dispendiosos
menos dispendiosos
REFERÊNCIAS
ABIODUN, Adetola. The Pandas HandBook: 100 Essential Tips and Tricks for
Beginners. 1.ed published by DACTECH Solutions, Nigeria, 2020.
DELIP, Rao; BRIAN, Mcmahan. Natural Language Processing with PyTorch: Build
Intelligent Language Applications Using Deep Learning. 1.ed published by O’Reilly
Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 9547, 2019.
HILL, Felix. DeepMind’s deep learning videos 2020 with UCL, Lecture: Deep
Learning for Natural Language Processing, Youtube, 22/06/2020. Disponível em:
https://www.youtube.com/watch?v=8zAP2qWAsKg&t=2410s.Acesso em 15/02/2023.
JIANQING, Fan; RUNZE, Li; CUN-HUI, Zhang e HUI, Zou. Statistical Foundations
of Data Science. 1.ed published by CRC Press 6000 Broken Sound Parkway NW,
Suite 300, Boca Raton, FL 33487-2742, 2020.
MERTZ, David. Cleaning Data for Effective Data Science: Doing the other 80% of
the work with Python, R, and command-line tools. 1.ed published by Packt Publishing
Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, UK, 2021
PAPER, David. Data Science Fundamentals for Python and MongoDB. 1.ed
published by APRESS Logan, Utah, USA, 2018.
SEPPE, Vanden Broucke e BART, Baesens. Practical Web Scraping for Data
Science: Best Practices and Examples with Python. 1.ed APRESS Logan, Utah, USA,
2018.
RÖDER, M., BOTH, A., e HINNEBURG, A. Exploring the space of topic coherence
measures. In Proceedings of the eighth ACM international conference on Web search
and data mining (2015).
RUDER, S. Neural transfer learning for natural language processing. 2019. Tese
(Doutorado) — NUI Galway, 2019.
TURING, Alan. Alan Turing's Systems of Logic: The Princeton Thesis. 1.ed
TOMAS, Mikolov; CHEN Kai; CORRADO Greg e DEAN Jeffrey. Efficient estimation
of word representations in vector space, 2013.
VASWANI, A. et al. Attention is all you need. arXiv preprint arXiv:1706.03762, 2017.