greekbart / README.md
habdine's picture
Update README.md
c3d58c8 verified
metadata
tags:
  - summarization
  - bart
language:
  - gr
license: mit
pipeline_tag: fill-mask
library_name: transformers

GreekBART: The First Pretrained Greek Sequence-to-Sequence Model

Introduction

GreekBART is a Greek sequence to sequence pretrained model based on BART. GreekBART is pretrained by learning to reconstruct a corrupted input sentence. A corpus of 76.9GB of Greek raw text is used to carry out the pretraining. Unlike already existing BERT-based Greek language model (GreekBERT), GreekBART is particularly well-suited for generative tasks (such as abstractive summarization), since not only its encoder but also its decoder is pretrained. In addition to base GreekBART that is pretrained from scratch on the reconstruction, we finetune it as wll on three tasks: greekbart-news24-abstract that can generate an abstract given a Greek news article, greekbart-news24-title that can generate an title given a Greek news article, and greekbart-sentiment-classification finetuned on a binary sentinement classification task.

Model Architecture #layers #params
GreekBART BASE 12 165M
GreekBART Abstract BASE 12 165M
GreekBART Title BASE 12 165M
GreekBART Sentiment Classification BASE 12 165M

paper: https://arxiv.org/pdf/2304.00869
github: https://github.com/iakovosevdaimon/GreekBART

Usage

Mask Prediction

from transformers import pipeline 

greekbart_fill_mask  = pipeline("fill-mask", model="dascim/greekbart", tokenizer="dascim/greekbart")
results = greekbart_fill_mask("Η πρωτεύουσα της Ελλάδας είναι η <mask>")

results[0]
# {'score': 0.597200870513916, 'token': 7062, 'token_str': 'Αθήνα', 'sequence': 'Η πρωτεύουσα της Ελλάδας είναι η Αθήνα'}, 

Abstract Generation

text_sentence = 'Στην κατάθεση νοσηλεύτριας του Καραμανδάνειου Νοσοκομείου Πάτρας Παναγιώτας Τσεντούρου, η οποία εργαζόταν όταν εισήχθη στις 8 Απριλίου 2021 η Τζωρτζίνα, προχώρησε η διαδικασία ενώπιον του ΜΟΔ που δικάζει τη Ρούλα Πισπιρίγκου. Η νοσηλεύτρια κατέθεσε πως κατά την εισαγωγή του παιδιού "μου ανέφεραν πως είναι ένα παιδάκι που έχει χάσει τα αδελφάκια του και ότι είναι ιδιαίτερη περίπτωση" και εξιστόρησε τα γεγονότα της ημέρας εισαγωγής και της επομένης που η ίδια είχε βάρδια στην παιδιατρική κλινική.'

from transformers import (
    AutoTokenizer,
    AutoModelForSeq2SeqLM
)

tokenizer = AutoTokenizer.from_pretrained("dascim/greekbart-news24-abstract")
model = AutoModelForSeq2SeqLM.from_pretrained("dascim/greekbart-news24-abstract")

input_ids = tokenizer.encode(text_sentence, add_special_tokens=True, return_tensors='pt')

model.eval()
predict = model.generate(input_ids, max_length=100)[0]


tokenizer.decode(predict, skip_special_tokens=True)
#'Η νοσηλεύτρια κατέθεσε πως κατά την εισαγωγή του παιδιού "μου ανέφεραν πως είναι ένα παιδάκι που έχει χάσει τα αδελφάκια του και ότι είναι ιδιαίτερη περίπτωση".'

Title Generation

text_sentence = 'Στην κατάθεση νοσηλεύτριας του Καραμανδάνειου Νοσοκομείου Πάτρας Παναγιώτας Τσεντούρου, η οποία εργαζόταν όταν εισήχθη στις 8 Απριλίου 2021 η Τζωρτζίνα, προχώρησε η διαδικασία ενώπιον του ΜΟΔ που δικάζει τη Ρούλα Πισπιρίγκου. Η νοσηλεύτρια κατέθεσε πως κατά την εισαγωγή του παιδιού "μου ανέφεραν πως είναι ένα παιδάκι που έχει χάσει τα αδελφάκια του και ότι είναι ιδιαίτερη περίπτωση" και εξιστόρησε τα γεγονότα της ημέρας εισαγωγής και της επομένης που η ίδια είχε βάρδια στην παιδιατρική κλινική.'

from transformers import (
    AutoTokenizer,
    AutoModelForSeq2SeqLM
)

tokenizer = AutoTokenizer.from_pretrained("dascim/greekbart-news24-title")
model = AutoModelForSeq2SeqLM.from_pretrained("dascim/greekbart-news24-title")

input_ids = tokenizer.encode(text_sentence, add_special_tokens=True, return_tensors='pt')

model.eval()
predict = model.generate(input_ids, max_length=100)[0]


tokenizer.decode(predict, skip_special_tokens=True)
# 'Πάτρα: Κατάθεση νοσηλεύτριας για την εισαγωγή της Τζωρτζίνας στο νοσοκομείο'

Sentiment Prediction

text_sentence = "Ο ελληνικός πολιτισμός είναι ένας από τους πιο πλούσιους και αναγνωρισμένους πολιτισμούς."

from transformers import (
    AutoTokenizer,
    AutoModelForSequenceClassification
)

tokenizer = AutoTokenizer.from_pretrained("dascim/greekbart-sentiment-classification")
model = AutoModelForSequenceClassification.from_pretrained("dascim/greekbart-sentiment-classification")

input_ids = tokenizer.encode(text_sentence, add_special_tokens=True, return_tensors='pt')

model.eval()
predict = model(input_ids)[0]

print("negative" if predict.argmax(dim=-1).item()==1 else "positive") 
# positive

Authors

GreekBART was trained and evaluated ar École Polytechnique by Iakovos Evdaimon, Hadi Abdine, Christos Xypolopoulos, Stamatis Outsios, Michalis Vazirgiannis and Giorgos Stamou.

Citation

If you use our work, please cite:

@inproceedings{evdaimon-etal-2024-greekbart,
    title = "{G}reek{BART}: The First Pretrained {G}reek Sequence-to-Sequence Model",
    author = "Evdaimon, Iakovos  and
      Abdine, Hadi  and
      Xypolopoulos, Christos  and
      Outsios, Stamatis  and
      Vazirgiannis, Michalis  and
      Stamou, Giorgos",
    editor = "Calzolari, Nicoletta  and
      Kan, Min-Yen  and
      Hoste, Veronique  and
      Lenci, Alessandro  and
      Sakti, Sakriani  and
      Xue, Nianwen",
    booktitle = "Proceedings of the 2024 Joint International Conference on Computational Linguistics, Language Resources and Evaluation (LREC-COLING 2024)",
    month = may,
    year = "2024",
    address = "Torino, Italia",
    publisher = "ELRA and ICCL",
    url = "https://aclanthology.org/2024.lrec-main.700",
    pages = "7949--7962",
}