Learn machine learning · part 2 · session 1
Cuts by hand
A decision tree is nested straight cuts over the columns. Here you place every one of them yourself, and the picture redraws as you do.
After this session you will be able to read a decision tree as rectangles on a picture, and cut one by hand.
The gate is held-out accuracy strictly above 0.720. No 1.1 score is in your notebook, so the target is the floor, 0.720. You need to beat that number on the rows held back. The floor is 0.720, high enough to require real cuts, and the cap is 0.760, low enough to stay reachable with two columns and three cuts.
01 · The question
A is not mysterious once you have drawn one. Two columns on the axes, one straight cut across the picture, then one more cut inside each half. That is a depth-2 tree, and three cuts is all you get here. Choose a column and a value at each node from the lists, and the rectangles redraw. Nothing is searching on your behalf yet; every cut is yours.
The first cut is the root. Each half it makes is a child. A child you do not cut again is a leaf: every application landing there gets the same answer, the commonest outcome among the rows inside it. One cut, one question about one column, is a .
The target is the score you reached with rules in session 1.1, because the point is to see the same idea in a shape you can look at.
Data: synthetic loan applications, seed 7, split 1,200 training and 400 validation rows. debt_ratio on x, years_employed on y. 600 of 1,200 training rows drawn; all 1,200 scored.
syntheticseed 7
02 · Predict
Before anything runs
Three straight cuts, each one parallel to an axis, on two columns, against your own rules from 1.1. Which wins on held-out rows?
Choose something first.
03 · Try it
From a row to a dot
computed in this browserseed 7 · your current root cutThree rows, and the two columns the picture uses.
Step 1 · the root cut
Root node
What that cut does to the training rows
Root cut, debt_ratio at or below 0.40. Left 648 rows, 552 repaid, Gini 0.252. Right 552 rows, 286 repaid, Gini 0.499.
Step 2 · one cut inside each half
Left child, at or below the root cut
This node stays a leaf. Every row that reaches it takes the majority class of the rows inside it.
Right child, above the root cut
This node stays a leaf. Every row that reaches it takes the majority class of the rows inside it.
Step 3 · score it
Scored trees: 0
Your regions over the training rows
computed in this browserseed 7This picture is drawn in your browser from the seed, so it appears once the page is running.
Hollow circle: repaid. Filled square: did not repay. A shaded region is one the tree scores as did not repay.
Root cut, debt_ratio at or below 0.40. Left 648 rows, 552 repaid, Gini 0.252. Right 552 rows, 286 repaid, Gini 0.499. Nothing is scored on held-out rows until you press the button.
Synthetic, seed 7. 600 of 1,200 training rows drawn; all 1,200 scored.
( is a mixedness score: 0 means the rows on that side are all one outcome, 0.5 means an even mix. It is the subject of the next session.)
Ask for a hint
Rungs open as you run the session, not as time passes. You have run it 0 times.
1. A question: available after 3 evaluated runs.
2. A narrowing: available after 5 evaluated runs.
3. A worked fragment, on a different example: available after 7 evaluated runs.
4. The answer, with a working configuration: available after 9 evaluated runs.
04 · Compare
Place your cuts and press "Score on held-out". The verdict appears with the number.
05 · Check your understanding
Your check: reach the stated target
not yetHeld-out accuracy strictly above 0.720. No 1.1 score is in your notebook, so the target is the floor, 0.720. You need to beat that number on the rows held back. The floor is 0.720, high enough to require real cuts, and the cap is 0.760, low enough to stay reachable with two columns and three cuts.
Not met yet. Keep working the session.
Save your takeaway
Your takeaway
Edit it into your own words, or keep the line as it is.