[papier] [modèle] [démo]
La génération de poésie a été une tâche difficile dans le domaine du traitement du langage naturel, car elle nécessite que le modèle comprenne les nuances du langage, du sentiment et du style. Dans cet article, nous proposons d'utiliser des modèles de grande langue pour générer des poèmes vietnamiens de divers genres à partir d'invites en langage naturel, facilitant ainsi un processus intuitif avec un contrôle de contenu amélioré.
Notre modèle le plus efficace, la variante GPT-3 Babbage, obtient un score d'évaluation personnalisé de 0.8 , spécifiquement adapté au genre "Luc Bat" de la poésie vietnamienne. En outre, nous explorons également l'idée de paraphraser des poèmes dans des invites de texte normales et de produire un score relativement élevé de 0.781 dans le genre "Luc Bat". Cette expérience présente le potentiel de traduction de poème à poème inter-langue avec des poèmes traduits par entrées tout en conservant simultanément un contrôle complet sur le contenu généré.
L'ensemble de données ORIGNIAL est une collection de poèmes vietnamiens 171188 avec différents genres: Luc-Bat, 5-Chu, 7-Chu, 8-Chu, 4-Chu. Téléchargez ici.
Pour plus de détails, reportez-vous à la section Remerciements
Nous avons également créé nos propres ensembles de données pour une génération basée sur l'invite dans le dossier Resource / DataSet.
Nous avons formé un classificateur de genre personnalisé basé sur Bert avec une précision de 99.7% pour classer le genre correct avant de marquer. Pour plus de détails, reportez-vous à notre classificateur de poème vietnamien. Cela serait utile pendant le test aveugle (où le genre n'est pas spécifié).
Le code de formation est dans ce dépôt. Pour entraîner le classificateur, courez:
python poem_classifier_training.py
Nous utilisons une fonction personnalisée pour marquer la qualité d'un poème, basé sur sa conformation à la règle rigide de divers types de poème vietnamien. Utilisation de 3 critères: longueur, ton et rime comme suit: score = L/10 + 3T/10 + 6R/10
Tableau 1: Comparaison des résultats des modèles
| Modèles | Luc batte | Aveugle | 7 chu | 8 chu | 5 chu | 4 chu |
|---|---|---|---|---|---|---|
| texto-poème | ||||||
| Chatgpt (zéro-shot) | 0,440 | 0,345 | 0,292 | 0.197 | 0,284 | 0,238 |
| DaVinci (1000 échantillons) | 0,580 | - | - | - | - | - |
| Bloom (échantillons de 20k) | 0,678 | 0,596 | 0,367 | 0,279 | 0,480 | 0,440 |
| Babbage (échantillons de 20k) | 0,718 | - | - | - | - | - |
| Babbage | 0,805 | 0,795 | 0,661 | 0,500 | 0,382 | 0,392 |
| poème à poème | ||||||
| Babbage | 0,781 | - | - | - | - | - |
Actuellement, le genre Luc Bat score le plus élevé en raison de la taille de l'échantillon. Il a également tendance à gérer Luc Bat lorsque le genre n'est pas spécifié, il marque également très haut pendant le test aveugle.
La version OpenSource utilise une LORA pour Bloom-7b1 en 8 bits et peut fonctionner sur Colab. Vous pouvez l'essayer ici (probablement à court de mémoire et de crash.
@misc { huynh2024vietnamese ,
title = { Vietnamese Poem Generation & The Prospect Of Cross-Language Poem-To-Poem Translation } ,
author = { Triet Minh Huynh and Quan Le Bao } ,
year = { 2024 } ,
eprint = { 2401.01078 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.CL }
} Ce projet a été inspiré par la méthode d'évaluation du Generator de poème SP-GPT2 de fsoft-ailab
L'ensemble de données également tiré de leur repo