Art of DS

Appearance

Palette
Theme
Unlock $20 one time
Sign in, or create an account

Sign in to Art of DSCreate your Art of DS account

We email you a link and a six-digit code. Either one signs you in; there is no password.Enter your email. We send a link and a six-digit code to confirm it — no password to remember. The account is free.

  • You come back to this page, right where you were.
  • Already have an account? The same email simply signs you in.

By continuing you accept the Terms and the Privacy policy.

Your account

Free accountLifetime access

difficulty 2/5

Cross-validation

Definition

Splitting the data k ways and letting each part be the test set once, so every sample is predicted by a model that never saw it — and the estimate uses all the data instead of a single lucky split.

Formula
Err^CV=1k∑j=1k1∣Fj∣∑i∈FjL(yi,f^−Fj(xi))\widehat{\mathrm{Err}}_{\mathrm{CV}} = \frac{1}{k}\sum_{j=1}^{k} \frac{1}{|F_j|}\sum_{i \in F_j} L\big(y_i, \hat{f}^{-F_j}(x_i)\big)

Intuition

Scoring a model on the data it was fitted to measures memory, not learning. The library states it without hedging: "learning the parameters of a prediction function and testing it on the same data is a methodological mistake" [2, §3.1].

Holding out a test set fixes that, and immediately creates two new problems. The score now depends on which rows happened to land in the test set, and every row you hold out is a row you cannot learn from — a real cost when the dataset is small.

Cross-validation is the obvious compromise, and it is genuinely clever: rotate the held-out part. Split into k pieces, train k times, and each time score on the piece that was left out. Every sample gets predicted by a model that never saw it, and every sample also contributes to training in the other k−1 rounds. Nothing is wasted, and the score averages over k different splits instead of trusting one.

What it is not is a measurement of your model. That is the part almost everyone has backwards, and it is worth the section below.

Formal definition

How it works

Where it's used

Why & when

Worked example

Pitfalls

Check yourself

3 questions

The questions on this page come with access. They are graded on the server, so the answers stay there until you have given yours.

Unlock all quizzes

On the cheat sheet: Validation and generalisation →

Sources

  1. Bates, Hastie, Tibshirani. Cross-validation: what does it estimate and how well does it do it? (2023)paperhttps://ar5iv.labs.arxiv.org/html/2104.00673
  2. scikit-learn User Guide — Cross-validation: evaluating estimator performancedocs · retrieved 2026-09-06https://scikit-learn.org/stable/modules/cross_validation.html

Have a promo code?

A code that takes 100% off unlocks everything at once. A smaller one takes its share off the price in the payment window: enter the same code there.

Write to support

A question, a problem with access, a refund? Write to us and we answer by email.

What is it about?

Your address is used only to answer you.

Message sent

Thank you. We will reply to the address you gave, by email.

Or write to us directly

support@artofds.com

Message sent Thank you. We will reply to the address you gave, by email.

Check the email address: we need it to reply.

That is our own address. Enter yours, so the reply reaches you.

This address cannot receive email. Check it for a typo.

Write a little more: at least 10 characters.

Too many messages in a short time. Try again in a few minutes.

The message could not be sent. Please write to us directly: support@artofds.com