Edit model card
YAML Metadata Warning: empty or missing yaml metadata in repo card (https://huggingface.co/docs/hub/model-cards#model-card-metadata)

Описание модели

Этот чатбот - дипломная работа студента Андрея Ворожко в УИИ (Университет Искусственного Интеллекта).

Окончание обучения - март 2022 года.

Чатбот сделан на основе модели Kirili4ik/ruDialoGpt3-medium-finetuned-telegram

Теперь модель дообучена на основе 27000 анекдотов (14 эпох, скорость обучения в колабе 2-6 часов на эпоху) и умеет понимать контекст разговора. Однако контекст приходится ограничивать несколькими последними сообщениями потому что чем больше контекста тем медленнее модель работает, а контекст растет как снежный ком в процессе разговора.

Инференс находится в spaces:

Там с ботом можно поговорить. Контекст ограничен 10 последними сообщениями.

Шутки бот выдает, но пока скорее случайно, чем намеренно. Однако разговор поддержать способен и даже немного развлечь.

Так как это генерация текста, то на одну и ту же фразу бот всегда будет выдавать разные ответы.

Также для определения качества данной модели использовалась кастомная метрика - угловое расстояния между эмбеддингами y_train и предикта.

То есть мы взяли первый слой эмбеддинга модели и прогоняли предикты и лейблы, получили вектора слов. Потом вектора слов суммировали и получили общие (суммарные) вектора лейблов и предиктов. Чем меньше угол между ними, тем лучше. При рассчетах ориентировались на косинус этого угла, так как cos 0 = 1, то это очень удобно - чем ближе показатель к 1, тем лучше.

Вот такое распределение этих значений получилось по эпохам на ПРОВЕРОЧНОЙ выборке (1406 анекдотов):

{1: tensor(0.9357, device='cuda:0', grad_fn=<DivBackward0>),
 2: tensor(0.9390, device='cuda:0', grad_fn=<DivBackward0>),
 3: tensor(0.9417, device='cuda:0', grad_fn=<DivBackward0>),
 4: tensor(0.9439, device='cuda:0', grad_fn=<DivBackward0>),
 5: tensor(0.9470, device='cuda:0', grad_fn=<DivBackward0>),
 6: tensor(0.9537, device='cuda:0', grad_fn=<DivBackward0>),
 7: tensor(0.9568, device='cuda:0', grad_fn=<DivBackward0>),
 8: tensor(0.9592, device='cuda:0', grad_fn=<DivBackward0>),
 9: tensor(0.9610, device='cuda:0', grad_fn=<DivBackward0>),
 10: tensor(0.9622, device='cuda:0', grad_fn=<DivBackward0>),
 11: tensor(0.9628, device='cuda:0', grad_fn=<DivBackward0>),
 12: tensor(0.9632, device='cuda:0', grad_fn=<DivBackward0>),
 13: tensor(0.9630, device='cuda:0', grad_fn=<DivBackward0>),
 14: tensor(0.9634, device='cuda:0', grad_fn=<DivBackward0>),
 15: tensor(0.9634, device='cuda:0', grad_fn=<DivBackward0>)}

Для инференса выбрана 14-я эпоха с точностью 0.9634. Далее, судя по всему идет уже переобучение.

Downloads last month
15
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Spaces using avorozhko/ruDialoGpt3-medium-finetuned-context 2