metrics:
- accuracy
- perplexity
pipeline_tag: text-generation
language:
- pt
Modelo Llama 1 para Tiny Shakespeare
Este repositório contém um modelo de linguagem Llama 1 com 2.3 milhões de parâmetros treinado no dataset Tiny Shakespeare. O modelo foi projetado para tarefas de geração de texto, em especial para o estilo de escrita do Shakespeare.
Vale ressaltar que existem dois modelos neste repositório. O llama1-model.pt
é o modelo obtido ao final do treinamento, e o best_model.pt
é o modelo com os melhores valores das métricas de acurácia e perplexidade.
Ambos foram testados e o best-model faz a geração de textos mais coerentes, logo, é mais conveniente utilizar o best-model.pt
.
Arquitetura
O modelo segue a arquitetura básica do Llama, com as seguintes características:
- Embeddings Rotativos (RoPE) para incorporar informações posicionais.
- Atenção Multi-Head com RoPE para capturar relações complexas entre tokens.
- Normalização RMS (RMSNorm) para estabilidade de treinamento.
- Função de Ativação SwiGLU para não linearidade.
Treinamento
O modelo foi treinado por no máximo 10.000 épocas, atingindo a estabilidade em pouco mais de 3000 épocas. Foi utilizado o otimizador Adam e um agendamento de taxa de aprendizado de redução de platô (scheduler). A função de perda utilizada foi a entropia cruzada.
Métricas
O desempenho do modelo foi avaliado utilizando as seguintes métricas:
- Perda
- Acurácia
- Perplexidade
Limitações
Devido ao tamanho limitado do dataset Tiny Shakespeare, a capacidade do modelo de gerar texto complexo e coeso é restrita.
Onde pode ser aplicado
- Geração de Texto: O modelo pode ser usado para gerar pequenos trechos de texto semelhantes ao estilo de Shakespeare.
- Previsão de Próxima Palavra: Dada uma sequência de palavras, o modelo pode prever a próxima palavra mais provável.
Como Usar
Para carregar e utilizar o modelo:
import torch
# Carregue o modelo
model = torch.load("best_model.pt")