算法

1.jpg

导语

在各种推荐场景下,ctr预估使用最多的模型是LR(Logisitc Regression),简单且强大。而随着基于boosting思想的树算法(如GBDT、xgboost)在kaggle竞赛上大放异彩,这些树模型也开始被用于ctr预估中。两种模型的自身原理决定了两者各有优缺点,于是将两者进行融合的想法也油然而生,Facebook早在2014年就已提出并验证了该想法的有效性。半年前,在离线pipeline不够成熟完善的情况下,为快速上线并取得预期效果,我们决定使用不需要复杂特征工程就可以取得较好效果的xgboost模型。几个月的时间过去,xgboost模型经过了多轮迭代已优化到较好的程度即将到达瓶颈。与此同时pipeline也在这段时间内不断完善,其中为LR准备的特征离散化和归一化也已完成。万事俱备,只欠“级联”。

- Read More -
架构

推荐系统架构图.jpg

虽然我读研的学术方向是数据挖掘,细分到了粗糙集中基于辨析矩阵的属性约简算法,也可以认为是特征降维。但是自己在实习期间的工程实践是个性化推荐,所以自己的毕业开题选定了两者的结合。下图是我准备毕设开题答辩的时候画的推荐系统架构图,忙着写毕业论文,后续虽然加了点内容,但图懒得改了= =

- Read More -
特征

本文主要针对ctr预估场景下,对这次新开发的用户画像做一个阶段性的总结。整个过程主要包括特征、架构流程的设计和工程实现。新版用户画像特征维度从8维上涨到179维,上线已将近一个月后,用户覆盖率从原来的40-50%提升至75%-85%左右。其中长期用户画像中的一些需要时间累积的特征,随着时间推移表现越来越好。离线AUC和PR最近一段时间内也在稳步提升。

入司半年,最近能够独立开发用户画像部分,自己也感受到了成长和收获,这要感激导师alsaceliu的悉心培养。

- Read More -
架构

1.png

数据与特征决定效果上限,算法模型决定逼近该上限的程度。特征工程的重要程度可见一斑。pipeline作为推荐系统离线层核心基础服务,可以整合所有数据进行统一清洗、过滤,整合,并对数据提取、计算、评估特征,为算法提供数据和特征支持。可以说pipeline在推荐系统架构中扮演“地基”的角色。考虑到保护公司隐私,本文的很多trick和详细内容都已删除或简化。

- Read More -
This is just a placeholder img.