推荐系统的框架模式大致是:多种召回策略(触发层),一种融合排序策略(排序层),也可认为两阶段排序模型[33]:

召回策略方法繁多(例如常见的协同过滤中的item-based,user-based,以及MF矩阵分解),最终的融合排序层中,如果采用point-wise[24]排序方法,最常用的是点击率(CTR)预估[1],作为排序依据。

点击率预估 = 在某种环境x下,某个推送y展现给某个用户z后,用户点击的概率r。广告中点击率预估计算出的是精准的点击概率,A点击率0.22% , B点击率0.34%等,需要结合其它因子(出价)用于排序;推荐算法对准确值没有明确要求,只需计算出一个最优的次序A>B>C即可[31]。点击率 = 浏览数/点击数(点击率越高,意味着在相同投入的情况下,收获了更多的用户注意力)。

本文介绍基于Logistic Regression和FTRL的点击率预估模型,其它更多方法请参见[10]。本文结构如下 Logistic Regression

Online Learning TG

FOBOS

RDA

FTL

FTRL

数据预处理 采样

特征工程

评估

代码实现

Logistic Regression

在图片广告(display advertising)中CTR的预测方法被广泛研究,逻辑回归(Logistic Regression,LR)因为在大规模系统中的实现简单和高性能,是工业界使用最为广泛的 CTR 预估模型。

如果用逻辑回归来建模点击率预测的问题,我们根据以下框架来进行:在t时刻,利用特征向量Xt来描述一个实例,同时给定模型权重向量Wt,预测p(t)=σ(Wt•Xt),其中σ = 1=(1 + exp(-a))为sigmoid函数。对应的log损失函数(logloss)为

通过上式可以很容易计算出loss function关于W的梯度

LR 模型简单,训练时便于并行化,在预测时只需要对特征进行线性加权,所以性能比较好,往往适合处理海量 id 类特征,用 id 类特征有一个很重要的好处,就是防止信息损失(相对于范化的 CTR 特征),对于头部资源会有更细致的描述。

LR 的缺点也很明显,首先对连续特征的处理需要先进行离散化,人工分桶的方式会引入多种问题。另外 LR 需要进行人工特征组合,这就需要开发者有非常丰富的领域经验,才能不走弯路。这样的模型迁移起来比较困难,换一个领域又需要重新进行大量的特征工程[10]。

Online Learning

无论是线性回归(Linear Regression)、逻辑回归(Logistic Regression)、支持向量机(SVM)、深度学习(Deep Learning)中,最优化求解都是基本的步骤。常见的梯度下降、牛顿法、拟牛顿法等属于批量处理的方法(Batch),每次更新都需要对已经训练过的样本重新训练一遍。而当我们面对高维高数据量的时候,批量处理的方式就显得笨重和不够高效,因此需要在线学习(Online Learning)的方法来解决相同的问题[7]。

在线学习算法的特点是:每来一个训练样本,就用该样本产生的loss和梯度对模型迭代一次,一个一个数据地进行训练,因此可以处理大数据量训练和在线训练。在进行大规模的模型训练时,线性模型的Online Learning算法有很多优势。尽管特征向量可能有多大上亿的维度,但每个样本可能只有几百个维度有非零值。因为每个样本只需要考虑一次,这种特性允许从硬盘或者网络流式读取数据来进行有效训练[4]。Online Learning能够根据线上反馈数据,实时快速地进行模型调整,使得模型及时反映线上的变化,提高线上预测的准确率[3]。

在Batch模式下,L1正则化通常产生更加稀疏(Sparse)的模型,系数

