I was wondering how recommendation on youtube work for example? How are the algorithms applied, because every user gets different recommendations depending on his location, his past liked videos etc... So it would seem like a training model is applied to every single user but I know that can't be possible so how are these recommendations so user-specific without applying a unique training model to every single user?
This may not be an exceptionally useful answer for you, but the specific question you are asking relates directly to what I do at my job, which is not really machine learning.
If I wanted to customize recommendations for a YouTube user, I would start with a graph. My graph would have two types of nodes, users and videos, and edges that only connect users and videos, representing videos that user has seen. To get a recommendation for a user, I would start at the last X videos that user has watched and do two traversals, one to users, and one back to videos. Then I would count how many times I ended up at each video, and recommend those videos that I ended up at the most. This would give you a list of most watched videos by people who also watched the same videos you did. From here you can refine it in various ways, but that is how you would start.
I don't know if this is what YouTube does, but it is what shopping sites do, and it is what I do at work for a 'big company,' though it is not machine learning.