--- language: - fr license: mit datasets: - squadFR - fquad - piaf pipeline_tag: "text-generation" metrics: - bleu - rouge widget: - text: Les projecteurs peuvent être utilisées pour illuminer des terrains de jeu extérieurs \ ou des zones de travail pendant les heures de nuit .\ Les projecteurs les plus courants sont les lampes aux halogénures métalliques et les lampes au sodium haute pression. tags: - text-generation - flaubert --- # Génération de question à partir d'un contexte Le modèle est _fine tuné_ à partir du modèle [moussaKam/barthez](https://huggingface.co/moussaKam/barthez) afin de générer des questions à partir d'un paragraphe et d'une suite de token. La suite de token représente la réponse sur laquelle la question est basée. Input: _Les projecteurs peuvent être utilisées pour \illuminer\ des terrains de jeu extérieurs_ Output: _À quoi servent les projecteurs sur les terrains de jeu extérieurs?_ ## Données d'apprentissage La base d'entrainement est la concatenation des bases SquadFR, [fquad](https://huggingface.co/datasets/fquad), [piaf](https://huggingface.co/datasets/piaf). L'input est le context et nous avons entouré à l'aide du token spécial **\** les réponses. Volumétrie (nombre de triplet contexte/réponse/question): * train: 98 211 * test: 12 277 * valid: 12 776 ## Entrainement L'apprentissage s'est effectué sur une carte Tesla V100. * Batch size: 20 * Weight decay: 0.01 * Learning rate: 3x10-5 (décroit linéairement) * < 24h d'entrainement * Paramètres par défaut de la classe [TrainingArguments](https://huggingface.co/transformers/main_classes/trainer.html#trainingarguments) * Total steps: 56 000 La loss represente des "sauts" à cause de la reprise de l'entrainement à deux reprises. Cela induit une modification du learning rate et explique la forme de la courbe. ## Résultats Les questions générées sont évaluées sur les métrique BLEU et ROUGE. Ce sont des métriques approximative pour la génération de texte. ## Tokenizer Le tokenizer de départ est [BarthezTokenizer](https://huggingface.co/transformers/model_doc/barthez.html) auquel ont été rajouté les tokens spéciaux \ et \. ## Utilisation _Le modèle est un POC, nous garantissons pas ses performances_ ```python from transformers import AutoTokenizer, AutoModelForSeq2SeqLM from transformers import Text2TextGenerationPipeline model_name = 'lincoln/barthez-squadFR-fquad-piaf-question-generation' loaded_model = AutoModelForSeq2SeqLM.from_pretrained(model_name) loaded_tokenizer = AutoTokenizer.from_pretrained(model_name) nlp = Text2TextGenerationPipeline(model=loaded_model, tokenizer=loaded_tokenizer) nlp("Les projecteurs peuvent être utilisées pour illuminer des terrains de jeu extérieurs") # >>> [{'generated_text': 'À quoi servent les projecteurs sur les terrains de jeu extérieurs?'}] ``` ## Citation Model based on: paper: https://arxiv.org/abs/2010.12321 \ github: https://github.com/moussaKam/BARThez ``` @article{eddine2020barthez, title={BARThez: a Skilled Pretrained French Sequence-to-Sequence Model}, author={Eddine, Moussa Kamal and Tixier, Antoine J-P and Vazirgiannis, Michalis}, journal={arXiv preprint arXiv:2010.12321}, year={2020} } ```