File size: 3,317 Bytes
0cd4f1f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
---
tags:
- recommender-system
- sasrec
datasets:
- ML-100k
---

# SASRec - ML-100k

## 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.0197
- **hit@10**: 0.0362
- **averagepopularity@10**: 304.4937
- **giniindex@10**: 0.9858
- **itemcoverage@10**: 0.0747
- **shannonentropy@10**: 0.0387
- **tailpercentage@10**: 0.0002

### Test Results
- **ndcg@10**: 0.0157
- **hit@10**: 0.0351
- **averagepopularity@10**: 304.5865
- **giniindex@10**: 0.9861
- **itemcoverage@10**: 0.0688
- **shannonentropy@10**: 0.0417
- **tailpercentage@10**: 0.0

## 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-100k
dataset_save_path: null
device: cpu
discretization: null
enable_amp: false
enable_scaler: false
entity_kg_num_interval: null
epochs: 1
eval_args:
  group_by: user
  mode:
    test: full
    valid: full
  order: TO
  split:
    LS: valid_and_test
eval_batch_size: 40960
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.001
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: true
normalize_field: null
numerical_features: []
preload_weight: null
relation_kg_num_interval: null
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: 4096
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