In the course “Machine Learning Specialization” Andrew mentions that we can build deep-learning recommendation systems, this piqued my interest as I had experience building recommendation systems without deep-learning networks.
I wanted to learn how to use NN/DL to build recommendation systems but couldn’t find any resources. I will be grateful if someone can guide me in the right direction.
Best Regards,
Dakshesh Jain
EDIT: I believe I understand the core concept but I want to learn about the implementation. I understand that this is a complex topic but I am looking for a resource that can guide me in the right direction.
Also, honestly I didn’t know at the time, but he even teaches the math’s class here ! But Serrano’s video on this subject really helped me wrap my mind around the subject at the time: https://www.youtube.com/watch?v=ZspR5PZemcs
Yes, you are correct. However, I was not able to translate the information into a practical implementation. I understood the concepts and various methods taught in the lecture. I want to develop a DL recommendation system, but I couldn’t find many resources that teach ‘somewhat’ practical implementation.
I skimmed through the video and I can say I understand the concept because of the MLS course and other lectures I watched but my concern is how may I practically implement a DL recommendation system.
In essence what you are dealing with here is a really big sparse matrix-- Meaning you likely have a lot of data in a giant matrix, but that matrix also has a lot of ‘holes’ in it like swiss cheese.
Just as a very example say you have User 1 and User 2 – and 5 movies (A, B, C, D, E) with their associated ratings from User 1 and User 2. Now User 1 has rated say, movies A, B, and E, but User 2 has rated movies B, E, but also C and D.
The question is can we find commonalities between these two users to suggest how User 1 might rate (which they have not yet seen) movie D ?
But Singular Value Decomposition (SVD) turns out to be one of the fastest, most efficient methods.
There are libraries that will run the recommendation system operation for you, but if you really want to learn the nuts and bolts I’d recommend getting started understanding SVD.
Thank you very much @Nevermnd for such a detailed response. I will go through the resources provided by you. I have built recommendation projects that use the same concept you explained, but I think I should review more resources and SVD/matrix factorization seems like a good starting point.
Yes, I mean in outside course I worked on this problem-- But in R, not Python. There Recosystem (CRAN - Package recosystem) or RecommenderLab (CRAN - Package recommenderlab) work really well, but as I haven’t done this yet on Python so off the top of my head I don’t know what packages are good.
Also, for a lot of ‘real world’ open source examples of people trying to solve this program you can look up recommender systems in the context of the ‘MovieLens’ database.
Oh, I will look into open-sourced examples. ‘MovieLens’ is the keyword. Yep, this will be helpful I can find some resources and articles discussing the same with ‘MovieLens’ as their keyword.