Youtube時長預估

Watch Time推導

論文中排序模型的訓練目標爲視頻點擊率,記爲:

p=P(y=1x)=11+eθTxp = P(y=1|x)=\frac{1}{1+e^{-\theta^Tx}}

模型上線後的預測值計算方法卻是:

predict=eθTxpredict = e^{\theta^Tx}

其中θ\theta表示模型的參數,xx表示模型的特徵(θ,x\theta,x實際是模型最後一層隱層參數和輸入,當模型只有一層隱層時候,則是模型的全部參數和樣本特徵)。

簡單解釋一下預測值採用這種計算方式的原因。

  • 首先Logit迴歸,是對樣本正負概率比值OddOdd的對數值用線性迴歸模型建模:

logp1p=θTxlog\frac{p}{1-p}=\theta^Tx

得出

predict=eθTx=p1ppredict=e^{\theta^Tx}=\frac{p}{1-p}

可見Youtubed模型的在預測階段輸出的值實際上是正負概率比值,也就是所謂的Odd值。

目前爲止可得出第一個結論,排序模型預測值爲Odd:

predict=Odd        (1)predict=Odd \space\space\space\space\space\space\space\space(1)

  • 第二,YouTube訓練過程採用了播放時長做加權,也就是所謂的Weighted Logistic,模型訓練的損失函數爲:

Loss=Timelabellogp(1label)log(1p)Loss=-Time*label*logp - (1-label)log(1-p)

這種方式,相當於將當前正樣本複製了Time次。

我們以具體的一個樣本爲例,例如樣本特徵爲x=Xx=X,其中XX表示某個具有具體取值的向量,我們將此類樣本的總體記爲I={(y,x)x=X}I=\{(y, x) | x=X\}, 正例總體記爲Ipositive={(y,x)y=1,x=X}I_{positive}=\{(y, x) |y=1, x=X\}, 負例的總體Inegative={(y,x)y=0,x=X}I_{negative}=\{(y, x) |y=0, x=X\}

將訓練樣本中出現的此類樣本的集合,也就是採樣集合,記爲S={(y,x)x=X}S=\{(y, x)| x = X\}。正樣本採樣集合記爲Spositive={(y,x)y=1,x=X}S_{positive}=\{(y, x)|y=1,x=X\},集合的大小記爲m=Spositivem=|S_{positive}|, 負樣本採樣集合記爲Snegative={(y,x)y=0,x=X}S_{negative}=\{(y,x)|y=0,x=X\},結合的大小記爲n=Snegativen=|S_{negative}|

類似地,將正樣本複製Time次後此類樣本的採樣集合記爲S={(y,x)x=X}S'=\{(y,x)|x=X\},正樣本採樣集合記爲Spositive={(y,x)y=1,x=X}S'_{positive}=\{(y,x)|y=1,x=X\},負樣本集合記爲Snegative={(y,x)y=10,x=X}S'_{negative}=\{(y,x)|y=10,x=X\}

將複製後採樣集合對用的總體集合記爲I={(y,x)x=X}I'=\{(y,x)|x=X\},正樣本總體記爲Ipositive={(y,x)y=1,x=X}I'_{positive}=\{(y,x)|y=1, x=X\},負樣本總體記爲Inegative={(y,x)y=0,x=X}I'_{negative}=\{(y,x)|y=0,x=X\}

假設訓練數據採樣比較充分,也就是滿足$S\sim I, \space S’\sim I’。 $則有以下推導:

OddI=IpositiveInegativeOddS=SpositiveSnegative=mnOdd_I=\frac{|I_{positive}|}{|I_{negative}|}\approx Odd_S=\frac{|S_{positive}|}{|S_{negative}|}=\frac{m}{n}

OddI=IpositiveInegativeOddSSpositiveSnegative=TimeSpositiveSnegative=Timemn=Timemm+nm=Timeα1α,α=mm+nOdd_{I'}=\frac{I'_{positive}}{I'_{negative}}\approx Odd_{S'}\frac{|S'_{positive}|}{|S'_{negative}|}=\frac{Time * |S_{positive}|}{|S_{negative}|}=Time\frac{m}{n}=Time\frac{m}{m+n-m}=Time\frac{\alpha}{1-\alpha},\alpha=\frac{m}{m+n}

α=mm+n=P(y=1xS)P(y=1xI)=p\alpha=\frac{m}{m+n}=P(y=1|x\in S)\approx P(y=1|x\in I)=p

目前爲止,結合結論(1)可得出第二結論,Time Weighted Logitic模型預測目標爲:

predict=OddI=Timep1p,p=P(y=1xI)    (2)predict=Odd_{I'}=Time\frac{p}{1-p},p=P(y=1|x\in I)\space\space\space\space(2)

  • 第三,繼續推導,有泰勒展開式:

Timep1p=Timep(1+p+p2+p3+...)=Time(p+p2+...)Timep,p(0,1)Time\frac{p}{1-p}=Time * p *(1+p+p^2+p^3+...)=Time*(p + p^2 + ...)\approx Time*p, p\in (0,1)

可以得出最後的結論:

predictTimep=TimeP(y=1xI)=E[Time;xI]    (3)predict\approx Time*p=Time*P(y=1|x\in I)=E[Time; x\in I]\space\space\space\space(3)

其中p=P(y=1xI)p=P(y=1|x\in I), 也就是說預測值爲總體集合II上的播放時長的期望。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章