def combine_recommenders(neighbourhood_calculators, neighbour_contribution_calculators, baseline_calculators, similarity_calculators, num_neighbours_list, thresholds, num_topics_list): combined_recommenders = [] for neighbourhood_calculator,\ neighbour_contribution_calculator,\ baseline_calculator,\ similarity_calculator,\ num_neighbours,\ threshold,\ num_topics\ in itertools.product( neighbourhood_calculators, neighbour_contribution_calculators, baseline_calculators, similarity_calculators, num_neighbours_list, thresholds, num_topics_list): recommender = ContextualKNN(None, None, None, None, None, has_context=True) recommender.neighbourhood_calculator = neighbourhood_calculator recommender.neighbour_contribution_calculator =\ neighbour_contribution_calculator recommender.user_baseline_calculator = baseline_calculator recommender.user_similarity_calculator = similarity_calculator recommender.num_neighbours = num_neighbours recommender.threshold1 = threshold recommender.threshold2 = threshold recommender.threshold3 = threshold recommender.threshold4 = threshold recommender.num_topics = num_topics combined_recommenders.append(recommender) return combined_recommenders
def combine_recommenders( neighbourhood_calculators, neighbour_contribution_calculators, baseline_calculators, similarity_calculators, num_neighbours_list, thresholds, num_topics_list): combined_recommenders = [] for neighbourhood_calculator,\ neighbour_contribution_calculator,\ baseline_calculator,\ similarity_calculator,\ num_neighbours,\ threshold,\ num_topics\ in itertools.product( neighbourhood_calculators, neighbour_contribution_calculators, baseline_calculators, similarity_calculators, num_neighbours_list, thresholds, num_topics_list): recommender = ContextualKNN( None, None, None, None, None, has_context=True) recommender.neighbourhood_calculator = neighbourhood_calculator recommender.neighbour_contribution_calculator =\ neighbour_contribution_calculator recommender.user_baseline_calculator = baseline_calculator recommender.user_similarity_calculator = similarity_calculator recommender.num_neighbours = num_neighbours recommender.threshold1 = threshold recommender.threshold2 = threshold recommender.threshold3 = threshold recommender.threshold4 = threshold recommender.num_topics = num_topics combined_recommenders.append(recommender) return combined_recommenders