When you’re in school, it’s easy to start projects and homework.
Why? There’s a hard deadline.
Even if you start 10 minutes before it’s due, you still started. So you naturally optimize to do it that way, because it’s cognitively easier to abdicate responsibility.
This is what I did for 20 years, and it worked super well. All you have to do is be somewhat competent, and you can just chill out and let someone else do the hardest part, saying when it’s done.
The problem is, you finish school and there isn’t anyone telling you when to stop, so you don’t know when to start.
It’s easier to wait at a red light when you know how long it will be, it’s easier to commit to a 5 minute cold shower than a cold shower. It’s easier to say “I’ll leave the gym after 15 minutes no matter what”.
Why? Because it raises the stakes and gives you a failure condition.
When you train a machine learning algorithm to do something, you have to tell it what good outcomes are and what bad outcomes are. This can be done with a score function. For example, in chess you might say that capturing pieces raises your score, losing them lowers it, getting a check is worth x, and checkmate is worth y.
You can only learn something when there’s a way for you to fail, an end point.