FlexMF Logistic on ML100K

This page analyzes the hyperparameter tuning results for the FlexMF scorer in implicit-feedback mode with logistic loss (Logistic Matrix Factorization).

Parameter Search Space

Parameter Type Distribution Values
embedding_size Integer LogUniform 4 ≤ \(x\) ≤ 512
regularization Float LogUniform 1e-05 ≤ \(x\) ≤ 1
learning_rate Float LogUniform 1e-05 ≤ \(x\) ≤ 0.1
reg_method Categorical Uniform L2, AdamW
negative_count Integer Uniform 1 ≤ \(x\) ≤ 5
positive_weight Float Uniform 1 ≤ \(x\) ≤ 10

Final Result

Searching selected the following configuration:

{
    'embedding_size': 31,
    'regularization': 0.39291404142015096,
    'learning_rate': 0.09343906641585487,
    'reg_method': 'AdamW',
    'negative_count': 4,
    'positive_weight': 2.096370093026729,
    'epochs': 22
}

With these metrics:

{
    'RBP': 0.12731247414883756,
    'NDCG': 0.3980651998294027,
    'RecipRank': 0.3880723447117054,
    'TrainTask': '7feaf81d-97d6-4610-ba8c-c48acc0ce47e',
    'TrainTime': 5.025425890999031,
    'TrainCPU': 4.984771,
    'timestamp': 1743028571,
    'checkpoint_dir_name': None,
    'done': True,
    'training_iteration': 22,
    'trial_id': '6099e_00061',
    'date': '2025-03-26_18-36-11',
    'time_this_iter_s': 0.21425771713256836,
    'time_total_s': 5.145690441131592,
    'pid': 159198,
    'hostname': 'CCI-ws21',
    'node_ip': '10.248.127.152',
    'config': {
        'embedding_size': 31,
        'regularization': 0.39291404142015096,
        'learning_rate': 0.09343906641585487,
        'reg_method': 'AdamW',
        'negative_count': 4,
        'positive_weight': 2.096370093026729,
        'epochs': 22
    },
    'time_since_restore': 5.145690441131592,
    'iterations_since_restore': 22,
    'experiment_tag': 
'61_embedding_size=31,learning_rate=0.0934,negative_count=4,positive_weight=2.0964,reg_method=AdamW,regularization=
0.3929'
}

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:

Data Handling

Learning Parameters

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?