We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
你好,最近我在尝试复现这篇论文的结果,但是我想使用额外的数据集,你在之前的issues中提到的那种方法似乎是由你们的框架来实现训练集和测试集等自动划分,那么要是我想指定训练集和测试集以及sample样本的话似乎有点困难。而且我看到你关于gowalla数据集中的num_clusters的设置为10和你论文中说的1000左右似乎有左。
The text was updated successfully, but these errors were encountered:
你好,
举个例子,比如我有提前处理好的训练、验证和测试文件(都是 user item 的交互记录),命名为 xxx。
xxx
那首先可以把它们都转变为 atomic file 的形式(见 #1 ),并分别命名为 xxx.train.inter,xxx.valid.inter 和 xxx.test.inter,然后放到 dataset 这个文件夹里。
xxx.train.inter
xxx.valid.inter
xxx.test.inter
dataset
dataset/ xxx/ xxx.train.inter xxx.valid.inter xxx.test.inter
然后仿照 #1 的内容,写一个 xxx.yaml,里面加一行
xxx.yaml
benchmark_filename: [train, valid, test]
然后运行
python main.py --dataset=xxx --config=xxx.yaml
请参考 RecBole 的 API Doc 中关于评测的部分,NCL 都兼容的。
首先,论文中说的 1000 是在 section 4.3.6,这里我们在 ml-1m 和 yelp 上测试了模型效果与超参数的关系,并观察到这两个数据集上在 k 取 1000 附近差不多就达到最优了。这并不是说在任何数据集上,k 的最优值一定在 1000 附近。
其次,我们在 section 4.1.4 中写到,NCL 做参数调优时,k 的取值范围是 [5, 10000]。k=10 是在调参范围内的。
再次,我们测试了 num_clusters: 1000 时,NCL 在 gowalla 上的效果。
num_clusters: 1000
test result: OrderedDict([('recall@10', 0.1502), ('recall@20', 0.2129), ('recall@50', 0.3253), ('ndcg@10', 0.1082), ('ndcg@20', 0.1263), ('ndcg@50', 0.154)])
和取 10 的结果非常接近。
Sorry, something went wrong.
由于超过 5 天没有新回复,先关闭 issue 了。如果还有疑问,欢迎随时评论。
hyp1231
No branches or pull requests
你好,最近我在尝试复现这篇论文的结果,但是我想使用额外的数据集,你在之前的issues中提到的那种方法似乎是由你们的框架来实现训练集和测试集等自动划分,那么要是我想指定训练集和测试集以及sample样本的话似乎有点困难。而且我看到你关于gowalla数据集中的num_clusters的设置为10和你论文中说的1000左右似乎有左。
The text was updated successfully, but these errors were encountered: