PamelaBorelli's picture
Create README.md
96ec23c verified
metadata
license: mit
datasets:
  - recogna-nlp/recognasumm
language:
  - pt
metrics:
  - rouge
pipeline_tag: summarization

Model Card para PamelaBorelli/flan-t5-tokenizer-ptt5-recogna

Dados Gerais

Resumo

O modelo original que serviu de base para o modelo final é o flan-t5-base. Um modelo multilinguagem com tamanho de 248M e que possui uma arquitetura baseada no T5 (Text-to-Text Transfer Transformer) com codificador-decodificador. O Flan-T5 original foi ajustado em uma mistura de tarefas com objetivo de melhorar sua capacidade de generalização.

O modelo final PamelaBorelli/flan-t5-tokenizer-ptt5-recogna foi treinado no processo de instrução e ajuste fino (finetune). Foi realizado finetune para tarefa de sumarização com dataset em Português-BR utilizando o tokenizador do modelo unicamp-dl/ptt5-base-en-pt-msmarco-100k-v2 .

Utilização Pretendida

O modelo foi trabalhado para tarefa final de sumarização de textos em Português-BR. Não foi testado para outros idiomas.

Uso

from transformers import T5Tokenizer, T5ForConditionalGeneration

tokenizer = T5Tokenizer.from_pretrained("PamelaBorelli/flan-t5-tokenizer-ptt5-recogna")
model = T5ForConditionalGeneration.from_pretrained("PamelaBorelli/flan-t5-tokenizer-ptt5-recogna")

input_text = "O corpo está mais propenso a sentir dores com exercícios de alta intensidade | Foto: Getty Images O problema está em saber identificar qual é qual. "Em algumas situações, é difícil diferenciar uma da outra", reconhece Juan Francisco Marco, professor do Centro de Ciência do Esporte, Treinamento e Fitness Alto Rendimento, na Espanha. "A dor boa é aquela que associamos ao exercício físico, que não limita (o movimento) e permite continuar (a se exercitar) até o momento em que o músculo fica realmente esgotado e não trabalha mais", explica. É importante detectar qual é o tipo de dor que você está sentindo, para evitar ter problemas mais sérios | Foto: Getty Images Para Francisco Sánchez Diego, diretor do centro de treinamento Corpore 10, "a dor boa se sente no grupo muscular que você trabalhou, tanto durante o treinamento como nos dias seguintes"."
input_ids = tokenizer(input_text, return_tensors="pt").input_ids

outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))

Idiomas

Português-BR

Dados de Treinamento

O modelo foi treinado para tarefa de sumarização usando os parâmetros:

evaluation_strategy="steps"         #forma para avaliar o output
eval_steps=                         #quantidade de steps para avaliar o output
learning_rate=                      #taxa de aprendizado
per_device_train_batch_size=        #tamanho do batch para o treinamento
per_device_eval_batch_size=         #tamanho do batch para a validação
gradient_accumulation_steps=        #até quanto deve acumular os batchs
weight_decay=                       #regularização L2
num_train_epochs=                   #quantidade de épocas para treinamento
save_strategy="steps"               #forma para salvar o output
save_steps =                        #quantidade de steps para salvar o output
push_to_hub=False                   #salvar o modelo no hub do Hugging Face
load_best_model_at_end=True         #carregar o melhor modelo no final do treinamento (necessário para o callback)

Para tokenização foi usado os parâmetros:

start_prompt= "Sumarize: \n"                 #início instrução para sumarização
end_prompt= "\n\nSumário: "    			 #fim da instrução para sumarização
input_name="coluna_imput"           		 #nome da coluna no dataset com os textos de origem
target_name="coluna_target"          		 #nome da coluna no dataset com os textos de destino
max_input_length = 256         				 #tamanho máximo de input para tokenizar
max_target_length = 256        				 #tamanho máximo de target para tokenizar
columns_to_remove= ['coluna_to_remove'] 	 #colunas que serão removidas do dataset original