1.處理資料集:將使用者行為資料集按照均勻分布隨機分成m份,挑選乙份作為測試集,剩下的m-1份作為訓練集
import random2.評測指標def splitdata(data,m,k,seed):
test={}
train={}
random.seed(seed)
for user,item in data:
if random.randint(0,m)==k:
else:
return test,train
①準確率和召回率
③推薦的新穎度,用推薦列表中物品的平均流行度度量推薦結果的新穎都,如果推薦出的物品都很熱門,說明推薦的新穎度較低,否則說明推薦結果比較新穎
def popularity(train,test,n):在計算平均流行度時對每個物品發流行度取對數,這是因為武平的流行度分布滿足長尾分布,在取對數後,流行度的平均值更加穩定。item_popularity=dict()
for user,items in train.items():
for item in items.keys():
if item not in item_popularity:
item_popularity[item]=0
item_popularity[item]+=1
ret=0
n=0for user in train.keys():
ret+=math.log(1+item_popularity[item])
n+=1
ret/=n*1.0
return ret
推薦系統學習筆記之評測指標
調查問卷 問卷要盡可能詳細分出等級,不要只有滿意或者不滿意。2.的準確度 離線測驗 準確度是最重要的系統離線測試指標,將離線資料集劃分為訓練集和測試集,通過在訓練集上建立使用者的行為和興趣模型 使用者在測試集上的行為,並計算 行為和測試集上實際行為的重合度作為 準確度。2.1 評分 使用者對物品評分...
推薦系統之評測指標
前言 在接下來的一段時間,我將學習 推薦系統實踐 這本書,打算把每天學習的內容進行總結寫成部落格,今天是第一篇,主要內容是關於推薦系統的一些常見指標。1.推薦系統實驗方法 2.評測指標 2.1 使用者滿意度 2.2 準確度 準確度度量乙個推薦系統或者推薦演算法 使用者行為的能力,主要通過離線計算獲得...
推薦系統評測指標之RMSE MSE
coding utf 8 fromloadmovielensimport importmath 評測指標 rmse 均方根誤差 mae 平均絕對誤差 defgetrmse prefer1,prefer2 rmse 0 forkey1,valueinprefer1.items zonghe 0 迭代測...