Этот репозиторий содержит модель, подготовленную в рамках тестового задания для junior-специалистов по направлению Data Science АО "Гринатом".
С демо модели можно ознакомиться по ссылке
Для успешного запуска проекта необходимы:
- Python 3.12.x и выше
- Необходимые зависимости
- Файл
.pth
с весами модели
Для развертывания сервиса выполните следующие шаги:
- Клонируйте репозиторий на локальную машину:
git clone https://github.com/wlwlaa/Movie-review-classifier.git
- Перейдите в папку проекта:
cd Movie-review-classifier
- Установите зависимости:
pip install -r requirements.txt
- Создайде папку
models
и поместите в нее загруженные веса модели:
mkdir models
cp /Users/$USER/Downloads/model_7000_Loss_0.09370.pth ./models/model_7000_Loss_0.09370.pth
- Запустите файл app.py:
python app.py
- Перейдите по указаннному в консоли URL адресу в браузере:
127.0.0.1:7860
В этом проекте моделью является fine-tuned трансформер DistilBERT base uncased finetuned SST-2. Это упрощенная версия классифкатора BERT, предоставляя меньший размер и меньшие вычислительные затраты, при этом, сохраняя высокую точность.
Ключевые метрики:
- F1 score: 0.9564
- Accuracy: 0.9564
Для дообучения использовался Large Movie Review Dataset v1.0, включающий в себя 50,000 различных отзывов к фильмам с оценкой от 1 до 10. Данные были предварительно очищены от "шума", перемешаны и разделены на обучающую/тестовую выборку в отношении 80/20.
Обучение производилось в среде Google Colab Pro на ускорителе Nvidia L4.
Подробнее с процессом обучения можно ознамиться в файле Greenatom.ipynb
, находящимся в репозитории.
Проект распространятся под лицензией Apache 2.0 - подробнее в файле LICENSE.