def
base_demo
():# 基礎資料-測試資料
from scikits.crab import datasets
movies = datasets.load_sample_movies()
print movies.data
#print movies.user_ids
#print movies.item_ids
#build the model
from scikits.crab.models import matrixpreferencedatamodel
model = matrixpreferencedatamodel(movies.data)
#build the similarity
# 選用演算法 pearson_correlation
from scikits.crab.metrics import pearson_correlation
from scikits.crab.similarities import usersimilarity
similarity = usersimilarity(model, pearson_correlation)
# 選擇 基於user的推薦
from scikits.crab.recommenders.knn import userbasedrecommender
recommender = userbasedrecommender(model, similarity, with_preference=true)
print recommender.recommend(5) # 輸出個結果看看效果 recommend items for the user 5 (toby)
# 選擇 基於item 的推薦(同樣的基礎資料,選擇角度不同)
from scikits.crab.recommenders.knn import itembasedrecommender
recommender = itembasedrecommender(model, similarity, with_preference=true)
print recommender.recommend(5) # 輸出個結果看看效果 recommend items for the user 5 (toby)
defitembase_demo
():from scikits.crab.models.classes import matrixpreferencedatamodel
from scikits.crab.recommenders.knn.classes import itembasedrecommender
from scikits.crab.similarities.basic_similarities import itemsimilarity
from scikits.crab.recommenders.knn.item_strategies import itemsneighborhoodstrategy
from scikits.crab.metrics.pairwise import euclidean_distances
movies = ,'paola pow':,'leopoldo pires':,'lorena abreu':,'steve gates':,'sheldom':,'penny frewman':, 'maria gabriela': {}}
model = matrixpreferencedatamodel(movies)
items_strategy = itemsneighborhoodstrategy()
similarity = itemsimilarity(model, euclidean_distances)
recsys = itembasedrecommender(model, similarity, items_strategy)
print recsys.most_similar_items('lady in the water')
#return the recommendations for the given user.
print recsys.recommend('leopoldo pires')
#return the 2 explanations for the given recommendation.
print recsys.recommended_because('leopoldo pires', 'just my luck', 2)
#return the similar recommends
print recsys.most_similar_items('lady in the water')
#估算評分
print recsys.estimate_preference('leopoldo pires','lady in the water')
base_demo()
itembase_demo() ##(注:此處**來自深藍蘋果的部落格:
Crab,一款python上優秀的推薦系統引擎
今天,逛網頁發現了一款推薦系統的引擎 crab。它是python的乙個開源包,整個推薦系統的構架已經寫好,其中的推薦演算法可以自己定義,在此構架上進行推薦演算法的研究可以提高效率。1 crab的安裝 1 在安裝之前,需要一些python包和其他一些,這些是numpy,scipy,setuptools...
推薦系統架構 推薦系統(1) 業界推薦系統架構
1.1業界主流推薦系統架構 業界推薦系統通用架構 1.2使用者本身資料 1.3物品本身資料 1.4使用者行為資料 2.1基於離線訓練的推薦系統架構設計 常用演算法 邏輯回歸 logistics regression 梯度提公升決策樹 gbdt 和因式分解 fm 架構設計 2.2面向深度學習的推薦系統...
推薦系統(1) 推薦系統概述
推薦系統是主動從大量資訊中找到使用者可能感興趣的資訊的工具。推薦系統的核心問題是如何實現推薦個性化 如何向使用者推薦匹配度高的產品 商品 或專案,本質是通過一定的方式將使用者和專案聯絡起來。自從xerox palo alto研究中心於1992年研發出了基於協同過濾的實驗系統tapestry以來 主要...