Linxyhaha / TDRO

Temporally and Distributionally Robust Optimization for Cold-start Recommendation (AAAI'24)
https://arxiv.org/pdf/2312.09901.pdf
6 stars 0 forks source link

inference.py报错 #1

Open wjxfoxx opened 8 months ago

wjxfoxx commented 8 months ago

Hello author, I am currently reproducing your TDRO model code, but I found an unnecessary parameter num_period in the train_dataset function call at line 117 in the original inference.py, whether I deleted the parameter or added it in Dataset.py An error will be reported, or the --no_cuda option is not defined, or there is an error in the eval() function, etc. How should I solve it?

coralineyang commented 8 months ago

请问你成功复现了吗?我发现这个Inference代码好像有问题,model.result好像也没说是哪里来的。

wjxfoxx commented 8 months ago

没有复现,不知道是不是作者故意的,这个传参都是错的,传进去的参数,在方法里面根本没有定义.不管怎么修改都是报错

------------------ 原始邮件 ------------------ 发件人: "Linxyhaha/TDRO" @.>; 发送时间: 2024年3月12日(星期二) 下午4:02 @.>; @.**@.>; 主题: Re: [Linxyhaha/TDRO] inference.py报错 (Issue #1)

请问你成功复现了吗?我发现这个Inference代码好像有问题,model.result好像也没说是哪里来的。

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

Linxyhaha commented 8 months ago

Hello author, I am currently reproducing your TDRO model code, but I found an unnecessary parameter num_period in the train_dataset function call at line 117 in the original inference.py, whether I deleted the parameter or added it in Dataset.py An error will be reported, or the --no_cuda option is not defined, or there is an error in the eval() function, etc. How should I solve it?

你好,感谢对我们工作的关注! 我们更正了一下inference.py 代码中的typo,现在应该可以跑通了 :)

Linxyhaha commented 8 months ago

请问你成功复现了吗?我发现这个Inference代码好像有问题,model.result好像也没说是哪里来的。

你好,我们更正了inference.py代码中的typo,现在应该没有问题了。另外model.result是在model_CLCRec.py中定义的,并在每个epoch后会更新一次 (Train.py line81-83). :)

MrShouxingMa commented 7 months ago

作者您好,请问如果我要更换数据集,如何在最基本的数据集基础上生成代码所需数据?

Linxyhaha commented 7 months ago

作者您好,请问如果我要更换数据集,如何在最基本的数据集基础上生成代码所需数据?

你好,我们新提供了一个数据集的说明文件在data/ 下,包含了数据集文件的内容以及格式。如果需要更换数据集,确保包含interactions, item timestamps, item feature, 以及warm/cold sets 这些数据文件(在数据集说明文件中有详细介绍)。

MrShouxingMa commented 7 months ago

感谢作者的及时回复,我还想请请教,如果数据集中没有项目时间戳, 只包含最基本的用户和项目交互数据,暖/冷集合以及项目的特征,我想知道是否可以运行此模型?

Linxyhaha commented 7 months ago

感谢作者的及时回复,我还想请请教,如果数据集中没有项目时间戳, 只包含最基本的用户和项目交互数据,暖/冷集合以及项目的特征,我想知道是否可以运行此模型?

如果没有时间戳的话,可以考虑使用我们代码中对kwai数据集的处理方式:利用用户交互产品的相对时间顺序。具体可以参考Data.py这个脚本中的 gen_env_relative(self, train_data, N) 函数。需要注意的是这种处理方式仍然需要知道用户序列中产品的相对时间顺序。

我们的方法需要将用户的训练数据划分成不同的period来利用好shifting factor,因此需要有绝对时间戳或相对交互顺序。具体可以参考论文中的Section 4.1 以及公式5。如果没有时间信息,也可以使用我们的模型,但此时period=1,shifting factor将会变成常数。