【Recommend System】----CTR 建模

CTR:

Click-Through Rate(点击率)
总的来说是条件概率。
条件是事件的feature,概率值是在某一事件feature的条件下,用户对某一事件点击的概率。

目的:

根据已有的点击率数据推测用户对某一事件的点击可能性。
微观上,CTR是无法被准确预测的,因为已有数据始终是有限的,即使想利用大数定律,也会因为不可能穷尽所有case的原因,而得不到CTR精准的预测。

解决方案:

加入适当假设,即添加一些合适的限制条件。使得模型相对可控。
CTR建模的两层简化其实就是对整个过程的划分,其中一个过程是某时某刻某地出现了某个广告,基于这四个“某”可以得出一个模型,预测一下此时的点击概率;另一个过程就是基于用户的行为来预测在这个点击率之下用户可能实际点击的概率。这两个过程得到的概率理论上是独立的。

CTR建模的两种过程:

第一:基于事件本身的feature建模。

优点:更客观。
缺点:可能导致仅仅根据广告的信息来预测,忽略了人为因素,导致实现不了个性化,因为个性化的着力点是人。

第二:基于用户feature建模。

优点:更加个性化。
缺点:过拟合可能导致“一人一世界”的现象,使得连一点点普遍性都没有,不能适用于一定人群,只能适用于某个人。实际意义不大。

CTR模型的性能指标:序的准确性

通过收集大量的展现-点击样本构造{(x,y)}数据集即可训练一个CTR模型。

矛盾样本现象

现象:相同的x对应了不同的y,即同一个用户对相同的事件的点击率不同,例如,某一用户同一时间刷到了两个同样的视频,第一次刷到的时候点击了,第二次没点击。
原因:在CTR建模的时候,针对单一事件本身的feature进行建模,忽略了两个事件的关联性,默认事件都是独立的。其实这是不合理不科学的。因为我们的数据集特征的不完整性,导致了训练集是有噪音的。其实在传统的ML中,是允许一定的噪音的,有个噪音标准叫做贝叶斯错误率(Bayes Error Rate)。
p ( y = 1 ∣ x ) = f ( x )   . p(y=1|x) = f(x)\,. p(y=1∣x)=f(x).
这个模型中x的设计(feature的选取)决定了简化问题的能力ceiling,f(x)的设计决定了逼近前面那个ceiling的能力,即达到理论最佳值的能力。

理论AUC上界

AUC描述了样本中正样本的占比情况。(0≤AUC≤1,其中0和1都是非常不理想的。)
如果AUC过大,则意味着训练集中的负样本太少,泛化的能力很小。

CTR模型的性能指标:值的准确性

对于一个样本会有多个特征,选取不同特征作为坐标系坐标可以构成不同的坐标系,例如FS坐标系和AD坐标系。
由于坐标系选取的不同,使得真正的值的准确性很难实现,只能尽可能逼近。

你可能感兴趣的:(机器学习,人工智能,算法)