The loop, stated plainly
Every lesson so far treated the training data as a given: logs of users responding to items. The final complication is that in a deployed system, the logs are not given, they are chosen, by the previous version of the very model being trained.
The cycle runs continuously: the model selects what to show; users can only respond to what was shown; the responses are logged; the next model trains on the logs; the next model selects.
Key idea: a deployed recommender is not learning what users like. It is learning what users do with what it chose to show them, which is a different quantity, and the difference compounds with every cycle.
An item the system never surfaces generates no interactions, which reads, to the next training run, as evidence of no interest, which lowers its chance of being surfaced. The absence of evidence becomes evidence of absence, mechanically, with no one deciding it.
Nothing in this is exotic or malicious; it is what any learning system does when it controls its own data collection. But its consequences are the difference between recommenders on paper and recommenders in production, and managing the loop, rather than pretending it away, is the closing skill of this course.

