Help develop intuition on bias

In several parts of the fastai book, it is mentioned how bias is used to compensate some movies being really good or bad and some users being inherently negative or positive in their reviews but I am struggling with developing a intuition for why the bias helps with this.

Can someone provide me with resources to understand the role of bias.


Collaborative filtering assesses how well a film matches the preferences of a particular user. For instance, if Alice and Bob only enjoy horror and crime films respectively, the model would assign horror films to Alice and crime ones to Bob.

More formally, suppose u represents the user embedding and v the film embedding. The dot product between them, u ⋅ v, as shown in the course, represents how close they are. Therefore, the dot product of Alice’s embedding vector, a, and horror films would be high, but the dot product between a and crime films would be low. The converse is true for Bob.

Yet, there are certain crime films most people appreciate, such as The Godfather. Naively calculating the dot product of a and The Godfather’s embedding, g, would yield a low score because of Alice’s exclusive partiality towards horror films (say, a ⋅ g = 1). However, by adding a bias term that reflects The Godfather’s universal appeal (e.g., 3), this issue is remedied since a ⋅ g + 3 = 4. A similar story unfolds with Bob and acclaimed horror films like The Shining.

Of course, the embeddings and biases are learned and not fixed beforehand, and sigmoid_range is also applied, but those are beside the point.