src.fairreckitlib.model.algorithms.lenskit.lenskit_factory

This module contains functionality to create the lenskit predictor/recommender factory.

Functions:

create_predictor_factory: create factory with lenskit predictors.
create_recommender_factory: create factory with lenskit recommenders.

This program has been developed by students from the bachelor Computer Science at Utrecht University within the Software Project course. © Copyright Utrecht University (Department of Information and Computing Sciences)

 1"""This module contains functionality to create the lenskit predictor/recommender factory.
 2
 3Functions:
 4
 5    create_predictor_factory: create factory with lenskit predictors.
 6    create_recommender_factory: create factory with lenskit recommenders.
 7
 8This program has been developed by students from the bachelor Computer Science at
 9Utrecht University within the Software Project course.
10© Copyright Utrecht University (Department of Information and Computing Sciences)
11"""
12
13from ....core.config.config_factories import Factory, create_factory_from_list
14from ....core.config.config_parameters import create_params_random_seed
15from ....core.core_constants import LENSKIT_API
16from . import lenskit_algorithms
17from . import lenskit_params
18from . import lenskit_predictor
19from . import lenskit_recommender
20
21
22def create_predictor_factory() -> Factory:
23    """Create the factory with LensKit predictors.
24
25    Returns:
26        the factory with all available predictors.
27    """
28    return create_factory_from_list(LENSKIT_API, [
29        (lenskit_algorithms.BIASED_MF,
30         lenskit_predictor.create_biased_mf,
31         lenskit_params.create_params_biased_mf
32         ),
33        (lenskit_algorithms.IMPLICIT_MF,
34         lenskit_predictor.create_implicit_mf,
35         lenskit_params.create_params_implicit_mf
36         ),
37        (lenskit_algorithms.ITEM_ITEM,
38         lenskit_predictor.create_item_item,
39         lenskit_params.create_params_knn
40         ),
41        (lenskit_algorithms.POP_SCORE,
42         lenskit_predictor.create_pop_score,
43         lenskit_params.create_params_pop_score
44         ),
45        (lenskit_algorithms.USER_USER,
46         lenskit_predictor.create_user_user,
47         lenskit_params.create_params_knn
48        )
49    ])
50
51
52def create_recommender_factory() -> Factory:
53    """Create the factory with LensKit recommenders.
54
55    Returns:
56        the factory with all available recommenders.
57    """
58    return create_factory_from_list(LENSKIT_API, [
59        (lenskit_algorithms.BIASED_MF,
60         lenskit_recommender.create_biased_mf,
61         lenskit_params.create_params_biased_mf
62         ),
63        (lenskit_algorithms.IMPLICIT_MF,
64         lenskit_recommender.create_implicit_mf,
65         lenskit_params.create_params_implicit_mf
66         ),
67        (lenskit_algorithms.ITEM_ITEM,
68         lenskit_recommender.create_item_item,
69         lenskit_params.create_params_knn
70         ),
71        (lenskit_algorithms.POP_SCORE,
72         lenskit_recommender.create_pop_score,
73         lenskit_params.create_params_pop_score
74         ),
75        (lenskit_algorithms.RANDOM,
76         lenskit_recommender.create_random,
77         create_params_random_seed
78         ),
79        (lenskit_algorithms.USER_USER,
80         lenskit_recommender.create_user_user,
81         lenskit_params.create_params_knn
82         )
83    ])
def create_predictor_factory() -> src.fairreckitlib.core.config.config_factories.Factory:
23def create_predictor_factory() -> Factory:
24    """Create the factory with LensKit predictors.
25
26    Returns:
27        the factory with all available predictors.
28    """
29    return create_factory_from_list(LENSKIT_API, [
30        (lenskit_algorithms.BIASED_MF,
31         lenskit_predictor.create_biased_mf,
32         lenskit_params.create_params_biased_mf
33         ),
34        (lenskit_algorithms.IMPLICIT_MF,
35         lenskit_predictor.create_implicit_mf,
36         lenskit_params.create_params_implicit_mf
37         ),
38        (lenskit_algorithms.ITEM_ITEM,
39         lenskit_predictor.create_item_item,
40         lenskit_params.create_params_knn
41         ),
42        (lenskit_algorithms.POP_SCORE,
43         lenskit_predictor.create_pop_score,
44         lenskit_params.create_params_pop_score
45         ),
46        (lenskit_algorithms.USER_USER,
47         lenskit_predictor.create_user_user,
48         lenskit_params.create_params_knn
49        )
50    ])

Create the factory with LensKit predictors.

Returns: the factory with all available predictors.

def create_recommender_factory() -> src.fairreckitlib.core.config.config_factories.Factory:
53def create_recommender_factory() -> Factory:
54    """Create the factory with LensKit recommenders.
55
56    Returns:
57        the factory with all available recommenders.
58    """
59    return create_factory_from_list(LENSKIT_API, [
60        (lenskit_algorithms.BIASED_MF,
61         lenskit_recommender.create_biased_mf,
62         lenskit_params.create_params_biased_mf
63         ),
64        (lenskit_algorithms.IMPLICIT_MF,
65         lenskit_recommender.create_implicit_mf,
66         lenskit_params.create_params_implicit_mf
67         ),
68        (lenskit_algorithms.ITEM_ITEM,
69         lenskit_recommender.create_item_item,
70         lenskit_params.create_params_knn
71         ),
72        (lenskit_algorithms.POP_SCORE,
73         lenskit_recommender.create_pop_score,
74         lenskit_params.create_params_pop_score
75         ),
76        (lenskit_algorithms.RANDOM,
77         lenskit_recommender.create_random,
78         create_params_random_seed
79         ),
80        (lenskit_algorithms.USER_USER,
81         lenskit_recommender.create_user_user,
82         lenskit_params.create_params_knn
83         )
84    ])

Create the factory with LensKit recommenders.

Returns: the factory with all available recommenders.