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上的播放时长的期望。