Pyrouge ist ein Python -Wrapper für das ROUGE -Summar -Bewertungspaket. Das Arbeiten von Rouge kann einiges an Zeit erfordern. Pyrouge wurde so konzipiert, dass das Erhalten von Rouge -Ergebnissen erleichtert wird, indem Ihre Zusammenfassungen automatisch in ein Format -Rouge konvertiert und die Rouge -Konfigurationsdatei automatisch generiert werden.
Sie können Ihre einfachen Textzusammenfassungen wie folgt bewerten:
Aus Pyrouge Import Rouge155 R = Rouge155 () R.System_dir = 'Pfad/to/system_summaries' r.model_dir = 'path/to/model_summaries' R.System_Filename_Pattern = 'SOLE_NAME. ( D+). TXT' R.Model_FileName_Pattern = 'SOLE_NAME. [AZ].#id#.txt' output = r.convert_and_evaluate () Druck (Ausgabe) output_dict = r.output_to_dict (Ausgabe)
Um die Zusammenfassungen zu bewerten, muss Rouge wissen, wo Ihre Zusammenfassungen und die Goldstandeszusammenfassungen sind und wie sie mit ihnen passt. Im Rouge -Sprachgebrauch sind Ihre Zusammenfassungen "Systemzusammenfassungen" und die Goldstandeszusammenfassungen sind "Modell" -Amuszusheiten. Die Zusammenfassungen sollten in separaten Ordnern enthalten sein, deren Pfade mit den Variablen system_dir und model_dir festgelegt werden. Alle Zusammenfassungen sollten einen Satz pro Zeile enthalten.
Um eine Systemzusammenfassung automatisch mit den entsprechenden Modellzusammenfassungen zu entsprechen, verwendet Pyrouge regelmäßige Ausdrücke. Nehmen wir beispielsweise an, dass Ihre Systemzusammenfassungen mit einer Kombination aus einem festen Namen und einer variablen numerischen ID wie folgt benannt sind:
und die Modellzusammenfassungen wie diese, wobei Großbuchstaben mehrere Modellzusammenfassungen für ein bestimmtes Dokument identifizieren:
Die Gruppe im system_filename_pattern teilt Pyrouge mit, welcher Teil des Dateinamens die ID ist - in diesem Fall (d+) . Sie müssen runde Klammern verwenden, um eine Gruppe anzuzeigen, oder Pyrouge kann die ID des Rests des Dateinamens nicht auszeichnen. Pyrouge verwendet dann diese ID, um alle Übereinstimmungsmodellzusammenfassungen zu finden. Der spezielle Platzhalter #ID# teilt Pyrouge mit, wo die ID in der model_filename_pattern erwarten sollte. Der Teil [AZ] entspricht mehreren Modellzusammenfassungen für diese ID.
Mit der Konfiguration erhalten Sie mit dem Aufrufen von convert_and_evaluate() die Rouge -Bewertungen als Zeichenfolge. Wenn Sie die Bewertungen weiter verarbeiten möchten, können Sie die Ausgabe in ein DICT mit output_to_dict(output) analysieren.
Um einfache Textzusammenfassungen in ein Format zu konvertieren, versteht Rouge:
Aus Pyrouge Import Rouge155 Rouge155.Convert_Summaries_to_rouge_format (System_input_dir, System_Output_dir) Rouge155.Convert_Summaries_to_rouge_format (model_input_dir, model_output_dir)
Dadurch werden alle Zusammenfassungen in system_input_dir und model_input_dir konvertiert und sie in ihren jeweiligen Ausgabeverzeichnissen gespeichert.
Um die Konfigurationsdatei zu generieren, die Rouge verwendet, um Systemzusammenfassungen und Modellzusammenfassungen zu entsprechen, tun Sie:
Aus Pyrouge Import Rouge155
Rouge155.Write_config_static (
System_dir, System_FileName_Pattern,
model_dir, model_filename_pattern,
config_file_path)
Die ersten vier Argumente werden oben erklärt. config_file_path gibt an, wo die Konfigurationsdatei speichern soll.
Wenn Sie die Befehlszeile für Python und das Pyrouge -Modul bevorzugen, können Sie die folgenden Skripte verwenden, die automatisch installiert sind und von überall auf Ihrem System aus ausgeführt werden sollten:
pyrouge_evaluate_plain_text_files -s systems_plain/ -sfp "slow_name. ( d+). txt" -m models_plain/ -mfp soname_name. [az].#id#.txt .txt.
sample-test/SL2003 -Daten:pyrouge_evaluate_rouge_format_files -S -Systeme -sfp "Sl.P.10.r.11.sl062003 -( d+).
Beachten Sie, dass das System -Dateiname -Muster in Anführungszeichen beigefügt ist, da es Sonderzeichen enthält.
pyrouge_convert_plain_text_to_rouge_format -i models_plain/ -o models_rouge
pyrouge_write_config_file -s Systeme -sfp "sl.p.10.r.11.sl062003 -( d+).
Durch Ausführen eines dieser mit der Option -h wird eine Nutzungsnachricht angezeigt, in der die verschiedenen Befehlszeilenoptionen erläutert werden.
Anweisungen zur Installation von Rouge finden Sie hier.
Abhängig von Ihrem System müssen Sie möglicherweise die folgenden Befehle als Root ausführen.
Um Pyrouge zu installieren, rennen Sie:
PIP Pyrouge installieren
Wenn Sie Schwierigkeiten haben, Pyrouge unter Windows zu installieren, überprüfen Sie diese Anleitung von Franck Dernoncourt.
Angenommen ein funktionierendes Rouge-1.5.5. Installation mit diesem Befehl Pyrouge den Rouge -Pfad mitzuteilen:
pyrouge_set_rouge_path /absolute/path/to/rouge-1.5.5/directory
Wenn das Speichern des Rouge -Pfades mit diesem Skript nicht auf Ihrem System funktioniert, können Sie auch den Rouge -Pfad zur Laufzeit liefern:
R = Rouge155 ('/Absolute/Pfad/to/rouge-1.5.5/Verzeichnis')
Um zu testen, ob alles richtig installiert ist, laufen Sie:
python -m pyrouge.test
Wenn alles funktioniert, sollten Sie so etwas sehen wie:
Lief 10 Tests im Jahr 18.055 OK
Wenn Sie Pyrouge deinstallieren möchten:
PIP -Pyrouge deinstallieren