crab推薦系統示例

2021-07-29 17:33:31 字數 2604 閱讀 5449

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以來 主要...