Exemple #1
0
 def test_create_ItemBasedRecommender(self):
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              True)
     self.assertEquals(recSys.similarity, self.similarity)
     self.assertEquals(recSys.capper, True)
     self.assertEquals(recSys.strategy, self.strategy)
     self.assertEquals(recSys.model, self.model)
Exemple #2
0
 def test_recommendedBecause(self):
     userID = 'Leopoldo Pires'
     itemID = 'Just My Luck'
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              False)
     self.assertEquals(['The Night Listener', 'Superman Returns'],
                       recSys.recommendedBecause(userID, itemID, 2))
Exemple #3
0
 def test_allItem_mostSimilarItems(self):
     itemIDs = [
         'Superman Returns', 'Just My Luck', 'Snakes on a Plane',
         'The Night Listener', 'You, Me and Dupree', 'Lady in the Water'
     ]
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              True)
     self.assertEquals([], recSys.mostSimilarItems(itemIDs, 4))
Exemple #4
0
 def test_local_not_existing_capper_False_estimatePreference(self):
     userID = 'Leopoldo Pires'
     itemID = 'You, Me and Dupree'
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              False)
     self.assertAlmostEquals(
         3.14717875510,
         recSys.estimatePreference(userID=userID,
                                   similarity=self.similarity,
                                   itemID=itemID))
Exemple #5
0
 def test_local_estimatePreference(self):
     userID = 'Marcel Caraciolo'
     itemID = 'Superman Returns'
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              True)
     self.assertAlmostEquals(
         3.5,
         recSys.estimatePreference(userID=userID,
                                   similarity=self.similarity,
                                   itemID=itemID))
Exemple #6
0
 def test_semi_recommend(self):
     userID = 'Leopoldo Pires'
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              False)
     self.assertEquals(['Just My Luck'], recSys.recommend(userID, 1))
Exemple #7
0
 def test_full_recommend(self):
     userID = 'Maria Gabriela'
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              False)
     self.assertEquals([], recSys.recommend(userID, 4))
Exemple #8
0
 def test_recommend(self):
     userID = 'Leopoldo Pires'
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              False)
     self.assertEquals(['Just My Luck', 'You, Me and Dupree'],
                       recSys.recommend(userID, 4))
Exemple #9
0
 def test_empty_recommend(self):
     userID = 'Marcel Caraciolo'
     recSys = ItemRecommender(self.model, self.similarity, self.strategy,
                              False)
     self.assertEquals([], recSys.recommend(userID, 4))
 if (len(df) > 100000):
     test = df.sample(100000).groupby('userId')
 else:
     test = df.groupby('userId')
 data = {}
 for key, grp in test:
     Test = grp.drop('userId', axis=1)
     data[key] = Test.set_index('movieId').T.to_dict('records')[0]
 model = DictDataModel(data)
 similarity = ItemSimilarity(
     model,
     topicSimilarityCache,
     topicDistribution=joblib.load('cache/JSD.pkl'),
     movieIndex=movieId)
 items_strategy = PreferredItemsNeighborhoodStrategy()
 recSys = ItemRecommender(model, similarity, items_strategy)
 evaluator = AverageAbsoluteDifferenceRecommenderEvaluator()
 temp = Parallel(n_jobs=3)(
     delayed(parallel)(evaluator, recSys, model, i)
     for i in range(6, 10))
 for a in range(0, 4):
     dummy[a] += temp[a]
 similarity = ItemSimilarity(model, sim_euclidian)
 items_strategy = PreferredItemsNeighborhoodStrategy()
 recSys = ItemRecommender(model, similarity, items_strategy)
 evaluator = AverageAbsoluteDifferenceRecommenderEvaluator()
 temp = Parallel(n_jobs=3)(
     delayed(parallel)(evaluator, recSys, model, i)
     for i in range(6, 10))
 for a in range(0, 4):
     dummy2[a] += temp[a]
Exemple #11
0
 def test_Item_IRStatsRecommenderEvaluator(self):
     evaluator = IRStatsRecommenderEvaluator()
     recommender = ItemRecommender(self.model, self.similarity_item,
                                   self.strategy, False)
     result = evaluator.evaluate(recommender, self.model, 2, 1.0)
     print result
Exemple #12
0
 def test_Item_RMSRecommenderEvaluator(self):
     evaluator = RMSRecommenderEvaluator()
     recommender = ItemRecommender(self.model, self.similarity_item,
                                   self.strategy, False)
     result = evaluator.evaluate(recommender, self.model, 0.7, 1.0)
Exemple #13
0
 def test_Item_AvgDistanceRecSys(self):
     evaluator = AverageAbsoluteDifferenceRecommenderEvaluator()
     recommender = ItemRecommender(self.model, self.similarity_item,
                                   self.strategy, False)
     result = evaluator.evaluate(recommender, self.model, 0.7, 1.0)