Many services (such as Netflix, Amazon, and Google Search, Apple's Siri) are said to get better by learning the 'habits' of their users. As I understand, they somehow create a customized machine learning model for each individual because a generic model would not work well. However, I would like to know how this can be achieved in practice. For the sake of discussion, suppose I am developing a new massage chair that changes its "massage recipe" based on the respiration pattern of its user. I suppose (and I might be wrong here) that the respiration pattern varies from person to another but that the variations in a person's respiration pattern indicate what kind of message the person would like to have (again, these suppositions are wrong but they are presented for the sake of discussion). I have questions on how these models are customized. Specifically:
- How would I train the model for my hypothetical device?
- How would customize the said model? Do big companies (Amazon et.al) create a person-specific model for every user? And if this is the case, wouldn't this be impractical (Google serves billions of people; therefore, having billions of models would be hard to maintain)
- In the case of Google for example, when setting a new android phone for the first time, the user is requested to repeat three-times "Ok Google" to train their voice recognition model. Is this small sample of sound enough to create the voice recognition model? Or is the sample used to customize an existing generic model? And if so, how is this done?
- Is there any references (blog, paper, etc...) that discuss this topic in details?