## Hyper-parameter Search Results (general)

**Dataset informations**:
MovieLens-1m,
Amazon-Books,
Yelp2022

**Notes**: The hyper-parameter search range in the table is for reference only.
You can adjust the search range according to the actual situation of the dataset,
such as reducing the range appropriately on large data to reduce time consumption.
The orange bold text in the table represents the recommended value within the hyper-parameter search range.
And the symbol "\" indicates that the model appears out of memory when running on a GPU with 12G memory or
the running time is too long to complete the hyper-parameter search.

Model | MovieLens-1m | Amazon-Books | Yelp2022 |
---|---|---|---|

ADMMSLIM | alpha in [0.25,0.5,0.75,1] lambda1 in [0.1,0.5,5,10] lambda2 in [5,50,1000,5000] |
\ | alpha in [0.5,1] lambda1 in [0.5,5] lambda2 in [1000, 5000] |

BPR | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,5e-3,7e-3] | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,5e-3,7e-3] | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,3e-3,5e-3] |

CDAE | learning_rate in [1e-2,1e-3,5e-3,5e-4] loss_type in ['BCE','MSE'] corruption_ratio in [0.5,0.3,0.1] reg_weight_1 in [0.0,0.01] reg_weight_2 in [0.0,0.01] |
learning_rate in [1e-2,1e-3,5e-3,5e-4] corruption_ratio in [0.5,0.1] reg_weight_1 in [0.0,0.01] reg_weight_2 in [0.0,0.01] |
learning_rate in [5e-5,1e-4,5e-4,1e-3,3e-3] corruption_ratio in [0.5,0.3,0.1] |

ConvNCF | learning_rate in [5e-3, 1e-2, 2e-2] cnn_channels in ['[1, 32, 32, 32, 32, 32, 32]', '[1, 64, 32, 32, 32, 32]'] cnn_kernels in ['[2, 2, 2, 2, 2, 2]', '[4, 2, 2, 2, 2]'] cnn_strides in ['[2, 2, 2, 2, 2, 2]', '[4, 2, 2, 2, 2]'] dropout_prob in [0.0,0.1,0.2,0.3] reg_weights in ['[0.0, 0.0]', '[0.1, 0.1]'] |
\ | \ |

DGCF | learning_rate in [5e-4,1e-3, 5e-3,1e-2] n_factors in [2, 4, 8] reg_weight in [1e-3,1e-2] cor_weight in [1e-3,1e-2] |
learning_rate in [5e-4,1e-3,5e-3,1e-2] n_factors in [2, 4, 8] reg_weight in [1e-3,1e-2] cor_weight in [1e-3,1e-2] |
\ |

DMF | learning_rate in [5e-5,5e-4,3e-4,1e-4,5e-3,1e-3] user_hidden_size_list in ['[64, 64]','[64, 32]'] item_hidden_size_list in ['[64, 64]','[64, 32]'] |
learning_rate in [5e-5,5e-4,3e-4,1e-4,5e-3,1e-3] | \ |

EASE | reg_weight in [1.0,10.0,100.0,500.0,1000.0,2000.0] | reg_weight in [1.0,10.0,100.0,500.0,1000.0,2000.0] | reg_weight in [1.0,10.0,100.0,500.0,1000.0,2000.0] |

ENMF | learning_rate in [0.005,0.01,0.05] dropout_prob in [0.3,0.5,0.7] negative_weight in [0.1,0.2,0.5] |
learning_rate in [0.005,0.01,0.05] dropout_prob in [0.3,0.5,0.7] negative_weight in [0.1,0.2,0.5] |
learning_rate in [1e-4,1e-3,5e-3] dropout_prob in [0.5,0.3,0.1] negative_weight in [0.001,0.005,0.01,0.05] |

FISM | learning_rate in [5e-4,1e-4,5e-3,1e-3] embedding_size in [64] regs in ['[1e-7, 1e-7]', '[0, 0]'] alpha in [0.0] |
learning_rate in [5e-4,1e-4,5e-3,1e-3] regs in ['[1e-7, 1e-7]', '[0, 0]'] |
\ |

GCMC | accum in ['stack','sum'] learning_rate in [0.001,0.005,0.01] dropout_prob in [0.3,0.5,0.7] gcn_output_dim in [500] num_basis_functions in [2] |
accum in ['stack','sum'] learning_rate in [0.001,0.005,0.01] dropout_prob in [0.3,0.5,0.7] |
learning_rate in [5e-4,1e-3,0.01] accum in ['stack','sum'] dropout_prob in [0.3,0.5] gcn_output_dim in [500,1024] |

ItemKNN | k in [10,50,100,200,250,300,400] shrink in [0.0,0.1,0.5,1,2] |
k in [10,50,100,200,250,300,400] shrink in [0.0,0.1,0.5,1,2] |
k in [10,50,100,200,250,300,400] shrink in [0.0,0.5,1.0] |

LightGCN | learning_rate in [5e-4,1e-3,2e-3] n_layers in [1,2,3,4] reg_weight in [1e-05,1e-04,1e-03,1e-02] |
learning_rate in [5e-4,1e-3,2e-3] n_layers in [1,2,3,4] reg_weight in [1e-05,1e-04,1e-03,1e-02] |
learning_rate in [1e-4,5e-4,1e-3,5e-3,0.01] n_layers in [1,2,3,4] reg_weight in [1e-05,1e-04,1e-03] |

LINE | learning_rate in [5e-4,0.001,0.002] sample_num in [1,3,5] second_order_loss_weight in [0.3,0.6,1] |
learning_rate in [5e-4,0.001,0.002] sample_num in [1,5] second_order_loss_weight in [0.3,0.6,1] |
learning_rate in [5e-4,1e-3,2e-3] sample_num in [1,3] second_order_loss_weight in [0.3,0.6,1] |

