Baselines You Must Beat

P7.forecasting.01 · Audience: guest, it-ml, language-pro · Prerequisites: What Makes Data a Time Series?

Real LLM grading for this pageLLM grading (this page):

The foundations track taught you to read a series; this track teaches you to forecast one. It starts in an unglamorous place, on purpose: with three forecasting methods so simple they barely deserve the name — and with the rule that gives them their power. Every forecast you ever ship will be judged against them, so you meet them first.

Step 1 / 5Negative work

The cheapest forecast in the world is the naive forecast: tomorrow will be exactly like today. No model, no fitting, no parameters — copy the last value forward. On the series [1, 2, 3, 4, 5], the naive forecast for the next step is simply 5. You can check that in your head, and being able to check things in your head is exactly what a baseline is for.

ⓘ Concept: The naive forecast
y^(t+1)=y(t)theforecastfortomorrowistodaysvalueŷ(t+1) = y(t) — the forecast for tomorrow is today's value

Why it matters — Naive is the floor under every forecasting effort. If a sophisticated model forecasts worse than copying yesterday, the model is not merely useless — it costs engineering time, compute and credibility while delivering less than zero. That is negative work, and the only way to detect it is to always compute the baseline.

This floor is higher than it looks. On a series that behaves like a random walk — many prices and exchange rates do — naive is not just hard to beat, it is close to the best anyone can do. A model that loses to it has learned nothing but noise.

🗣️ From a linguist's perspective: The translation-memory test
Translators know this discipline already. Before trusting a shiny new machine-translation engine, you compare it with the dumbest possible rival: reusing the closest match from the translation memory. If the engine cannot beat copy-and-paste of past work, it is negative work — it adds cost and risk without adding quality. The naive forecast is the translation memory of forecasting: the do-nothing rival every model must visibly beat.
Ask the mentor about this module

Ask a question about this content. The mentor explains and grounds its answer in what you are studying; asking is recorded as a learning signal, not a grade.

Ctrl/Cmd + Enter to send

🎓 Practice ladder

3 graded rungs · ~25 min

Build the baselines yourself: read the naive forecast off a series, implement seasonal naive and the moving average with their window edges, then implement MASE — including the guard MAPE lacks.

Rung 1 — The naive forecast (explorer)

Loading exercise…

Rung 2 — Seasonal naive & moving average

Loading exercise…

Rung 3 — MASE, scale-free honesty

Loading exercise…

Try it yourself

A scratch console for this page's ideas — ungraded, nothing you run here is recorded.

Scratch console

A scratch console with the scientific stack (pandas, numpy, scikit-learn). Runs on the server — no network, resource-limited and measured.

Output appears here.