|
--- |
|
language: ru |
|
license: mit |
|
tags: |
|
- model_hub_mixin |
|
- pytorch_model_hub_mixin |
|
- language-modeling |
|
- text-generation |
|
--- |
|
|
|
# Название модели |
|
Модель трансформер, с реализованными блоками GQA, SwiGLU, ALiBi. |
|
|
|
## Описание |
|
|
|
Эта модель была обучена на датасете с анекдотами на русском языке. Модель может решать следующие задачи: |
|
1. Генерация новых последовательностей. |
|
2. Автодополнение последовательностей. |
|
3. и другие задачи обработки естественного языка. |
|
|
|
|
|
## Архитектура |
|
|
|
- **Tokenizer:** |
|
В качестве токенайзера используется ByteLevel BPE, с vocab_size = 1024. |
|
|
|
- **Структура модели:** |
|
Модель поддерживает несколько размеров: "nano", "mini", "small", количество параметров соответственно: 0.53M, 11.43M, 86.62M. |
|
|
|
Модель состоит из следующих блоков: |
|
|
|
* dropout |
|
* RMS Norm |
|
* GQA + ALiBi |
|
* SwiGLU |
|
* Linear_head + softmax |
|
|
|
Подробнее можно увидеть на следующей схеме: |
|
 |
|
|
|
|
|
|
|
- **Обучение и параметры:** |
|
Во время обучения были использованы следующие параметры: |
|
|
|
1) optimizer = AdamW(learning_rate=3e-4, weight_decay=0.01) |
|
2) scheduler - Linear schedule with warmup |
|
3) loss = cross_entropy |
|
4) Num_steps = 10_000, validation_step - every 1000 steps. |
|
|
|
## Данные |
|
|
|
Модель обучалась на следующем датасете: |
|
|
|
- **Russian_jokes:** |
|
Ссылка: https://huggingface.co/datasets/IgorVolochay/russian_jokes |
|
_Пример строки:_ "- Зять, а ты знаешь, где найти того мужчину, который спас меня, когда я тонула?- Да, он уже приходил ко мне извиняться!" |
|
|
|
Во время обучения выборка была поделена на train и test соответственно: 135497 строк и 15056 строк. |
|
|
|
## Оценка качества (Quality Report) |
|
|
|
Для оценки качества была использована метрика perplexity: |
|
(Лучшее минимальное значение) |
|
|
|
- **Perplexity 'nano':** 4.254 |
|
- **Perplexity 'mini':** 4.193 |
|
- **Perplexity 'small':** 4.184 |
|
|
|
## Примеры генерации |
|
|
|
**Пример prefix: "Заходит в бар"** |
|
|
|
**nano:** "Заходит в бардей." |
|
|
|
**mini:** "Заходит в барье:- Сидумагрираступать снуть, что ты, в мату." |
|
|
|
**small:** "Заходит в бара, сынок, что он у меня волованы, а ты, дочьмиеменсу и пограют на немы и говорит другом, и док, что он исы, что вечаются." |
|
|
|
|