irecsys / CARSKit

Java-Based Context-aware Recommendation Library
https://carskit.github.io/
GNU General Public License v3.0
125 stars 53 forks source link

No recommender is specified! #22

Closed SlokomManel closed 2 years ago

SlokomManel commented 2 years ago

Dear Yong,

Recently, I came across your toolkit as well as your recently published paper "Context-Aware Collaborative Filtering Using Context Similarity: An Empirical Comparison". I am working on reproducing your results but I have been trying different CARS algorithms i,e., chen1, chen2, FM and I get an error: java.lang.Exception: No recommender is specified! . I had a look at the Java code. All the algorithms are called in the main and they exist in their corresponding folders. I tried to change parameters ... but it didn't work.

For algorithms like ExactFiltering and CPTF, it started running but I got the following results:

Final Results by BPRR2, Pre5: 0.048804,Pre10: 0.034689, Rec5: 0.048804, Rec10: 0.069378, AUC5: 0.610541, AUC10: 0.651134, MAP5: 0.028704, MAP10: 0.032047,NDCG5: 0.055237, NDCG10: 0.066468,MRR5: 0.129486, MRR10: 0.140072, -1.0,10,0.02,-1.0,1.0E-4,1.0E-4,100, Time: '05:59','00:04'
Final Results by BPRR1, Pre5: 0.021053,Pre10: 0.017225, Rec5: 0.021053, Rec10: 0.034450, AUC5: 0.550194, AUC10: 0.578849, MAP5: 0.013529, MAP10: 0.015608,NDCG5: 0.025646, NDCG10: 0.033053,MRR5: 0.064354, MRR10: 0.072185, -1.0,10,0.02,-1.0,1.0E-4,1.0E-4,100, Time: '06:00','00:04'
Final Results by ExactFiltering, Pre5: 0.000000,Pre10: 0.000000, Rec5: 0.000000, Rec10: 0.000000, AUC5: 0.500000, AUC10: 0.500000, MAP5: 0.000000, MAP10: 0.000000,NDCG5: 0.000000, NDCG10: 0.000000,MRR5: 0.000000, MRR10: 0.000000, 20, pcc, -1, Time: '00:00','30:09'
Final Results by CPTF, Pre5: 0.000000,Pre10: 0.000000, Rec5: 0.000000, Rec10: 0.000000, AUC5: 0.500000, AUC10: 0.500000, MAP5: 0.000000, MAP10: 0.000000,NDCG5: 0.000000, NDCG10: 0.000000,MRR5: 0.000000, MRR10: 0.000000, 10, 0.02, -1.0, 1.0E-4, 100, true, Time: '00:00','00:10'

P.S., The problems happen only when I use CARS algorithms!

Snippet of my code:

dataset.ratings.lins=[.... path to my data ]/.csv

dataset.social.wins=-1
dataset.social.lins=-1

ratings.setup=-threshold -1 -datatransformation 1 -fullstat -1

recommender=chen2
....

I look forward to hearing back from you. Thank you. Best, -- Manel.

irecsys commented 2 years ago

Hi, CARSKit is no longer updated since 2019. Chen1 and Chen2 were derived from Chen's paper in 2005. They were never evaluted before, though they were proposed early in 2005. There were no context-aware data sets available in 2005. If you are interested in Chen's methods, you can implement it by yourself. We have no plan to update CARSKit anymore. We are building a DeepCARSKit which implements Deep Learning models. Hopefully it can be released in 2022.

Regarding your results, you should carefully change the paramters. You cannot simply run the algorithms with default parameters. You need tune up parameters carefully for each data sets.

irecsys commented 2 years ago

Oh, My fault. It seems that I have uploaded Chen1 and Chen2 to the library before. OK. No worries, let me check it. I beleive that the jar file release was not updated

irecsys commented 2 years ago

fixed. New jar file uploaded