8 h! t0 ~& D0 }先来看一下评价指标:% q2 ]3 V' T) _
由于标签数非常多,且GroundTruth又非常小,因此通常意义上的分类精度、召回(多标签分类用macro或者micro的acc或者recall)等指标不work。 ; t; r& n5 Q$ u( I0 k. x7 @这些评价指标通常考虑了head/tail labels,也就是高频标签和低频标签;以及reciprocal pairs(互惠对)去除?* p; E a5 p4 |7 w; w
互惠对似乎?是指彼此相关的标签对,比如针对一个数据点,如果预测了标签A,如果标签B和A相关,那可以自然预测B。 * `" {/ Y- p2 J+ K为了避免这种trival prediction, reciprocal pairs应该被去除。 ; q* X6 U# i3 T+ P5 w& }# T' K % b e2 x2 m) a' f ~) u% ](1) Top-k kk Performance: : O& O0 J0 U) d) v) w(Precision@ k ) P @ k : = 1 k ∑ l ∈ rank k ( y ^ ) y l \text{(Precision@$k$)}\text{P}@k := \frac{1}{k}\sum_{l \in \text{rank}_k (\hat{\mathbf{y}})} \mathbf{y}_l4 U# g {9 N. w! P
(Precision@k)P@k:= 1 H: m7 e, m3 l2 L1 [k ; a, e8 V6 o$ p u% \ }6 H1! {( x/ m/ b3 N5 b9 v k8 P
2 f. {0 F9 [. A' N5 g5 E
( X M7 t6 y. ?: Q% dl∈rank . P) S4 H9 [! Z4 Z- m) r
k / \8 l5 q6 M, J8 Q: f! L3 @+ i( s' G8 V1 K( [
( ! q- Y3 W/ v0 b% F6 o9 M% L2 c8 ?: Sy 5 h- q! N6 N2 b' o% X^# p7 `5 L# k6 W2 c! E
7 K) z6 n t2 y- P+ w# U3 O$ P )' s. E+ ?. D: G2 N
∑8 O0 b+ z1 Y8 P1 g2 \! \
, Q0 z- U4 b" J" }/ ` y % B5 i: T2 i# W a7 wl R( I3 i3 t, S2 Y1 i. a
) ^0 w% B- y& O, [4 s' G, H5 ?( J7 y8 u0 M5 S) e! M+ n; _
7 [2 e, E1 g5 X c& o y
(Discounted Cumulative Gain (贴现累积收益))DCG @ k : = ∑ l ∈ rank k ( y ^ ) y l log ( l + 1 ) \text{(Discounted Cumulative Gain (贴现累积收益))} \text{DCG}@k := \sum_{l \in \text{rank}_k(\hat{\mathbf{y}})} \frac{\mathbf{y}_l}{\log(l+1)} ?, O/ u8 i1 |, `3 x; W# Y
(Discounted Cumulative Gain (贴现累积收益))DCG@k:= ! U. U4 d" x) C% \' Q1 U& J# R' p) vl∈rank 3 Q- y6 L5 S2 A2 P6 ok ( t: y+ J4 s7 C' O( R( H( ^' k * m3 K! `0 Q' {/ c ( * ?% x$ n% M% ]1 r" ]+ v y# S
y 9 R- P4 s x7 D: A; {3 L" Q^ 1 K3 h8 Z2 |! O ~: F3 y0 t. t6 U* O7 Z/ ^, a! r
)- e2 k `. A# p2 G( I% M+ e
∑ 4 Z$ b; q/ g2 s' j: y) l h }7 H$ m; Y3 O
( A. L8 T) N, J3 klog(l+1); k' G* A' d1 _: U
y " L( M: Z8 W! {
l + b& c: v" H) ~- R. Q3 ?8 F f8 L* p: [
1 Y$ b" q8 J5 G- T# \9 J/ u- r
) K5 G6 G1 \1 ?6 g 3 A0 R1 S3 h1 p. i* a: b 6 E i5 i6 e+ {# a7 [4 t0 `(Normalized DCG)nDCG @ k : = DCG@ k ∑ l = 1 min ( k , ∣ ∣ y ∣ ∣ 0 ) 1 log ( l + 1 ) \text{(Normalized DCG)} \text{nDCG}@k := \frac{\text{DCG@$k$}}{\sum_{l=1}^{\min(k,||\mathbf{y}||_0)} \frac{1}{\log(l+1)}}0 S: d0 J1 z2 r' F. ]. _
(Normalized DCG)nDCG@k:= ; y2 {5 Q4 K! ?7 i∑ - F# p5 q# e5 `% @
l=1 ( [/ t5 ~& u) o( Imin(k,∣∣y∣∣ : j Y; p3 a3 S, n, V7 I! l
0$ O* m& |9 v: S) H
, C. t3 u, d; u' C" t5 M )* I5 e7 M! P& A; p5 ?
7 D' }: x5 k, I% Q * M# o6 Z1 |5 }: v# n" t5 hlog(l+1) 7 D1 w. R) j3 E: e4 O1 * J# O+ S' ~8 t( ^4 N/ s* r4 e1 p) ~5 g1 c
. z2 b% o+ o1 b% F; ^5 N Vrank k ( y ) \text{rank}_k(\mathbf{y})rank 6 K- `+ x: K, V3 E5 f( n8 O8 L
k2 h5 G9 d6 q5 E
! U i% s5 v4 W2 @ K (y)为逆序排列y \mathbf{y}y的前k个下标。Note: DCG公式里的分母实际上不是l,而是from 1 to k." Y+ m. U+ p" n" q# M
* }, m E7 [6 O% M0 r" P
靠后的标签按照对数比例地减小,说白了就是加权。至于为什么用log?两个事实:1. 平滑缩减; 2. Wang等人提供了理论支撑说明了log缩减方式的合理性。The authors show that for every pair of substantially different ranking functions, the nDCG can decide which one is better in a consistent manner. (看不懂,暂时不管)6 S+ \3 {9 B* D: X t3 x% d4 Y* ^
9 Y1 L7 m5 C0 S9 H(2) Top-k kk Propensity-score: : G }3 ~) ]: @+ l5 c) L, A; ], G) z1 Q: D& A2 x0 l
有些数据集包含一些频度很高的标签(通常称之为head labels),可以通过简单地重复预测头部标签来实现高的P @ k \text{P}@kP@k。Propensity-score可以检查这种微不足道的行为。# b8 {! U; Y2 a
( Propensity-score Precision ) PSP @ k : = 1 k ∑ l ∈ rank k ( y ^ ) y l p l (\text{Propensity-score Precision}) \text{ PSP}@k := \frac{1}{k} \sum_{l\in \text{rank}_k(\hat{\mathbf{y}})} \frac{\mathbf{y}_l}{p_l}1 |' j1 \5 R3 S5 d( ~2 z1 T( U
(Propensity-score Precision) PSP@k:= 2 W' [; z0 H" O9 B9 P6 ~8 B/ x
k " A' w, u* M) w1" ]/ P! o& v' s) y% h& O5 G
& t Y) r; q N S8 z5 Y3 e4 ~, O- Q$ D, F- G; y3 v
l∈rank : R1 ]- S% S/ ^4 ek 7 b% o5 b7 W( e# z - y3 @ a D$ F) }7 f! H ( 9 c+ k4 ^! k, w% J4 S9 t3 d
y : ~% }- B8 E! ?" s2 N^ . l7 t1 e2 w* |9 J0 q0 j A7 N# ^+ C: r) o- Z
) . k0 w6 T" o7 Z1 o3 a# T' Z& q X∑ + j8 B3 T( k( r5 X0 A1 L" ?- s' ?: T. A4 [
' ?' d' u( E! d! pp 7 [! d8 K7 R$ I/ u1 U& o
l 7 s+ l1 @3 U: Q& }( \0 ]/ c9 F 6 t" c9 H( m% o6 q. M- H ( J% z6 l9 h* j, e5 H% y1 ty 4 `" F1 F2 X: m, g
l, o# T7 f" C! F* r
2 s' X8 [ w6 U4 B8 K