Logo Craft Homelab Docs Контакты Telegram
Прогноз погоды на Raspberry Pi: как не дать модели выучить данные наизусть Трендовые github проекты в нашем телеграм канале. Подпишись →
21 апреля 2026 г.

Прогноз погоды на Raspberry Pi: как не дать модели выучить данные наизусть

Прогноз по данным одной метеостанции кажется понятной ML-задачей: есть временной ряд, нужно предсказать температуру на несколько дней вперёд. Но time series легко обманывают. Модель может не научиться прогнозировать, а просто запомнить сезонность, утечки из будущего или особенности train/test split.

Если цель — запуск на Raspberry Pi без GPU, задача становится ещё интереснее: нужно не только качество, но и лёгкий inference.

Базовая линия обязательна

Перед нейросетью нужна baseline-модель:

  • значение как вчера;
  • среднее за последние N часов;
  • сезонный baseline;
  • простая линейная регрессия;
  • экспоненциальное сглаживание.

Если сложная модель не побеждает baseline, она не нужна. Это особенно важно для pet project: график loss может выглядеть красиво, но практической пользы не быть.

Time series split

Нельзя случайно перемешивать временные данные. Если будущие значения попадают в train, модель покажет отличные метрики и провалится в реальности.

Правильнее использовать:

  • train на старом периоде;
  • validation на более новом;
  • test на самом новом;
  • rolling window evaluation.

Так проверка ближе к production-сценарию: модель предсказывает будущее, которого ещё не видела.

Leakage

Утечки могут быть неочевидными. Например, агрегаты, рассчитанные по всему датасету, случайно содержат будущую информацию. Или нормализация сделана до split. Или target сдвинут неправильно.

Чеклист:

  • scaler обучается только на train;
  • признаки не используют будущие окна;
  • timestamp features не кодируют target напрямую;
  • test не участвует в подборе параметров;
  • синтетические данные не смешиваются с реальными без контроля.

Интервалы неопределённости

Для погоды точечный прогноз часто недостаточен. Полезнее сказать: ожидаем 21 °C, вероятный диапазон 19–23 °C. Интервалы помогают честно показывать неопределённость.

Простые подходы:

  • quantile regression;
  • ensemble маленьких моделей;
  • оценка ошибки baseline;
  • prediction intervals по истории ошибок.

Даже грубый интервал лучше уверенной, но неверной точки.

Inference на Raspberry Pi

Для слабого железа важны:

  • размер модели;
  • latency;
  • memory footprint;
  • частота предсказаний;
  • формат модели;
  • отсутствие тяжёлых зависимостей.

Иногда маленькая модель с хорошими признаками выигрывает у большой нейросети. Особенно если прогноз нужен раз в час, а не каждую секунду.

Итог

ML-прогноз погоды по одной метеостанции — хороший способ изучить time series, leakage и deployment на edge-устройстве. Главные правила: начать с baseline, правильно разделять данные по времени, проверять утечки и считать неопределённость.

Модель, которая честно проигрывает baseline, всё равно полезна: она показывает, где задача сложнее, чем казалась.