先附上原文位址
這篇文章提出一個機器學習方法在資訊不充足的情況下做出決策
所謂資訊不足指的是,我們所收集到的資料是未經排序的,但是我們要給的決策建議是卻是排序的。舉例而言,收集到的資料只有某些人的某些特質和他們各自看了哪些電影(partial feedback),卻不知道這些人對這些電影的喜好程度,我們要如何給出一個排序過的推薦清單?
Loss function for partial information
這篇文章的作者發展的loss function:
la,c(Yt,^Yt)=a|Yt∖^Yt|+(1−a)∑i∈^Yt∖Ytc(ji,|^Yt|)
其中Yt是收集到的資料,^Yt是建議的決策,因此Yt是沒有排序的,而^Yt是有排序的
|Yt,^Yt|是指有多少Yt裡的element沒有出現在^Yt裡面,概念上有點像是Hamming loss function;而∑i∈^Yt∖Ytc(ji,|^Yt|)則是考量了排序,^Yt中,沒有出現在Yt的元素要是排得越前面,計分就越重
舉例來說,如果
Yt={1,3,8}
^Yt=(4,3,6)
則
|Yt,^Yt|=2 (Yt中的1, 3不屬於^Yt)
∑i∈^Yt∖Ytc(ji,|^Yt|)=3/3+1/3 (4 和 6的權重分別為3/3和1/3)
Multilabel classification
利用線性模型
Pt(y1,t,y2,t,...yk,t)=Pt(y1,t,y2,t,...yk,t|xt)
Pt(yi,t=1)=g(−uTi)g(uTi)+g(−uTi)
最佳化上述的loss function找最好的決策,上述的loss function也可以寫成
a∑Ki=1yi,t+(1−a)∑i∈^Yt(c(ji,|^Yt|)−(a1−a+c(ji,|^Yt|))yi,t)
由於∑Ki=1yi,t和^Yt基本上是無關的,所以在計算中只要最佳化
E[la,c(Yt,^Yt)]=(1−a)∑i∈^Yt(c(ji,|^Yt|)−(a1−a+c(ji,|^Yt|))pi,t)
就可以了
Others
作者也提出了另一個loss function:
lp−rank,t(Y,f)=∑i,j∈ˆYt:yi<yj({fi(xt)<fj(xt)}+12{fi(xt)=fj(xt)})+St|Yt∖ˆYt|
f是ranking function而{...}是indicator function,St則是ˆYt的長度
作為評估排序表現的依據