Skip to content

vilka-lab/sibur_2021

Repository files navigation

sibur challange 2021

Решение на 6 место: https://sibur.ai-community.com/competitions/5/tasks/13

Скор 1.4066/1.4159 public/private. Архитектура - однослойный однонаправленный LSTM.

Для решения используется таблица вида:

image

Локальный контекст образует каждая строка - это временной ряд, последнее значение которого мы должны предсказать. Глобальный контекст образует каждый столбец - это состояние продаж в компании каждый месяц по каждой категории.

На вход LSTM подается тензор размера N x L x W, где

  • N - batch size
  • L - sequence length (для финального решения - 9 месяцев)
  • W - sequence width, или размер контекста. Для финального решения он состоит из 12 столбцов (1 для локального контекста + 11 глобального).

Пространство тензора временного ряда сворачивается логарифмическим преобразованием на входе в сеть, и разворачивается экспонентой на выходе. Вторая голова сети обрабатывает категориальные признаки для предсказываемого значения, принимая на вход OHE вектор и выдавая эмбеддинг.

Из дополнительных данных взято распределение регионов по категориям: европа/азия/снг/округа РФ.

Схема валидации простая - учимся на всех данных, кроме последнего столбца. Loss-функция для обучения: RMSLE.

Обучение сети:

python train.py \
    --lr=1e-5 \
    --epochs=80 \
    --num_workers=2 \
    --batch_size=16 \
    --weight_decay=5e-3 \
    --random_state=42

submission_47_1.4066.zip - на всякий случай оригинальный сабмит (отличается черновым вариантом кода).

About

Sibur challange 2021 competition - 6 place

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages