Вы находитесь на странице: 1из 21

Распознавание эмоций

в русскоязычном тексте

Власов Виктор

Защита проекта по курсу: My First Data Project 2


Анализ текстовых коммуникаций

Задача Решение Польза


Анализ эмоционального Функция как сервис: Внедрение модели
окраса диалогов с - дообучение ML-модели на повысит уровень
оператором удовлетворенности
технической поддержки данных заказчика; сервисом, облегчит:
и чат-ботом. - развертывание модели; - сегментацию;
- оценку количества и
- доступ к API обученной динамику тональности
диалогов.
модели.
Возможные клиенты

Телеком Ритейл и
компании службы доставки

Банки и финансовые Медицинские


организации организации
Архитектура проекта

MLFlow tracking
server

VM

Train model App

PC DEV VM
Архитектура проекта

MLFlow tracking
server

VM

Train model App

PC DEV VM
Архитектура проекта

read/write MLFlow read/write S3


Database
bucket
service

logs invokes
NGINX
service

Train ML Model
read/write invokes Front
S3 model API
bucket
service service service
Архитектура проекта

read/write MLFlow read/write S3


Database
bucket
service

logs invokes
NGINX
service

Train ML Model
read/write invokes Front
S3 model API
bucket
service service service
Архитектура проекта

read/write MLFlow read/write S3


Database
bucket
service

logs invokes
NGINX
service

Train ML Model
read/write invokes Front
S3 model API
bucket
service service service
Архитектура проекта

read/write MLFlow read/write S3


Database
bucket
service

logs invokes
NGINX
service

Train ML Model
read/write invokes Front
S3 model API
bucket
service service service
Проведение экспериментов
MLFlow
1. Клонирование репозитория на локальную tracking
или удаленную машину server
VM
2. Установка git-crypt и переменной среды с
ключом logs

3. Изменение параметров в конфигурационном


файле YACS read/write Train model
S3
bucket
4. Запуск обучающего скрипта ./docker_start.sh PC DEV
Данные и первая модель
Набор данных:
Корпус для выявления эмоций
в русскоязычных текстовых
предложениях из различных
социальных источников (CEDR).
- Содержит 9410 предложений;
- Разметка на 6 категорий эмоций:
радость, печаль, удивление, страх,
гнев, нейтральное.

Бейзлайн: модель TFIDF + logreg.


Расширяем набор данных
Классический файнтюн Bert
Стратегия:
1. CLS токен.
2. Линейный слой для файнтюна.
3. Не больше 5-6 эпох.
4. Небольшой размер батча 16-32.
5. Маленький learning rate.
6. Подбор гиперпараметров 3-5.
Классический файнтюн Bert
Bert модели:
Маленькие cointegrated/rubert-tiny
cointegrated/rubert-tiny2
Мультиязычные sentence-transformers/LaBSE

DeepPavlov DeepPavlov/rubert-base-cased-sentence
DeepPavlov/rubert-base-cased-conversational
DeepPavlov/distilrubert-tiny-cased-conversational
DeepPavlov/distilrubert-base-cased-conversational

Sber sberbank-ai/ruRoberta-large
Классический файнтюн Bert
Зашло:

- Оптимизатор AdamW
- Шедулер StepLR
- LR = 5e-5

Проблемы:

- После 2-3 эпохи наступает


переобучение
- Мало данных и сильный
дисбаланс классов
Улучшаем качество

Пробуем:

- Аугментация данных с помощью RuTransform и


парафразера cointegrated/rut5-base-paraphraser
- Взвешенная кросс-энтропия
- Заморозка n-первых слоев.
- Пересемплирование датасета
Выводы по обучению

- Аугментация и
балансирование дают 1-2% по
f1-macro
- Хорошо помогает правильно
выбранный lr и scheduler
- Нужны хорошие данные
Web-service модели Docker in VM

MLFlow Registry
Функционал API:
- Класс EmotionClassifierProd
- Функция get_predict()

Технологии: ML Model
Front
- FastAPI API User
- Flask + bootstrap5 service service

Docker in VM
Демонстрация сервиса
Протестировать приложение
можно по QR-коду:
Возможные улучшения и дальнейшее развитие
проекта

Краткосрочная перспектива Долгосрочная перспектива

- Новые источники данных Полноценный AI-продукт, базирующийся на


нескольких NLP моделях, с быстрым
- Дообучение и тестирован различных моделей внедрением, глубоким анализом
коммуникаций, прогнозированием
- Multi-label классификация с сентимент бизнес-метрик и удобной отчетностью.
метками
- Продвинутые техники файнтюна для Bert
моделей Заработок на основе платной подписки
пользователей на on premise и cloud решение.
- Демо модели на gradio и FastAPI
Спасибо за внимание!

Вам также может понравиться