Neural Network for content based filtering

In the course of Content Based Filtering, Neural Network is recommended by using dot product (Vn, Vm) to predict probability of Y. I think Neural Network is only used for Supervised Learning. But since the class is unsupervised learning, should Content Based Filtering be classed as Supervised Learning? Thank you.

Hi @Kaitlyn_Hu ,

In Supervised Learning, the algorithm is trained on (input, label ) pairs of data. Here the label is the ground truth. For example, if we were to train a cat identifier, the input is an image , and the label would be either cat or not cat.
In Content Based filtering, the NN algorithm is not given any ground truth label with the input. The NN algorithm has to learn the characteristics of the items/movies and the characteristics of the user so that it can make recommendation as to what items to recommend. To produce the recommendation, dot product the Vn and Vm will give the probability based on the characteristics learned from both the user and the items. it might be helpful if you can revisit the lecture videos.

1 Like

Hi there,

Also a general remark, @Kaitlyn_Hu: Deep neural networks are not only used in supervised settings.

E.g. autoencoders represent a popular unsupervised solution, see also: Backpropagation algorithm - #4 by Christian_Simonis

Best regards
Christian

2 Likes

Hello @Kaitlyn_Hu,

Let’s take a look at the way we formulate our content-based filtering

We have inputs X_u and input X_m, and the prediction (the dot product) is compared with the y^{(i, j)} under squared loss. Here y^{(i, j)} is a label and I believe this is a supervised learning. Ofcourse, @Christian_Simonis gave a very good example of unsupervised neural network learning with autoencoder.

Cheers,
Raymond

2 Likes

Thank you @rmwkwok for pointing out the cost function. I was too involved in thinking about the question posted and the logic in a wider context.

In the lecture videos, the network implementation is provided with known ratings. But what if there isn’t any known ratings? Is the category of an algorithm that important? As @Christian_Simonis has shown us an example of the autoencoder -an unsupervised learning NN.

MovieLens has built a database of movies with user ratings, however, that has taken many men hours to collect. In the era of AI, shouldn’t such manual work be replaced ? Just a thought.

Hello @Kic,

I agree with you that the technique which builds a successful model given less resources is the most important part. Other than ratings, we could have used other interactions between any kind of viewers (professional or layman) and movies, then train a pair of networks that reproduces that interaction matrix (which is exactly like what we do in our content-based filtering lab and in collaborative filtering lab). When considering it as a matrix factorization (the reverse of the process to reproduce a matrix) task, it is arguable whether it is a supervised or an unsupervised approach. So, I also agree that the category doesn’t quite matter :wink:

Cheers,
Raymond

1 Like

Thank you all. Have a nice weekend. -Kaitlyn

1 Like