This page analyzes the hyperparameter tuning results for the FlexMF scorer in implicit-feedback mode with logistic loss (Logistic Matrix Factorization).
Parameter Search Space
/home/mde48/lenskit/lenskit-codex/.venv/lib/python3.12/site-packages/ray/tune/search/sample.py:700: RayDeprecationWarning: The `base` argument is deprecated. Please remove it as it is not actually needed in this method.
embedding_size |
Integer |
LogUniform |
4 ≤ \(x\) ≤ 512 |
25 |
regularization |
Float |
LogUniform |
0.0001 ≤ \(x\) ≤ 10 |
0.00953 |
learning_rate |
Float |
LogUniform |
0.001 ≤ \(x\) ≤ 0.1 |
0.0025 |
reg_method |
Categorical |
Uniform |
L2, AdamW |
AdamW |
negative_count |
Integer |
Uniform |
1 ≤ \(x\) ≤ 5 |
4 |
positive_weight |
Float |
Uniform |
1 ≤ \(x\) ≤ 10 |
2.25 |
user_bias |
Categorical |
Uniform |
True, False |
False |
item_bias |
Categorical |
Uniform |
True, False |
True |
Final Result
Searching selected the following configuration:
{
'embedding_size': 25,
'regularization': 0.00952680341791649,
'learning_rate': 0.0024979074633962118,
'reg_method': 'AdamW',
'negative_count': 4,
'positive_weight': 2.251002203696023,
'user_bias': False,
'item_bias': True,
'epochs': 19
}
With these metrics:
{
'RBP': 0.18157177283063697,
'LogRBP': 2.088135708920756,
'NDCG': 0.4255942396129244,
'RecipRank': 0.35156274138806104,
'TrainTask': '80c4a230-69fc-4e26-b47e-9b2bc61f7bf3',
'TrainTime': None,
'TrainCPU': None,
'max_epochs': 50,
'done': True,
'training_iteration': 19,
'trial_id': '968271f1',
'date': '2025-05-07_07-51-07',
'timestamp': 1746618667,
'time_this_iter_s': 43.33179569244385,
'time_total_s': 1009.8534638881683,
'pid': 239992,
'hostname': 'CCI-ws21',
'node_ip': '10.248.127.152',
'config': {
'embedding_size': 25,
'regularization': 0.00952680341791649,
'learning_rate': 0.0024979074633962118,
'reg_method': 'AdamW',
'negative_count': 4,
'positive_weight': 2.251002203696023,
'user_bias': False,
'item_bias': True,
'epochs': 19
},
'time_since_restore': 1009.8534638881683,
'iterations_since_restore': 19
}
Parameter Analysis
Embedding Size
The embedding size is the hyperparameter that most affects the model’s fundamental logic, so let’s look at performance as a fufnction of it:
Iteration Completion
How many iterations, on average, did we complete?
How did the metric progress in the best result?
How did the metric progress in the longest results?