Surprise是scikit系列中的一個。Surprise的User Guide有詳細的解釋和說明html
基於近鄰方法(協同過濾)/neighborhood methodsdom
矩陣分解方法/matrix factorization-based (SVD, PMF, SVD++, NMF)ide
下面介紹幾種算法ui
基礎算法:spa
1. random_pred.NormalPredictor.net
說明:Algorithm predicting a random rating based on the distribution of the training set, which is assumed to be normal.orm
意思是:算法基於訓練集的分佈預測隨機等級,假設該分佈爲正態分佈htm
2. baseline_only.BaselineOnlyblog
說明:Algorithm predicting the baseline estimate for given user and item.
意思是:算法預測給定用戶和項目的基線估計
協同過濾算法:
說明:A basic collaborative filtering algorithm.
意思是:一種基本的協同過濾算法
說明:A basic collaborative filtering algorithm, taking into account the mean ratings of each user.
意思是:一個基本的協同過濾算法,考慮到每一個用戶的平均評分
說明:A basic collaborative filtering algorithm taking into account a baseline rating.
意思是:一種基本的協同過濾算法考慮到基準評分
矩陣分解方法:
說明:The famous SVD algorithm, as popularized by Simon Funk during the Netflix Prize.
意思是:著名的SVD算法
說明:The SVD++ algorithm, an extension of SVD taking into account implicit ratings.
意思是:SVD++算法,SVD的一個擴展,考慮到隱式評級
說明:A collaborative filtering algorithm based on Non-negative Matrix Factorization.
意思是:一種基於非負矩陣的協同過濾算法
說明:A simple yet accurate collaborative filtering algorithm.
意思是:一種簡單而準確的協同過濾算法
10. co_clustering.CoClustering
說明:A collaborative filtering algorithm based on co-clustering.
意思是:一種基於共聚類的系統過濾算法
類似度度量標準
1. cosine
說明:Compute the cosine similarity between all pairs of users (or items).
意思是:計算全部用戶對(或物品)之間的類似度
2. msd
說明:Compute the Mean Squared Difference similarity between all pairs of users (or items).
意思是:計算全部用戶對(或物品)之間的平均平方差類似度
3. pearson
說明:Compute the Pearson correlation coefficient between all pairs of users (or items).
意思是:計算全部用戶對(或物品)之間的皮爾遜相關係數
說明:Compute the (shrunk) Pearson correlation coefficient between all pairs of users (or items) using baselines for centering instead of means.
意思是:計算全部用戶對(或物品)之間的皮爾遜相關係數(收縮),使用基線進行居中,而不是使用平均值
評估準則
1. rmse 最小均方根偏差
2. mae 平均絕對偏差
3. fcp 協調對的分數
參考文章:https://blog.csdn.net/mycafe_/article/details/79146764