O Pyrouge é um invólucro Python para o pacote de avaliação de resumo do Rouge. Fazer com que o Rouge funcione pode exigir bastante tempo. O Pyrouge foi projetado para facilitar a obtenção das pontuações do Rouge, convertendo automaticamente seus resumos em um formato Rouge entende e gerando automaticamente o arquivo de configuração do Rouge.
Você pode avaliar seus resumos de texto simples como este:
De Pyrouge Import Rouge155 r = Rouge155 () r.system_dir = 'path/to/system_summerários' r.model_dir = 'path/to/model_summaries' r.system_filename_pattern = 'algum_name. ( d+). txt' r.model_filename_pattern = 'algum_name. [AZ].#ID#.txt' output = r.convert_and_evaluate () Imprimir (saída) output_dict = r.output_to_dict (saída)
Para avaliar os resumos, Rouge precisa saber onde estão seus resumos e os resumos padrão do ouro e como combiná -los. Na linguagem de Rouge, seus resumos são resumos de 'sistema' e os resumos padrão do ouro são resumos 'modelo'. Os resumos devem estar em pastas separadas, cujos caminhos são definidos com as variáveis system_dir e model_dir . Todos os resumos devem conter uma frase por linha.
Para corresponder automaticamente a um resumo do sistema com os resumos de modelo correspondentes, o Pyrouge usa expressões regulares. Por exemplo, vamos supor que os resumos do seu sistema sejam nomeados com uma combinação de um nome fixo e um ID numérico variável como este:
E os resumos de modelos como este, com letras maiúsculas identificando vários resumos de modelos para um determinado documento:
O grupo no system_filename_pattern diz a Pyrouge qual parte do nome do arquivo é o ID - neste caso (d+) . Você precisa usar colchetes redondos para indicar um grupo, ou então Pyrouge não será capaz de diferenciar o ID do restante do nome do arquivo. Pyrouge então usa esse ID para encontrar todos os resumos de modelo correspondentes. O espaço reservado especial #ID# informa ao Pyrouge onde deve esperar o ID no model_filename_pattern . A parte [AZ] corresponde a vários resumos de modelo para esse ID.
Com a configuração concluída, invocar convert_and_evaluate() obtém as pontuações Rouge como uma string. Se você deseja processar ainda mais as pontuações, poderá analisar a saída em um ditado com output_to_dict(output) .
Para converter resumos de texto simples em um formato Rouge entende, faça:
De Pyrouge Import Rouge155 ROUGE155.CONVERT_SUMMARES_TO_ROUGE_FORMAT (System_input_Dir, System_output_Dir) ROUGE155.CONVERT_SUMMARES_TO_ROUGE_FORMAT (Model_input_dir, Model_output_dir)
Isso converterá todos os resumos em system_input_dir e model_input_dir e salvará -los em seus respectivos diretórios de saída.
Para gerar o arquivo de configuração que Rouge usa para combinar com os resumos do sistema e do modelo, faça:
De Pyrouge Import Rouge155
Rouge155.Write_Config_Static (
System_dir, System_filename_pattern,
model_dir, model_filename_pattern,
config_file_path)
Os quatro primeiros argumentos são explicados acima. config_file_path especifica onde salvar o arquivo de configuração.
Se você preferir a linha de comando ao Python e ao módulo Pyrouge, poderá usar os seguintes scripts, que são instalados automaticamente e devem ser executados de qualquer lugar do seu sistema:
pyrouge_evaluate_plain_text_files -s systems_plain/ -sfp "algum_name. ( d+). txt" -m models_plain/ -mfp algum_name. [az].#id#
sample-test/SL2003 que acompanham o Rouge:pyrouge_evaluate_rouge_format_files -s Systems -sfp "sl.p.10.r.11.sl062003 -( d+). html" -m modelos -mfp sl.p.10.r. [az] .sl062003-#id#.html
Observe que o padrão de nome do arquivo do sistema está entre aspas porque contém caracteres especiais.
pyrouge_convert_plain_text_to_rouge_format -i models_plain/ -o modelos_rouge
pyrouge_write_config_file -s Systems -sfp "sl.p.10.r.11.sl062003 -( d+). html" -m modelos -mfp sl.p.10.r. [az] .sl062003-#id#.html --c sl2003_f
Executar qualquer um deles com a opção -h exibirá uma mensagem de uso explicando as várias opções da linha de comando.
As instruções sobre a instalação do Rouge podem ser encontradas aqui.
Dependendo do seu sistema, talvez seja necessário executar os seguintes comandos como root.
Para instalar Pyrouge, execute:
PIP Instale a pirrouge
Se você tiver problemas para instalar o Pyrouge no Windows, verifique este guia por Franck Dernoncourt.
Assumindo um Rouge-1.5.5 funcionando. Instalação, diga a Pyrouge o caminho Rouge com este comando:
pyrouge_set_rouge_path /absolute/path/to/rouge-1.5.5/directory
Se salvar o caminho Rouge usando este script não funcionar no seu sistema, você também pode fornecer o caminho do Rouge em tempo de execução:
r = rouge155 ('/absoluto/path/to/rouge-1.5.5/diretório')
Para testar se tudo está instalado corretamente, execute:
python -m pyrouge.test
Se tudo funcionar, você deve ver algo como:
Executou 10 testes em 18.055s OK
Se você deseja desinstalar a pirrouge:
Pip desinstala pirrouge