Train and test on the AI Learning track. The training set changes the model. The test set does not. The test set must look like the future you care about. A random split is wrong when time or users matter.
This lesson assumes you already worked through Bias and variance.
The idea in practice
Split by time for forecasting. Split by user when the same user must not appear on both sides. Write the split rule next to the score.
A concrete check
goal = {
'track': 'AI Learning',
'lesson': 'Train and test',
}
checks = [
'input available at decision time',
'score matches the real decision',
'failure case written down',
]
print(goal['lesson'])
for item in checks:
print('-', item)
Run the sketch locally if you have Python. The printout is a reminder of the checks, not a trained model. Replace the strings with the real inputs from your own example before you treat it as a design.
What usually goes wrong
Randomly splitting a time series leaks tomorrow into yesterday. When this happens, stop adding parameters or tools. Fix the check, the data, or the permission, then run the same example again.
What to write down
- The input you are allowed to use at decision time.
- The output and the score or pass rule.
- One failure you will test on purpose.
- What you will not claim the system can do.
Practice
Choose a split rule for predicting next month's sales. Say what a random split would leak.
Self-check
- Say Train and test in one sentence that mentions an input and an output.
- Name the failure mode in this lesson and the check that would catch it.
Done when: you can explain this lesson without the page open, and you have a written failure case.