Pyrouge est un emballage Python pour le package d'évaluation Rouge Résumé. Faire fonctionner Rouge peut nécessiter pas mal de temps. Pyrouge est conçu pour faciliter l'obtention des scores rouges en convertissant automatiquement vos résumés en un format que Rouge comprend et en générant automatiquement le fichier de configuration Rouge.
Vous pouvez évaluer vos résumés de texte brut comme ceci:
de Pyrouge Import Rouge155 r = rouge155 () r.system_dir = 'path / to / system_summaries' R.Model_Dir = 'Path / To / Model_Summaries' R.System_Filename_Pattern = 'Some_name. ( D +). Txt' r.model_filename_pattern = 'some_name. [az]. # id # .txt' output = r.convert_and_evaluate () Imprimer (sortie) output_dict = r.output_to_dict (sortie)
Afin d'évaluer les résumés, Rouge doit savoir où sont vos résumés et les résumés des normes en or et comment les faire correspondre. Dans le langage de Rouge, vos résumés sont des résumés «système» et les résumés des normes en or sont des résumés «modèle». Les résumés doivent être dans des dossiers séparés, dont les chemins sont définis avec les variables system_dir et model_dir . Tous les résumés doivent contenir une phrase par ligne.
Pour correspondre automatiquement à un résumé du système avec les résumés de modèle correspondants, Pyrouge utilise des expressions régulières. Par exemple, supposons que vos résumés de système sont nommés avec une combinaison d'un nom fixe et d'un ID numérique variable comme ceci:
et les résumés de modèle comme celui-ci, avec des lettres majuscules identifiant plusieurs résumés de modèle pour un document donné:
Le groupe du system_filename_pattern indique à Pyrouge quelle partie du nom de fichier est l'ID - dans ce cas (d+) . Vous devez utiliser des supports ronds pour indiquer un groupe, sinon Pyrouge ne pourra pas distinguer l'identifiant du reste du nom de fichier. Pyrouge utilise ensuite cet ID pour trouver tous les résumés de modèle correspondant. L' #ID# indique à Pyrouge où il doit s'attendre à l'ID dans le model_filename_pattern . La pièce [AZ] correspond à plusieurs résumés de modèle pour cet ID.
Avec la configuration effectuée, invoquer convert_and_evaluate() vous propose les scores rouges en tant que chaîne. Si vous souhaitez traiter davantage les scores, vous pouvez analyser la sortie en un dict avec output_to_dict(output) .
Pour convertir les résumés de texte brut en un format, Rouge comprend, faites:
de Pyrouge Import Rouge155 Rouge155.convert_summaires_to_rouge_format (system_input_dir, system_output_dir) Rouge155.convert_summaires_to_rouge_format (Model_input_dir, Model_Output_Dir)
Cela convertira tous les résumés de system_input_dir et model_input_dir , et les enregistrer dans leurs répertoires de sortie respectifs.
Pour générer le fichier de configuration que Rouge utilise pour faire correspondre les résumés du système et du modèle, faites:
de Pyrouge Import Rouge155
Rouge155.write_config_static (
System_dir, System_Filename_Pattern,
modèle_dir, modèle_filename_pattern,
config_file_path)
Les quatre premiers arguments sont expliqués ci-dessus. config_file_path spécifie où enregistrer le fichier de configuration.
Si vous préférez la ligne de commande à Python et le module Pyrouge, vous pouvez utiliser les scripts suivants, qui sont automatiquement installés et doivent être exécutés de n'importe où sur votre système:
pyrouge_evaluate_plain_text_files -s system_plain / -sfp "some_name. ( d +). txt" -m modèles_plain / -mfp some_name. [az]. # id # .txt
sample-test/SL2003 fourni avec Rouge:pyrouge_evaluate_rouge_format_files -s systems -sfp "sl.p.10.r.11.sl062003 - ( d +).
Notez que le modèle de nom de fichier système est enfermé dans des guillemets car il contient des caractères spéciaux.
pyrouge_convert_plain_text_to_rouge_format -i modèles_plain / -o modèles_rouge
pyrouge_write_config_file -s systems -sfp "sl.p.10.r.11.sl062003 - ( d +). html" -m modèles -mfp sl.p.10.r. [az] .sl062003- # id # .html -c Sl2003_Config.xml
L'exécution de ces éléments avec l'option -h affichera un message d'utilisation expliquant les différentes options de ligne de commande.
Des instructions sur l'installation de Rouge peuvent être trouvées ici.
Selon votre système, vous devrez peut-être exécuter les commandes suivantes en tant que racine.
Pour installer Pyrouge, exécuter:
pip install pyrouge
Si vous avez du mal à installer Pyrouge sur Windows, veuillez consulter ce guide par Franck Dernoncourt.
En supposant un Rouge-1.5.5 en activité. Installation, dites à Pyrouge le chemin Rouge avec cette commande:
pyrouge_set_rouge_path /absolute/path/to/rouge-1.5.5/directory
Si la sauvegarde du chemin Rouge en utilisant ce script ne fonctionne pas sur votre système, vous pouvez également fournir le chemin Rouge à l'exécution:
r = rouge155 ('/ absolu / path / to / rouge-1.5.5 / répertoire')
Pour tester si tout est installé correctement, exécutez:
python -m pyrouge.test
Si tout fonctionne, vous devriez voir quelque chose comme:
Effectué 10 tests en 18.055 D'ACCORD
Si vous voulez désinstaller Pyrouge:
pipe désinstaller pyrouge