--- tags: - recommender-system - sasrec datasets: - ml-1m --- # SASRec - ml-1m ## Model Description SASRec (Self-Attentive Sequential Recommendation) is a sequential recommendation model that uses self-attention mechanisms to model user's historical behavior data. ## Training Results ### Best Valid Results - **ndcg@10**: 0.1261 - **hit@10**: 0.2486 - **averagepopularity@10**: 756.7929 - **giniindex@10**: 0.7006 - **itemcoverage@10**: 0.759 - **shannonentropy@10**: 0.003 - **tailpercentage@10**: 0.0035 ### Test Results - **ndcg@10**: 0.1252 - **hit@10**: 0.2423 - **averagepopularity@10**: 764.8602 - **giniindex@10**: 0.7061 - **itemcoverage@10**: 0.7535 - **shannonentropy@10**: 0.003 - **tailpercentage@10**: 0.0034 ## Configuration The model was trained with the following configuration: ```yaml ENTITY_ID_FIELD: entity_id HEAD_ENTITY_ID_FIELD: head_id ITEM_ID_FIELD: item_id ITEM_LIST_LENGTH_FIELD: item_length LABEL_FIELD: label LIST_SUFFIX: _list MAX_ITEM_LIST_LENGTH: 50 MODEL_INPUT_TYPE: InputType.POINTWISE MODEL_TYPE: ModelType.SEQUENTIAL NEG_PREFIX: neg_ POSITION_FIELD: position_id RATING_FIELD: rating RELATION_ID_FIELD: relation_id TAIL_ENTITY_ID_FIELD: tail_id TIME_FIELD: timestamp USER_ID_FIELD: user_id additional_feat_suffix: null alias_of_entity_id: null alias_of_item_id: null alias_of_relation_id: null alias_of_user_id: null attn_dropout_prob: 0.5 benchmark_filename: null checkpoint_dir: saved clip_grad_norm: null dataloaders_save_path: null dataset: ml-1m dataset_save_path: null device: cuda discretization: null embedding_size: 64 enable_amp: false enable_scaler: false entity_kg_num_interval: '[0,inf)' epochs: 500 eval_args: group_by: user mode: test: full valid: full order: TO split: LS: valid_and_test eval_batch_size: 12288 eval_step: 1 eval_type: EvaluatorType.RANKING field_separator: "\t" filter_inter_by_user_or_item: true gpu_id: '0' hidden_act: gelu hidden_dropout_prob: 0.5 hidden_size: 64 initializer_range: 0.02 inner_size: 256 item_inter_num_interval: '[10,inf)' kg_reverse_r: false layer_norm_eps: 1.0e-12 learner: adam learning_rate: 0.0005 load_col: inter: - user_id - item_id - rating - timestamp local_rank: 0 log_wandb: false loss_decimal_place: 4 loss_type: CE metric_decimal_place: 4 metrics: - NDCG - Hit - AveragePopularity - GiniIndex - ItemCoverage - ShannonEntropy - TailPercentage model: SASRec n_heads: 2 n_layers: 2 normalize_all: null normalize_field: null numerical_features: [] preload_weight: null relation_kg_num_interval: '[0,inf)' repeatable: true reproducibility: true require_pow: false rm_dup_inter: null save_dataloaders: false save_dataset: false seed: 2020 seq_len: null seq_separator: ' ' show_progress: false shuffle: true single_spec: true state: INFO stopping_step: 10 test_neg_sample_args: distribution: uniform sample_num: none threshold: null topk: - 10 train_batch_size: 12288 train_neg_sample_args: alpha: none candidate_num: 0 distribution: none dynamic: false sample_num: none transform: null unload_col: null unused_col: inter: - rating use_gpu: true user_inter_num_interval: '[10,inf)' val_interval: rating: '[3,inf)' valid_metric: NDCG@10 valid_metric_bigger: true valid_neg_sample_args: distribution: uniform sample_num: none wandb_project: recbole weight_decay: 0.0 worker: 0 ``` ## Usage