コード例 #1
0
def crab_main(vectorized_train_data, vectorized_test_data):
    crab_mat = parsers.crab_costum_matrix(vectorized_train_data)

    model = MatrixPreferenceDataModel(crab_mat)
    similarity = UserSimilarity(model, pearson_correlation)
    recommender = UserBasedRecommender(model, similarity, with_preference=True)
    result = []
    for item in vectorized_test_data:
        result.append(recommender.estimate_preference(item[0], item[1]))
    return np.array(result)
コード例 #2
0
ファイル: Userbased_rec.py プロジェクト: aayush3011/CS412Yelp
from crab import datasets
from crab.models import MatrixPreferenceDataModel
from crab.metrics import pearson_correlation
from crab.similarities import UserSimilarity
from crab.recommenders.knn import UserBasedRecommender
from crab.metrics.classes import CfEvaluator

# load rating matrix
reviews = datasets.load_reviews()

# Build the model
model = MatrixPreferenceDataModel(reviews.data)

# Build the similarity
similarity = UserSimilarity(model, pearson_correlation, 100)

# Build the User based recommender
recommender = UserBasedRecommender(model, similarity, with_preference=True)

# Recommend items for the user 3
print recommender.recommend(3)

# evaluation
evaluator = CfEvaluator()
rmse = evaluator.evaluate(recommender, metric='rmse', permutation=False,  sampling_ratings=0.8)
print rmse
# rmse = evaluator.evaluate_on_split(recommender, metric='rmse', permutation=False,)
# print rmse
コード例 #3
0
ファイル: Userbased_rec.py プロジェクト: aayush3011/CS412Yelp
from crab import datasets
from crab.models import MatrixPreferenceDataModel
from crab.metrics import pearson_correlation
from crab.similarities import UserSimilarity
from crab.recommenders.knn import UserBasedRecommender
from crab.metrics.classes import CfEvaluator

# load rating matrix
reviews = datasets.load_reviews()

# Build the model
model = MatrixPreferenceDataModel(reviews.data)

# Build the similarity
similarity = UserSimilarity(model, pearson_correlation, 100)

# Build the User based recommender
recommender = UserBasedRecommender(model, similarity, with_preference=True)

# Recommend items for the user 3
print recommender.recommend(3)

# evaluation
evaluator = CfEvaluator()
rmse = evaluator.evaluate(recommender,
                          metric='rmse',
                          permutation=False,
                          sampling_ratings=0.8)
print rmse
# rmse = evaluator.evaluate_on_split(recommender, metric='rmse', permutation=False,)
# print rmse
コード例 #4
0
ファイル: recommender.py プロジェクト: dcycome/MyStudy
from scikits.crab.models import MatrixPreferenceDataModel
from scikits.crab import datasets
movies=datasets.load_sample_movies()
#Build the model
model = MatrixPreferenceDataModel(movies.data)

from scikits.crab.metrics import pearson_correlation
from scikits.crab.similarities import UserSimilarity
#Build the similarity
similarity = UserSimilarity(model, pearson_correlation)

from crab.recommenders.knn import UserBasedRecommender
#Build the User based recommender
recommender = UserBasedRecommender(model, similarity, with_preference=True)
#Recommend items for the user 5 (Toby)
print recommender.recommend(5)
コード例 #5
0
}

# Example 1: ------Collabrative Filtering Algorithm ---MatrixPreferenceDataModel
# test neighborhood strategy
print('Collabrative Filtering Algorithm ---MatrixPreferenceDataModel:')
model = MatrixPreferenceDataModel(movies)
strategy = AllNeighborsStrategy()
neighborhood_users = strategy.user_neighborhood('Lorena Abreu', model)
print('1: AllNeighborsStrategy Test - %s' % neighborhood_users)
print('1: total size - %i' % neighborhood_users.size)

# recommendation by user similarity

user_strategy = NearestNeighborsStrategy()
user_similarity = UserSimilarity(model, euclidean_distances)
user_recsys = UserBasedRecommender(model, user_similarity, user_strategy)
user_recomm_items = user_recsys.recommend('Leopoldo Pires')
print('2: recommendation by user similarity - %s' % user_recomm_items)
print('2: total size - %i' % len(user_recomm_items))

user_recomm_items = user_recsys.recommended_because('Leopoldo Pires',
                                                    'Snakes on a Plane', 2)
print('3: recommendate_because by user similarity - %s' % user_recomm_items)
print('3: total size - %i' % len(user_recomm_items))

# Recommendation by item similarity

items_strategy = ItemsNeighborhoodStrategy()
item_similarity = ItemSimilarity(model, euclidean_distances)
item_recsys = ItemBasedRecommender(model, item_similarity, items_strategy)
item_recomm_items = item_recsys.recommend('Leopoldo Pires')