Create README.md
Browse files
README.md
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
metrics:
|
3 |
+
- accuracy
|
4 |
+
- perplexity
|
5 |
+
pipeline_tag: text-generation
|
6 |
+
language:
|
7 |
+
- pt
|
8 |
+
---
|
9 |
+
|
10 |
+
# Modelo Llama 1 para Tiny Shakespeare
|
11 |
+
|
12 |
+
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.
|
13 |
+
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.
|
14 |
+
|
15 |
+
## Arquitetura
|
16 |
+
|
17 |
+
O modelo segue a arquitetura básica do Llama, com as seguintes características:
|
18 |
+
|
19 |
+
* **Embeddings Rotativos (RoPE)** para incorporar informações posicionais.
|
20 |
+
* **Atenção Multi-Head com RoPE** para capturar relações complexas entre tokens.
|
21 |
+
* **Normalização RMS (RMSNorm)** para estabilidade de treinamento.
|
22 |
+
* **Função de Ativação SwiGLU** para não linearidade.
|
23 |
+
|
24 |
+
## Treinamento
|
25 |
+
|
26 |
+
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.
|
27 |
+
|
28 |
+
## Métricas
|
29 |
+
|
30 |
+
O desempenho do modelo foi avaliado utilizando as seguintes métricas:
|
31 |
+
|
32 |
+
* Perda
|
33 |
+
* Acurácia
|
34 |
+
* Perplexidade
|
35 |
+
|
36 |
+
## Limitações
|
37 |
+
|
38 |
+
Devido ao tamanho limitado do dataset Tiny Shakespeare, a capacidade do modelo de gerar texto complexo e coeso é restrita.
|
39 |
+
|
40 |
+
## Aplicações Potenciais
|
41 |
+
|
42 |
+
* **Geração de Texto:** O modelo pode ser usado para gerar pequenos trechos de texto semelhantes ao estilo de Shakespeare.
|
43 |
+
* **Previsão de Próxima Palavra:** Dada uma sequência de palavras, o modelo pode prever a próxima palavra mais provável.
|
44 |
+
|
45 |
+
## Como Usar
|
46 |
+
|
47 |
+
Para carregar e utilizar o modelo:
|
48 |
+
|
49 |
+
```python
|
50 |
+
import torch
|
51 |
+
|
52 |
+
# Carregue o modelo
|
53 |
+
model = torch.load("llama1-model")
|