RUCAIBox / RecBole

A unified, comprehensive and efficient recommendation library
https://recbole.io/
MIT License
3.35k stars 604 forks source link

[🐛BUG] 关于SINE模型在ML-1M数据集上结果异常的问题。 #1795

Open cnu-glf opened 1 year ago

cnu-glf commented 1 year ago

您好,感谢您的工作!我在ML-1M数据集上跑SINE模型时发现四个指标HIT@10: 3.569,HIT@20: 7.14,NDGG@10 :1.64,NDGG@20 :2.526 远远低于原始论文及其他模型的结果,不知道是何种原因导致了这样的问题?

参数设置保持默认未变

dataset config

ml-lm dataset config

field_separator: "\t" seq_separator: " " USER_ID_FIELD: user_id ITEM_ID_FIELD: item_id RATING_FIELD: rating TIME_FIELD: timestamp seq_len: ~

Label for Point-wise DataLoader

LABEL_FIELD: label

NegSample Prefix for Pair-wise DataLoader

NEGPREFIX: neg

Sequential Model Needed

ITEM_LIST_LENGTH_FIELD: item_length LIST_SUFFIX: _list MAX_ITEM_LIST_LENGTH: 200 POSITION_FIELD: position_id

Knowledge-based Model Needed

HEAD_ENTITY_ID_FIELD: head_id TAIL_ENTITY_ID_FIELD: tail_id RELATION_ID_FIELD: relation_id ENTITY_ID_FIELD: entity_id

Selectively Loading

load_col: inter: [ user_id, item_id, rating, timestamp ] unload_col: ~

Filtering

max_user_inter_num: ~ min_user_inter_num: ~ max_item_inter_num: ~ min_item_inter_num: ~ lowest_val: rating: 3 highest_val: ~ equal_val: ~ not_equal_val: ~ drop_filter_field: True

Preprocessing

fields_in_same_space: ~ fill_nan: True preload_weight: ~ drop_preload_weight: True normalize_field: ~ normalize_all: True

training and evaluation

epochs: 100 train_batch_size: 100 eval_batch_size: 100 topk: [ 10, 20 ] metrics: [ Hit, NDCG ] valid_metric: Hit@20 stopping_step: 10 metric_decimal_place: 5 eval_args: split: RS: [ 0.8, 0.1, 0.1 ] order: TO mode: full neg_sampling: ~

期待您的回复,万分感谢!

model config

embedding_size: 64 layer_norm_eps: 1e-12 prototype_size: 50 interest_size: 3 tau_ratio: 0.1 reg_loss_ratio: 0.5 loss_type: 'CE'

Sherry-XLL commented 1 year ago

您好 @ForeverFLying666,感谢您对 RecBole 项目的关注!

我们开发人员在复现模型时都会以论文和源代码为依据,并交由专门负责的同学审核确保复现的正确性。但是对于 SINE 这个模型,我们反复对比了 RecBole 中的实现和原文的描述,并未发现有明显的出入,但我们内部测试的效果也不理想。

若您在使用中发现了我们复现中的问题,也欢迎您指出,但目前我们确实无法完全复现出论文的效果。