Coder Social home page Coder Social logo

Comments (4)

Coder-Yu avatar Coder-Yu commented on July 21, 2024

Using Memory based algorithms to rank items is extremely time-consuming. So ranking for all items in ItemKNN is not available in RecQ. If you really need to use ItemKNN or UserKNN to rank all items, You can rewrite the function of predictForRanking in ItemKNN.py and use a loop to predict each score and return a vector. However, this is not recommended. You can find it difficult to use matrix computation to accelerate this process as you have to find neighborhood for every user or item and aggregate the corresponding scores. So I recommend you to use the model based algorithms such as PMF, SVD, BPR to solve a ranking problem. BTW, the ranking algorithms which are collected in the directory of 'ranking' under the directory named 'algorithm' perform much better than the rating based algorithms. Actually, I believe it may take some time to figure out the differences between the rating and model based algorithms. If you are a noob in this area, firstly you should read some papers or books. With the full understanding of the theory of recommender systems, you can make RecQ a useful and powerful tool. Of course, reading the README.MD is a must before you run this project. (^▽^)

from qrec.

statusrank avatar statusrank commented on July 21, 2024

Thanks for your reply in details.Yes,i am a noob in RS ,so most of my questions are about dataset and parameters . Now i want to use the WRMF in my ranking problems.I am confusing if I apply wrmf on a new dataset such as movielens-100k,do I need to tuning these hyperparameters such as number of factors or number of iterations?Or do all of models tune to the best on these dataset we provided including Ciao,Epinions etc.

from qrec.

Coder-Yu avatar Coder-Yu commented on July 21, 2024

Of course tuning is necessary. Generally, a larger dimension (e.g. 50) may result in better performance. I suggest you to try different values for hyperparameters. BTW, despite the remarkable performance of WRMF. it is not suitable for large dataset since the vector-wise ALS is time-consuming. MovieLens-100k is ok, but conducting with Epinions could be tormenting as it has a large number of users and items which result in a large matrix to be updated. BPR is a better choice.

from qrec.

statusrank avatar statusrank commented on July 21, 2024

Of course tuning is necessary. Generally, a larger dimension (e.g. 50) may result in better performance. I suggest you to try different values for hyperparameters. BTW, despite the remarkable performance of WRMF. it is not suitable for large dataset since the vector-wise ALS is time-consuming. MovieLens-100k is ok, but conducting with Epinions could be tormenting as it has a large number of users and items which result in a large matrix to be updated. BPR is a better choice.

Thanks.I think I will reproduce both of them for helping me understand the process,and your replies help me a lot ,too.Thanks again for sharing.

from qrec.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.