Skip to content

Ivanmatv/Lenta-time-series

 
 

Repository files navigation

Хакатон "Лента х Практикум". Команда "5 элемент"

Ссылка на gh-pages

Краткое описание: Команда Мастерской Яндекс Практикума и команда Ленты подготовили хакатон, в рамках которого команды создают интерфейс и предсказательную модель по прогнозированию спроса на товары заказчика собственного производства (гранулярность ТК-SKU-День). Это общие репозиторий в котором собран результат работы всех членов команды "5-ый элемент".

Цель: Сгенерировать различные признаки и придумать интерпретируемую, описывающую правильные зависимости (повышение цены вызывает логичное падение спроса), модель прогноза спроса. Дальше необходимо сделать подневной прогноз спроса на тестовом периоде для каждого товара и магазина, и команда Ленты оценит его качество в сравнении с свершившимся фактом. Метрикой качества будет выступать WAPE, посчитанный на уровне товар, магазин, день. Если есть пропущенные значения и по каким-то товарам не предоставлен прогноз, прогноз считается равным нулю.

data_description.pdf - описание данных

tasks_description.pdf - описание задачи

Установка:

Клонировать репозиторий и перейти в него в командной строке:

git clone https://github.com/Danspers/Lenta-time-series.git && cd Lenta-time-series

Клонировать и установить виртуальное окружение:

  • для MacOS
python3 -m venv venv
source venv/bin/activate
  • для Windows
python -m venv venv
source venv/Scripts/activate

Установить зависимости:

cd backend && pip install -r requirements.txt

Создайте файл .env Пример:

DB_ENGINE=django.db.backends.postgresql
DB_NAME=postgres
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
DB_HOST=db
DB_PORT=5432
SECRET_KEY=<ключ в одинарных ковычках>

В папке с файлом manage.py применить миграции:

python manage.py makemigrations
python manage.py migrate

Создание админа:

python manage.py createsuperuser

Выполните команду для запуска локально:

python manage.py runserver

Запуск тестов:

python manage.py test

Запустить все контейнеры:

docker-compose up -d --build

Выполнить миграции:

docker-compose exec backend python manage.py migrate 

Создать суперпользователя:

docker-compose exec backend python manage.py createsuperuser

Остановить работу всех контейнеров командой:

docker-compose down

Документация проекта:

После локального запуска проекта (python manage.py runserver), для просмотра документации - http://127.0.0.1:8000/swagger/

Примеры запросов:

Используемые технологии:

Авторы проекта

Frontend-разработчики:

Backend-разработчики:

Data Science специалисты:

Дизайнеры:

Project-менеджер:

About

Хакатон "Лента х Практикум"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 99.0%
  • Other 1.0%