Цель
Заложить фундамент модуля прогнозирования. Двигаться от простого к сложному — каждый этап рабочий и полезный сам по себе.
Этапы (от простого к сложному)
Этап 1 — Baseline (статистика)
- Среднее/медиана трат по категориям за последние N месяцев
- Линейный тренд (растём/падаем?)
- Оценка следующего месяца: «скорее всего потратишь ~X»
Этап 2 — Сезонность
- Учёт регулярных паттернов (аренда, подписки, здоровье)
- Простые методы: скользящее среднее, экспоненциальное сглаживание (EWM)
- Можно попрактиковаться: pandas, statsmodels
Этап 3 — ML-модели
- Prophet (Facebook) — time series с сезонностью
- Или LightGBM/XGBoost с ручными фичами (month, dow, lag_1, lag_3)
- Оценить качество на hold-out (последний месяц)
Важно
- Прогноз — shared skill: используется советником, долговым менеджером, планировщиком покупок
- Формат:
- Данных сейчас ~1.5 месяца — достаточно для Этапа 1, для ML нужно больше
Вопросы для ресерча
- Какой минимум данных нужен для каждого метода?
- Где считать: в Go (вызов Python microservice) или встроенный Go?
- Хранить ли прогнозы в БД или считать on-demand?
Цель
Заложить фундамент модуля прогнозирования. Двигаться от простого к сложному — каждый этап рабочий и полезный сам по себе.
Этапы (от простого к сложному)
Этап 1 — Baseline (статистика)
Этап 2 — Сезонность
Этап 3 — ML-модели
Важно
Вопросы для ресерча