Llama1-NLP / README.md
biankavm's picture
Update README.md
80be468 verified
|
raw
history blame
2.07 kB
metadata
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")