/movie_posters_captioning

Primary LanguageJupyter NotebookOtherNOASSERTION

Movie Posters Captioning

Проект представляет собой развлекательный сервис по генерации подписей к фильмам посредством нейронной сети. Сеть обучена на кратком описании фильмов с сайта Кинопоиск. Поэтому по задумке сервис будет выдавать смешные подписи к фотографиям в стиле блокбастера.

Сервис разрабатывался в рамках ODS курса ML System Design, поток осень 22/23 года.

На момент разработки сервис развернут в виде телеграм-бота по адресу: https://t.me/MPC_project_bot

Участники

В разработке участвовали:

Архитектура проекта

Архитектура проекта

Структура проекта

  • data - данные для обучения
    • external - датасеты с фильмам найденные в интернете
    • raw - ответ полученный на запрос с https://kinopoiskapiunofficial.tech
    • interim - обработанный ответ API и сохранный в виде датафрейма
    • processed - предобработанный текст (удалены служебные символы)
    • img - скаченные картинки
  • models - сохраненные веса обученной модели
  • notebooks - ноутбуки участников
  • app - код бота
  • src - исходный код
    • data - полный пайплайн формирования данных для обучения
    • models - код обучения модели и выполнения предсказания
  • equirements.txt - библиотеки необходимые для воспроизведения результата
  • dvc.yaml - конфиг для запуска пайплана загрузки данных

Воспроизведение

Чтобы заново обучить модель выполните слудующие шаги:

  1. Загрузка описаний фильмов происходит с сайта Кинопоиск через API стороннего платного сервиса https://kinopoiskapiunofficial.tech. Поэтому сначала зарегестрируйтесь на https://kinopoiskapiunofficial.tech и оплатите платную подписку (на момент разработки проекта стоила 500р. бессрочно). Если возникунут проблемы свяжитесь с тех. поддержкой сервиса.
  2. Клонируйте проект на локальный компьютер:
git clone https://github.com/slivka83/movie_posters_captioning.git
  1. Создайте в корне проекта файл config_private.yml с таким содержимым:
X-API-KEY: 'X-API-KEY'

где X-API-KEY - ключ, который выполучили на сайте https://kinopoiskapiunofficial.tech

  1. Установите все необходимы библиотеки:
pip install req
  1. В консоли перейти в папку проекта и выполнить команду make она выполнит обработку и загрузку всех файлов