Description
European Union (EU) legislation is published in the EUR-Lex portal. All EU laws are annotated by the EU’s Publications Office with multiple concepts from the EuroVoc thesaurus, a multilingual thesaurus maintained by the Publications Office.
Given a document, the legclf_documentation_bert model, it is a Bert Sentence Embeddings Document Classifier, classifies if the document belongs to the class Documentation or not (Binary Classification) according to EuroVoc labels.
Predicted Entities
Documentation, Other
How to use
document_assembler = nlp.DocumentAssembler()\
    .setInputCol("text")\
    .setOutputCol("document")
embeddings = nlp.BertSentenceEmbeddings.pretrained("sent_bert_base_cased", "en")\
    .setInputCols("document")\
    .setOutputCol("sentence_embeddings")
doc_classifier = legal.ClassifierDLModel.pretrained("legclf_documentation_bert", "en", "legal/models")\
    .setInputCols(["sentence_embeddings"])\
    .setOutputCol("category")
nlpPipeline = nlp.Pipeline(stages=[
    document_assembler, 
    embeddings,
    doc_classifier])
df = spark.createDataFrame([["YOUR TEXT HERE"]]).toDF("text")
model = nlpPipeline.fit(df)
result = model.transform(df)
Results
+-------+
|result|
+-------+
|[Documentation]|
|[Other]|
|[Other]|
|[Documentation]|
Model Information
| Model Name: | legclf_documentation_bert | 
| Compatibility: | Legal NLP 1.0.0+ | 
| License: | Licensed | 
| Edition: | Official | 
| Input Labels: | [sentence_embeddings] | 
| Output Labels: | [class] | 
| Language: | en | 
| Size: | 21.6 MB | 
References
Train dataset available here
Benchmarking
        label precision recall  f1-score  support
Documentation      0.81   0.83      0.82       83
        Other      0.87   0.85      0.86      107
     accuracy         -      -      0.84      190
    macro-avg      0.84   0.84      0.84      190
 weighted-avg      0.84   0.84      0.84      190