准確率指標:
該類型的指標大部分是推薦算法優化的目標,衡量着推薦算法的優劣。
- 准確率。推薦給用戶的商品中,屬於測試集的比例,數學公式$P(L_{u})=\frac{L_{u}\bigcap B_{u}}{L_{u}}$ 。整個測試集的准確率為 $P_{L}=\frac{1}{n}\sum_{u\epsilon U}P(L_{u})$
- 召回率。測試集中有多少在用戶的推薦列表中。數學公式$R(L_{u})=\frac{L_{u}\bigcap B_{u}}{ B_{u}}$。整個測試集的召回率為$R_{L}=\frac{1}{n}\sum_{u\epsilon U}R(L_{u})$
- F1值。准確率和召回率的加權,數學公式 $F_{\beta }=\frac{(1+\beta ^{2})PR}{\beta ^{2}P+R}$。
- Ranking Score。數學公式 $R=\frac{1}{|E^{U}|}\sum_{ui\epsilon E^{U}}\frac{p_{ui}}{M-k_{u}}$ 其中$E^{U}$ 表示測試集中所有的邊的集合,如果用戶u對商品i在測試集中,則$E_{ui}=1$,$p_{ui}$表示商品i在用戶u的推薦列表中的位置,分母$M-k_{u}$表示用戶u的所有商品數目中除了用戶已經購買過的商品外的所有商品。該值越小,說明測試集中的商品越靠前。
- Hit ratio。數學公式 $HR@K=\frac{Number of Hits @K}{|GT|}$. 分母是所有的測試集合,分子是每個用戶前K個中屬於測試集合的個數的總和,該指標衡量是召回率,該指標越大越好。
- NDCG。數學定義 $NDCG@=Z_{k}\sum_{i=1}^{K}\frac{2^{r_{i}}-1}{log_{2}(i+1)}$。ri表示在第i個位置時的“等級關聯性”,一般可以用0/1處理,如果該位置的物品在測試集合中,則ri=1,否則為0。另外ZK是歸一化系數,表示后面的那一個累加求和公式的最好情況下的和的倒數,也就是ri=1都滿足的情況下的后面那一坨的總和,為了使得NDCG計算出來的數值i都在0-1之內。
- 交叉熵。這個指標作為其余機器學習的優化目標用的比較多,該指標在https://arxiv.org/pdf/1708.05031.pdf中首先被提出來。論文假設如果用戶u購買了物品i,則$y_{ui}=1$否則$y_{ui}=0$,則最終的機器學習的模型的優化目標為 $L=-\sum_{(u,i)\epsilon \mathbf{Y}\bigcup\mathbf{Y^{-}}}(y_{ui}log\hat{y}_{ui}+(1-y_{ui})log(1-\hat{y}_{ui}))$ 。
- MAE。該指標對適合對數據集擁有打分進行評估,例如豆瓣影評,上面存在對每個電影的1-5的打分。數學公式 $MAE=\frac{\sum_{(u,i)\epsilon E^{U}|y_{ui}-\hat{y}_{ui}}|}{|E^{U}|}$ 表示所有測試集中推薦預測的分和實際用戶打的分的差異,該值越小越好。
- RMSE。該指標同樣適用於對評分為數值打分的情景。數學公式 $RMSE=\sqrt{\frac{\sum_{(u,i)\epsilon E^{U}}(y_{ui}-\hat{y}_{ui})^{2}}{|E^{U}|}}$ 含義類似於MAE。
非准確率指標:
該類型的指標重載衡量推薦的結果的“個性化”“多樣性”“新穎性”等指標,推薦的的願景之一就是“千人千面”,推薦給每個人的商品都是只是他本人的興趣使然,抑或是根據本人興趣進行擴展的商品集合。至於為什么要進行興趣擴展,因為“過擬合”同樣是推薦系統面臨的重要挑戰之一,關於推薦系統的“過擬合”現象,在這里不做展開。
- Hamming distance. 數學公式 $H=\frac{1}{N(N-1)}\sum_{(i,j)\epsilon N,i\neq j}(1-\frac{c(i,j)}{K})$ 其中$c(i,j)$表示用戶 i,j 前K個推薦結果中有多少是相同的個數,N表示所有的用戶數目。海明距離能夠有效衡量兩個用戶推薦列表的差異,該值越大越說明用戶之間的推薦結果越不相同,差異性越大。
- Intrasimilarity ,內部相關性。數學公式 $I=\frac{1}{N}\sum_{u\epsilon U}(\frac{1}{K(K-1)\sum_{\alpha \neq \beta }s_{\alpha \beta }})$ 其中$s_{\alpha \beta }$表示商品$\alpha \beta $的相似度,相似的計算方式可以是Jaccard系數,皮爾森相關系數,向量余弦法等。對於用戶u的推薦列表,如果物品與物品之間的相似度越大,說明推薦給用戶的商品比較單一,推薦算法越發現不了新的物品;反之,如果該值越小,則推薦的物品越豐富,越有利於對用戶的興趣進行擴展。
- Popularity,流行度指標。數學公式 $N=\frac{1}{N}\sum_{\alpha \epsilon O_{R}^{u}}\frac{d_{\alpha }}{K}$ 其中$O_{R}^{u}$表示用戶u的前K個推薦物品的集合,$d_{\alpha }$表示$\alpha$的被多少用戶購買過,購買次數越多,則該商品越流行。該指標越大,說明推薦算法傾向於推薦“熱度”越大、越流行的商品;反之,則越傾向於推薦比較冷門的物品,越能反映出用戶的興趣。