Watch Time推導
論文中排序模型的訓練目標爲視頻點擊率,記爲:
p=P(y=1∣x)=1+e−θTx1
模型上線後的預測值計算方法卻是:
predict=eθTx
其中θ表示模型的參數,x表示模型的特徵(θ,x實際是模型最後一層隱層參數和輸入,當模型只有一層隱層時候,則是模型的全部參數和樣本特徵)。
簡單解釋一下預測值採用這種計算方式的原因。
- 首先Logit迴歸,是對樣本正負概率比值Odd的對數值用線性迴歸模型建模:
log1−pp=θTx
得出
predict=eθTx=1−pp
可見Youtubed模型的在預測階段輸出的值實際上是正負概率比值,也就是所謂的Odd值。
目前爲止可得出第一個結論,排序模型預測值爲Odd:
predict=Odd (1)
- 第二,YouTube訓練過程採用了播放時長做加權,也就是所謂的Weighted Logistic,模型訓練的損失函數爲:
Loss=−Time∗label∗logp−(1−label)log(1−p)
這種方式,相當於將當前正樣本複製了Time次。
我們以具體的一個樣本爲例,例如樣本特徵爲x=X,其中X表示某個具有具體取值的向量,我們將此類樣本的總體記爲I={(y,x)∣x=X}, 正例總體記爲Ipositive={(y,x)∣y=1,x=X}, 負例的總體Inegative={(y,x)∣y=0,x=X}。
將訓練樣本中出現的此類樣本的集合,也就是採樣集合,記爲S={(y,x)∣x=X}。正樣本採樣集合記爲Spositive={(y,x)∣y=1,x=X},集合的大小記爲m=∣Spositive∣, 負樣本採樣集合記爲Snegative={(y,x)∣y=0,x=X},結合的大小記爲n=∣Snegative∣。
類似地,將正樣本複製Time次後此類樣本的採樣集合記爲S′={(y,x)∣x=X},正樣本採樣集合記爲Spositive′={(y,x)∣y=1,x=X},負樣本集合記爲Snegative′={(y,x)∣y=10,x=X}
將複製後採樣集合對用的總體集合記爲I′={(y,x)∣x=X},正樣本總體記爲Ipositive′={(y,x)∣y=1,x=X},負樣本總體記爲Inegative′={(y,x)∣y=0,x=X}。
假設訓練數據採樣比較充分,也就是滿足$S\sim I, \space S’\sim I’。 $則有以下推導:
OddI=∣Inegative∣∣Ipositive∣≈OddS=∣Snegative∣∣Spositive∣=nm
OddI′=Inegative′Ipositive′≈OddS′∣Snegative′∣∣Spositive′∣=∣Snegative∣Time∗∣Spositive∣=Timenm=Timem+n−mm=Time1−αα,α=m+nm
α=m+nm=P(y=1∣x∈S)≈P(y=1∣x∈I)=p
目前爲止,結合結論(1)可得出第二結論,Time Weighted Logitic模型預測目標爲:
predict=OddI′=Time1−pp,p=P(y=1∣x∈I) (2)
Time1−pp=Time∗p∗(1+p+p2+p3+...)=Time∗(p+p2+...)≈Time∗p,p∈(0,1)
可以得出最後的結論:
predict≈Time∗p=Time∗P(y=1∣x∈I)=E[Time;x∈I] (3)
其中p=P(y=1∣x∈I), 也就是說預測值爲總體集合I上的播放時長的期望。