python广告点击率预测_推荐系统中的点击率预估 – Advertising Recommendation相关推荐

  1. 微信朋友圈python广告投了多少钱_朋友圈广告的评论区,当代人的灌水BBS

    记者 | 马越 编辑 | 牙韩翔 1 如果你最近几天都忍住没发过朋友圈,也没给任何人点赞评论,却冷不防多了个小红点提醒--没错,八成是又有人收到Python的广告了. 6张不明所以的图片,加上20个字 ...

  2. python灰色预测模型步骤人口预测_超级干货:一文读懂灰色预测模型

    灰色预测模型可针对数量非常少(比如仅4个),数据完整性和可靠性较低的数据序列进行有效预测,其利用微分方程来充分挖掘数据的本质,建模所需信息少,精度较高,运算简便,易于检验,也不用考虑分布规律或变化趋势 ...

  3. 抖音python广告用的什么音乐_抖音上那些魔性洗脑神曲音乐,我用Python教你一次性下载...

    抖音捧红了很多人,也让很多本不怎么让大家熟知的歌曲.BGM,经过翻唱.混剪与视频搭配,从而传播大街小巷.什么"若不是你,突然闯进我心里-"亦或者"也许未来遥远在光年之外, ...

  4. 随机生成元素升序向量_推荐系统中用户向量的表示学习

    随着深度学习在推荐系统中的应用,embedding成为绕不开的话题.无论是召回还是排序阶段,均应用到embedding技术.目前已经有很多文章在讨论item的embedding如何生成,本文希望讨论u ...

  5. vue点击网页全屏_vue中实现点击变成全屏的多种方法

    项目中有点击按钮实现全屏功能 方式一:js实现全屏 全屏 data: data() { return { fullscreen: false }; }, methods: screen() { let ...

  6. 广告点击率预测_精品案例|在线广告点击率预测

    目录 数据说明 数据查看 数据预处理   3.1 处理非数值特征 初步建立模型查看效果 探索性分析和特征工程   5.1 特征分布可视化   5.2 处理取值不均匀特征   5.3 特征相关性 模型训 ...

  7. 广告点击率预测_用于广告点击率预测的逻辑回归你会了吗?

    随着计算能力的大幅提升,AI的热潮只涨不跌,监督学习.无监督学习耳熟能详,一时间很多人都投身ML.DL,形形色色.我之前也是学过一点相关算法,蓝皮书和Ng大佬的课程也假装刷过,回归.分类.神经网络也都 ...

  8. python 广告联盟跳转链接_抖音视频加入广告跳转链接怎么做?

    抖音信息流广告是指将广告主投放的视频广告在抖音推荐频道的信息流中进行展示,同时支持从视频广告点击跳转至广告主设置的落地页,帮助广告主在抖音实现营销推广的目的.以下我们就来介绍下抖音视频加入广告跳转链接 ...

  9. python广告刷量_Python一日一练05----怒刷点击量

    功能 自己主动获取CSDN文章列表,并对每篇文章添加点击量. 源代码 import urllib.request import re import time import random from bs ...

最新文章

  1. 创建一个好的Sprint Backlog 的8个小贴士
  2. 苹果如何使用神经网络在点云中做对象检测
  3. 深度学习模型之各种caffe版本(Linux和windows)的网址和配置
  4. 使用java spring开发ckeditor的文件上传功能(转)
  5. 基于C++和 Opencv1.0实现 二维平面多点拟合直线
  6. 窗口管理 (待完善...)
  7. mysql 从库 问题_一篇文章帮你解决Mysql 中主从库不同步的问题
  8. 存储过程测试dbms、lpad与chr(10)
  9. python用circle画多边形_pythonopencv圆、椭圆与任意多边形的绘制
  10. IO流的应用_Copy文件
  11. 使用Python处理声音文件(一):让歌曲重复两次
  12. hash算法在日常活动中的应用
  13. (HDOJ 2034)人见人爱A-B
  14. BZOJ4435 : [Cerc2015]Juice Junctions
  15. 【破损识别】基于matlab GUI机器视觉+SVM玉米种子破损识别(带面板)【含Matlab源码 1651期】
  16. C语言——32个关键字
  17. 多窗直播 截屏录制——UC问鼎全球首款直播浏览器
  18. 软件测试固态硬盘健康状态良好,别被忽悠!3分钟教你搞懂SSD性能测试各项数据!...
  19. java 如何调用数组_Java中数组的使用
  20. python爬取拼多多数据 verifyauthtoken_拼多多TOKEN授权

热门文章

  1. air.tv.douyu.android,斗鱼(air.tv.douyu.android) - 7.0.6.1 - 应用 - 酷安
  2. 微控制器编程技术c语言,8位单片机C语言编程:基于PIC16(用c语言对pic16微控制器进行编程的实用指导)...
  3. 蓝桥杯,历届试题,九宫重排
  4. WWDC20 苹果发布会
  5. 充电系列-1-msm8909充电驱动常见修改
  6. instagram分享_存档instagram帐户正在教被忘记的历史
  7. 评测i9 13900hx和​​R9 7940HS选哪个 酷睿i913900hx和​​锐龙R97940HS对比
  8. Tree03-TreeAndTreeMethod
  9. 配色工具KULER的使用
  10. 【奥黛丽赫本】女神一样的优雅