dingjingtao / view_enhanced_als Goto Github PK
View Code? Open in Web Editor NEWThe implementation of VALS
License: Apache License 2.0
The implementation of VALS
License: Apache License 2.0
Hello, the dataset(Tmall_purchase) given is not as same as described in the paper (Table 2)
Can you share it or help me confirm that the origin data is from "Shop Info and User Behavior data from IJCAI-15"
Furthermore, it seems that the ratings in the dataset are re-ranked depending on the original data.
But the meanings of the rankings are not declared.
Can you briefly introduce it
Thank you.
Hi dingjingtao,
Thank you for sharing your implementation for your paper which is very inspiring.
However, I failed to reproduce the recommendation accuracies presented in the paper and even after tuning the parameters based on the paper.
Taking the dataset Tmall given in this project as an example, when using the default settings in main_MF for VALS, the HR and NDCG are only 0.0083 and 0.0020, respectively, by Iteration 20, and after tuning the parameters, HR and NDCG can still hardly exceed 0.035 by Iteration 20. These results are far lower than those presented in Figure 3 in the paper, where HR and NDCG exceed 0.06 and 0.015, respectively, in the first several iterations.
Could you please share more details about the parameters for achieving the highest recommendation accuracies? or give me some hints to achieve the results presented in the paper?
I list the default and my tunned parameters in the file main_MF below,
the default:
String dataset_name = "ijcai18-vals-master\data\tmall_all\Tmall_purchase";
String sidedataset_name = "ijcai18-vals-master\data\tmall_all\Tmall_view";
String method = "vieweALS";
double w0 = 0.5; // c0 in the paper, given
double w1 = 1; //s0 in the paper, not sure
double w2 = 1; //seems not used by any algorithm
double r1 = 1;
boolean showProgress = false;
boolean showLoss = true;
int factors = 64;
int maxIter = 500;
double reg = 0.01;
double alpha = 0.75;
double beta = 0.2;
double ratio = 0;
double gamma1 = 0;
double gamma2 = 0;
my tunned :
String dataset_name = "ijcai18-vals-master\data\tmall_all\Tmall_purchase";
String sidedataset_name = "ijcai18-vals-master\data\tmall_all\Tmall_view";
String method = "vieweALS";
double w0 = 0.5; // c0 in the paper, given
double w1 = 800; //s0 in the paper, not sure
double w2 = 1; //seems not used by any algorithm
double r1 = 1;
boolean showProgress = false;
boolean showLoss = true;
int factors = 32; // all baselines are set to 32
int maxIter = 500; // is set by default and does not matter
double reg = 0.001;
double alpha = 0.5; //not sure
double beta = 0.5; //not sure, seems that when alpha = 2 and beta = 0.5, the results is good
double ratio = 0;
double gamma1 = 3.5; // given explicitly
double gamma2 = 3.5; // given explicitly
Thank you for your consideration and time!
import happy.coding.math.Randoms 不可以直接用random()函数么,这个导入出错了
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.