MacridVAE | learning_rate in [0.0005,0.001,0.005,0.01,0.05] kafc in [3,5,10,20] |
\ | \ |

MultiDAE | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,5e-3,7e-3] | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,5e-3,7e-3] | learning_rate in [1e-4,5e-4,1e-3,0.0015,5e-3,0.01] |

MultiVAE | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,5e-3,7e-3] | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,5e-3,7e-3] | learning_rate in [1e-4,5e-4,1e-3,0.0015,3e-3,5e-3,0.01] |

NAIS | learning_rate in [1e-4, 1e-3,1e-2] weight_size in [64,32] reg_weights in ['[1e-7, 1e-7, 1e-5]', '[0, 0, 0]'] alpha in [0.0] beta in [0.5] |
\ | \ |

NCE-PLRec | rank in [100,200,450] beta in [0.8,1.0,1.3] reg_weight in [1e-4,1e-2,1e2,15000] |
rank in [100,200,450] beta in [0.8,1.0,1.3] reg_weight in [1e-4,1e-2,1e2,15000] |
rank in [100,200,450] beta in [1.0,1.3] reg_weight in [1e-04,1e-02,1e2,15000] |

NCL | num_clusters in [100,1000] proto_reg in [1e-6,1e-7,1e-8] ssl_reg in [1e-6,1e-7] ssl_temp in [0.05,0.07,0.1] |
num_clusters in [100,1000] proto_reg in [1e-6,1e-8] ssl_reg in [1e-6,1e-7] ssl_temp in [0.05,0.1] |
num_clusters in [1000] proto_reg in [1e-7,1e-8] ssl_reg in [1e-6,1e-7,1e-8] ssl_temp in [0.07,0.1] |

NeuMF | learning_rate in [5e-7,1e-6,5e-6,1e-5,1e-4,1e-3] mlp_hidden_size in ['[64,32,16]'] dropout_prob in [0.0,0.1,0.3] |
learning_rate in [5e-7,1e-6,5e-6,1e-5,1e-4,1e-3] mlp_hidden_size in ['[64,32,16]'] dropout_prob in [0.0,0.1,0.3] |
learning_rate in [5e-7,1e-6,5e-6,1e-5,1e-4,1e-3] mlp_hidden_size in ['[64,32,16]'] dropout_prob in [0.0,0.1,0.3] |

NGCF | learning_rate in [1e-4,5e-4,1e-3] hidden_size_list in ['[64,64,64]','[128,128,128]'] node_dropout in [0.0,0.1,0.2] message_dropout in [0.0,0.1,0.2] reg_weight in [1e-5,1e-3,1e-1] |
\ | learning_rate in [1e-4,5e-4] hidden_size_list in ['[64,64,64]','[128,128,128]','[256,256,256]'] node_dropout in [0.0,0.1] message_dropout in [0.0,0.1] reg_weight in [1e-5] |

NNCF | neigh_num in [20,50,100] neigh_embedding_size in [64,32] num_conv_kernel in [128,64] learning_rate in [5e-5,1e-4,5e-4] neigh_info_method in ['random','knn'] |
\ | \ |

Pop | \ | \ | \ |

RaCT | dropout_prob in [0.1,0.3,0.5] anneal_cap in [0.2,0.5] |
dropout_prob in [0.1,0.3,0.5] anneal_cap in [0.2,0.5] |
\ |

RecVAE | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,5e-3,7e-3] | learning_rate in [5e-5,1e-4,5e-4,7e-4,1e-3,5e-3,7e-3] | learning_rate in [1e-4,5e-4,1e-3,5e-3,1e-2] |

SGL | type in ['ED'] ssl_tau in [0.1,0.2,0.5] drop_ratio in [0.1,0.2,0.4,0.5] ssl_weight in [0.05,0.1,0.5] |
type in ['ED'] ssl_tau in [0.1,0.2,0.5] drop_ratio in [0.1,0.2,0.4,0.5] ssl_weight in [0.05,0.1,0.5] |
learning_rate in [1e-4,1e-3,5e-3] ssl_tau in [0.2,0.5] drop_ratio in [0.1,0.2] ssl_weight in [0.05,0.1] |

SimpleX | gamma in [0.3,0.5,0.7] margin in [0,0.5,0.9] negative_weight in [1,10,50] |
gamma in [0.3,0.5,0.7] margin in [0,0.5,0.9] negative_weight in [1,10,50] |
learning_rate in [1e-4,1e-3] gamma in [0.3,0.5,0.7] margin in [0,0.5,0.9] negative_weight in [1,10,50] |

SLIMElastic | alpha in [0.2,0.4,0.6,0.8] l1_ratio in [0.1,0.05,0.01,0.005] hide_item in [True] positive_only in [True] |
alpha in [0.2,0.4,0.6,0.8] l1_ratio in [0.1,0.05,0.01,0.005] |
alpha in [0.2,0.4,0.6,0.8] l1_ratio in [0.1,0.05,0.01,0.005] hide_item in [True] positive_only in [True] |

SpectralCF | learning_rate in [0.002,0.001,0.0005] reg_weight in [0.002,0.001,0.0005] n_layers in [1,2,3,4] |
learning_rate in [0.002,0.001,0.0005] reg_weight in [0.002,0.001,0.0005] n_layers in [1,2,3,4] |
learning_rate in [1e-4,5e-4,1e-3,2e-3,5e-3,0.01] reg_weight in [0.002,0.001,0.0005] n_layers in [1,2,3] |