Exemplo n.º 1
0
def test_sklearn_api():
    model = LightFM()
    params = model.get_params()
    model2 = LightFM(**params)
    params2 = model2.get_params()
    assert params == params2
    model.set_params(**params)
    params['invalid_param'] = 666
    with pytest.raises(ValueError):
        model.set_params(**params)
Exemplo n.º 2
0
def test_sklearn_api():
    model = LightFM()
    params = model.get_params()
    model2 = LightFM(**params)
    params2 = model2.get_params()
    assert params == params2
    model.set_params(**params)
    params['invalid_param'] = 666
    with pytest.raises(ValueError):
        model.set_params(**params)
Exemplo n.º 3
0
# In[ ]:
alpha = 0.003
epochs = 50
num_components = 32
step = 5
# %%[markdown]
# # > Model
# In[ ]:
model_k10 = LightFM(no_components=num_components,
                    loss='warp',
                    k=10,
                    learning_schedule='adagrad',
                    user_alpha=alpha,
                    item_alpha=alpha)
# %%[markdown]
# # > Train
logger.log(str(model_k10.get_params()))
for epoch in tqdm(range(epochs)):

    model_k10.fit_partial(train,
                          epochs=step,
                          user_features=user_identity,
                          item_features=item_identity,
                          num_threads=6,
                          verbose=True)

    mean_precision = precision_at_k(model_k10, train, k=10).mean()
    logger.log("Precision k10 : {}".format(mean_precision))
    logger.save_model(model_k10,
                      session_log_path + "models/epoch_{}".format(epoch))