Recommendation-engine basically try to emulate what a human, who knows about your tastes will do. It makes recommendations based on what you have seen and liked. To understand why it “fails”, let us emulate the recommendation engine itself. Here is a hypothetical conversation between you and a friend..
“I have some free time this weekend.. Recommend some good movie.”
“Ok.. What sort of movies do you like?”
“Sci-fi and Fantasy”
“Well.. That’s not very specific.. I have a long list of recommendations, but not really sure whether you’d like it. You may try “Back to the Future” to begin with.. An all time favorite for most of my sci-fi loving friends “
<Few days later>
“How did you like “Back to the Future”?
“I didn’t like it.. I like to see my Sci-fi unadulterated.. So I don’t like movies that try to mix it with comedy”
“Oops! You could have told this before.. Next, I was about to suggest “Men in black”, but now I know that you won’t like it.. Tell me some Sci-Fi movie that you like”
“And I loved “The Terminator” series! Even the later ones, which not many others like!”
“Now, we are talking some specific stuff! I think you like the Man Versus machine theme.. I would recommend “The Matrix” “
<Few days later>
“I loved “The Matrix” Any more suggestions?”
“Of course! I am sure you will like the sequels. Based on what I know about your tastes and my limited sci-fi movie knowledge, those are the only recommendations I have! “
“Well! I saw both the sequels right after the original one.. “
“Sorry! In that case I don’t have any more suggestions.. I know a few Japanese movies on the topic, but I know you don’t watch Japanese “
See what happened in the above conversation. Initially, more information you shared allowed your friend to make very specific suggestions.. But as the friend learned more & more about your tastes and distastes, the list gradually got smaller and smaller, and finally your friend was left with no suggestions.
A recommendation engine would not run out of suggestions so soon,and would have many more dimensions, but overall the model would remain the same.
Initially, it will show a long list based on their first guess for your tastes. With specific information, gradually it would be able to make very good recommendations. But gradually, the list will become smaller and smaller, finally to a point that you have seen almost all the movies that the engine would have suggested. So in my opinion, this may not be exactly a failure of the recommendation engine, it has simply run out of the good movies, as per your taste, that you haven’t seen.
Adding a new dimension to your movie tastes (A new language maybe, as the example suggested) may perhaps expand the list.
BTW, instead of waiting to see whether a particular movie ends up in your recommended list, try the Netflix’s estimated best guess rating for you for that movie. In my case, it has always been very accurate.
See question on Quora