ランク学習の評価指標 - HigashiKed/patent_prior-art_search GitHub Wiki

https://www.slideshare.net/tkng/confidence-weighted
https://yukoishizaki.hatenablog.com/entry/2019/11/10/183615

(githubに数式挿入するリンクhttps://tex-image-link-generator.herokuapp.com/)

AP (Average Precision)

その順位までの適合率を、適合したデータに限定して平均したもの。
\begin{align*} AP &= \frac{1}{R} \sum_{r=1}^{n} Prec(r)I(r) \end{align*}
R:適合データの数
Prec(r):その位置rでの適合率
I(r):適合していれば1を返して、適合していなければ0を返す

MAP (Mean Average Precision)

APの平均。ユーザに対する推薦であればユーザ数で平均をとる。
\begin{align*} MAP &= \frac{1}{N} \sum_{i=1}^{N} AP_i \end{align*}
AP@nやMAP@nなど、@nがつく場合は、nまでの順位のみに限定する。

nDCG

正規化割引累積利得(nDCG)について記載する。 まず、割引累積利得(DCG)を以下のようにする。
  \begin{align*} DCG_i &= p_i(1)+\sum_{k=2}^{n_i} \frac{p_i(k)}{\log_2(k)} \end{align*}
\begin{align*} p_i(k) \end{align*} : 順位 k のアイテムにユーザ i が評価したレイティング。正なら1, 負なら0。
\begin{align*} n_i \end{align*} : ユーザ i が評価したアイテムの数。
\begin{align*} n_i^+ \end{align*} : ユーザ i が正のレイティングとして評価したアイテムの数。
nDCGはユーザ i における最大DCG値によって正規化されたDCG。
\begin{align*} nDCG_i &= \frac{DCG_i}{1+\sum_{k=2}^{n_i^+}\frac{1}{\log_2(k)} } \end{align*}