279 4.2K 41

Legal Bert

Um modelo avançado para PLN no contexto jurídico, com foco em preenchimento de máscara e tecnologia jurídica.

Modelo de Linguagem para o Domínio Jurídico em Português

O projeto legal-bert-base-cased-ptbr, é um Modelo de Linguagem para o Domínio Jurídico em Português baseado no modelo BERTimbau base, utilizando a técnica de preenchimento de máscara (fill-mask). O objetivo desse modelo é auxiliar pesquisas em Processamento de Linguagem Natural (PLN) na área jurídica, direito da computação e aplicações de tecnologia jurídica.

Corpora de Pré-Treinamento

O legal-bert-base-cased-ptbr foi pré-treinado utilizando diversos corpora de textos jurídicos em português. Esses corpora incluem:

  • 61309 - Documentos jurídicos diversos
  • 751 - Petições (Recurso Extraordinário JEC)
  • 682 - Sentenças
  • 498 - Acórdãos 2ª Instância
  • 469 - Agravos Recurso Extraordinário (RE)
  • 411 - Despachos de Admissibilidade

Os dados utilizados foram fornecidos pelo SUPREMO TRIBUNAL FEDERAL BRASILEIRO, conforme os termos de uso em LREC 2020. É importante ressaltar que os resultados desse projeto não implicam de forma alguma a posição do SUPREMO TRIBUNAL FEDERAL BRASILEIRO, sendo de responsabilidade exclusiva do autor do modelo.

Uso do Modelo

O legal-bert-base-cased-ptbr pode ser carregado utilizando a biblioteca Hugging Face Transformers. Abaixo, exemplos de como carregar o modelo utilizando um tokenizer e o modelo diretamente, ou através de um pipeline específico para preenchimento de máscara.

from transformers import AutoTokenizer, AutoModel
 
tokenizer = AutoTokenizer.from_pretrained("dominguesm/legal-bert-base-cased-ptbr")
model = AutoModel.from_pretrained("dominguesm/legal-bert-base-cased-ptbr")
 
# OU
 
from transformers import pipeline
 
fill_mask_pipeline = pipeline('fill-mask', model="dominguesm/legal-bert-base-cased-ptbr")

Exemplos de Uso

Alguns exemplos do resultado do modelo para a tarefa de preenchimento de máscara:

TextMasked tokenPredictions
De ordem, a Secretaria Judiciária do Supremo Tribunal Federal INTIMA a parte abaixo identificada, ou quem as suas vezes fizer, do inteiro teor do(a) despacho/decisão presente nos autos (art. 270 do Código de Processo [MASK] e art 5º da Lei 11.419/2006).Civil('Civil', 0.9999), ('civil', 0.0001), ('Penal', 0.0000), ('eletrônico', 0.0000), ('2015', 0.0000)
2. INTIMAÇÃO da Autarquia: 2.2 Para que apresente em Juízo, com a contestação, cópia do processo administrativo referente ao benefício [MASK] em discussão na lideprevidenciário('ora', 0.9424), ('administrativo', 0.0202), ('doença', 0.0117), ('acidente', 0.0037), ('posto', 0.0036)
Certifico que, nesta data, os presentes autos foram remetidos ao [MASK] para processar e julgar recurso (Agravo de Instrumento).STF('Tribunal', 0.4278), ('Supremo', 0.1657), ('origem', 0.1538), ('arquivo', 0.1415), ('sistema', 0.0216)
TEMA: 810. Validade da correção monetária e dos juros moratórios [MASK] sobre as condenações impostas à Fazenda Pública, conforme previstos no art. 1º-F da Lei 9.494/1997, com a redação dada pela Lei 11.960/2009.incidentes('incidentes', 0.9979), ('incidente', 0.0021), ('aplicados', 0.0000), (',', 0.0000), ('aplicada', 0.0000)

Resultados de Treinamento

O modelo foi treinado em um total de 353.435 exemplos por 3 épocas, com um tamanho de lote (batch size) de 32 e acúmulo de gradientes. Os resultados de treinamento e avaliação são os seguintes:

Resultados de Treinamento:

  • Epoch: 3.0
  • Perda de Treinamento: 0.6107781137512769
  • Tempo de Treinamento: 10192.1545 segundos
  • Exemplos de Treinamento: 353435
  • Exemplos de Treinamento por Segundo: 104.031
  • Passos de Treinamento por Segundo: 3.251

Resultados de Avaliação:

  • Epoch: 3.0
  • Perda de Avaliação: 0.47251805663108826
  • Tempo de Avaliação: 126.3026 segundos
  • Exemplos de Avaliação: 17878
  • Exemplos de Avaliação por Segundo: 141.549
  • Passos de Avaliação por Segundo: 4.426
  • Perplexidade: 1.604028145934512

Citação

Se você utilizar o legal-bert-base-cased-ptbr em suas pesquisas ou projetos, por favor, cite o projeto conforme a seguinte referência:

@misc{domingues2022legal-bert-base-cased-ptbr,
    author = {Domingues, Maicon},
    title = {Language Model in the legal domain in Portuguese},
    year={2022},
    howpublished= {\url{https://huggingface.co/dominguesm/legal-bert-base-cased-ptbr/}}
}