Russian Jokes Transformer (HSE Course HW1)
Описание задачи
Модель разработана в рамках курса Large Language Models (HSE).
Задача — генерация коротких анекдотов на русском языке.
Архитектура реализована с нуля и включает:
- Byte-Level BPE токенизатор (vocab = 2048)
- Transformer с ALiBi positional encoding, Grouped-Query Attention (GQA) и SwiGLU
- RMSNorm, dropout, label smoothing
- Максимальная длина контекста: 128 токенов
Технические характеристики
| Параметр | Значение |
|---|---|
| Количество слоёв | 6 |
| Количество голов внимания | 6 |
| Размер скрытого слоя | 384 |
| Размер промежуточного слоя | 1024 |
| Количество параметров | ≈3.1M |
| Размер словаря | 2049 (включая [EOS] и [PAD]) |
Проблемы на начальных этапах экспериментов
- В начале работы я реализовала Byte-Level BPE токенизатор и трансформер по заданию.
Модель успешно обучалась и выдавала текст при генерации, но первое время результат выглядел так:
Вход:
Заходит в барЗаходит в барXалоалоалоалокукукукуатьсяатьсяатьсяатьсякукукуышышышышививививальальальальегегегег говор говор говор говормермермермерявявявяв уб уб уб уб пл пл пл плррррТТТТистистистистийийийийникникникник тр тр тр трочочочочучучучучешешешешнойнойнойной............oooossssmmmmsss Он Он Он ОнУУУУ)
То есть текст состоял из повторяющихся слогов и не имел смысла.
- Также на ранних этапах экспериментов график функции потерь (loss) показывал нестабильное поведение: значения сильно колебались
Основные улучшения по сравнению с базовой реализацией
- Добавлен токен
[PAD]и корректная attention mask - Введён label smoothing для стабилизации обучения
- Реализовано объединение коротких анекдотов (packing) для уменьшения доли паддингов
- Увеличен словарь токенизатора до 2048 элементов
- Настроены параметры генерации (
temperature=0.7,top_k=100,top_p=0.95,repetition_penalty=1.2)
Качество обучения
| Метрика | Значение |
|---|---|
| Train Loss | ~0.59 |
| Validation Loss | ~0.62 |
| Средняя длина последовательности | ~63 токена |
| Минимальная длина последовательности | 5 |
| Максимальная длина последовательности | 2883 |
График функции потерь показывает устойчивое снижение значения loss и стабилизацию на уровне ≈0.6 после нескольких эпох.
Разница между train и validation loss минимальна, что указывает на отсутствие переобучения и корректную настройку гиперпараметров.
Примеры генерации
Вход: Заходит в бар
Результат:
Заходит в барерксьескr должен�Ну вол встречного�ятся мнойаша ВотСт муж нам МужПос весь тебе этиеньк нет Ты работуностилаговал Д акиешись суд Когдарачлед берыI машp газГ американ pрат себ�альный бутчаст=�ющ2 Нет пив котиваетегодняестьском одну Москром самПр значит женаjящ Кто от�итель дер врем как авзастд зад Првалтр ряд лежниб Потому женщиныуля быть Об телеф Ой делоетеине тебаксVлеуд предлож держ приш хорошо вот доб лучстигр собак внейчас� бо?аботров дет уж черезухонч проп кто&ьеогда новыйуютиласьера К иск умерключ хочеткрасп обрат алсь меняывgрыотор штак 2 куда% снимык Здаласьний� апыран расиент тоже второй во� э я негоенииги нее Если опится Все�ании тр какчитель соверш хочуаяеспелен од нес маматом прик
Вход: Штирлиц
Результат:
Штирлиц росс почемуивать мальчик комнЕсли оченьырnстроитан� выход Инвер�ию вер� Аналмыствен усл главоварищ косерез всех стоит� прич душ есть Нет потомуутускh Еуп ув� ли пришив нееожЗа дол сразу согино Не открслког.-орош былиф развикуитан начин домаести прив мужч выд родит одинУ членовойататак аки�Жол док дом никто вашцетоящебоду делеpм осрастBентЕсли самалуйстарен зуб всюией?- Вамыбразуогычлаг моей подходит� без Изажеяхота мне- жену белкий женыоном вам остановjшаенькаайте Мского[PAD] богх помодава кор имрам никогда Ктотьогдачноной� сто Толькоран страшш телев заг сделша Конечноства ок -jомниль ш любЛуйте ответманHычась сред выситан� бограф Если ничего� пред исп наведоментлич съельзяники заним+аясь куда:- да�
Модель обучалась на 10 000 шагах; дальнейшее дообучение улучшает качество генерации и связность текста.
Вывод
Модель уже научилась подражать структуре анекдотов и распознаёт типичные шаблоны, но из-за малого размера и ограниченного словаря пока не способна генерировать грамматически правильный и связный русский текст.
Автор
Студент: Екатерина Степура
Высшая школа экономики, курс Large Language Models, 2025
- Downloads last month
- 33