Lookalike主要用于广告或者推荐系统中,找到与种子用户相似的人群。常用的算法应该包括协同过滤、基于标签的相似度计算,还有一些机器学习模型,比如逻辑回归、随机森林,以及深度学习的模型,比如DNN或者Embedding方法。
这里简单介绍一下 Lookalike 人群扩展(相似人群扩展)中常用算法模型的解析,涵盖原理、数学公式、实现步骤、优缺点及适用场景。
1. 基于标签的相似度匹配
原理
通过用户标签(兴趣、行为、人口属性等)计算相似度,直接筛选与种子用户最相似的用户。
核心公式:
-
Jaccard 相似度:
Jaccard(A,B)=∣A∩B∣∣A∪B∣Jaccard(A,B)=∣A∪B∣∣A∩B∣ -
Cosine 相似度:
Cosine(A,B)=∑i=1nAi⋅Bi∑i=1nAi2⋅∑i=1nBi2Cosine(A,B)=∑i=1nAi2⋅∑i=1nBi2∑i=1nAi⋅Bi
实现步骤
-
将用户标签转换为二值化或数值化向量(如兴趣标签的独热编码)。
-
选择种子用户作为基准向量。
-
计算所有用户与种子用户的相似度。
-
按相似度排序,选择 Top-K 用户。
优缺点
-
优点:
-
简单快速,适合冷启动场景。
-
可解释性强,直接基于业务标签筛选。
-
-
缺点:
-
依赖标签质量,稀疏标签效果差。
-
无法捕捉隐式特征(如行为序列的时序关系)。
-
适用场景
-
标签体系完善的小规模数据(如广告定向投放)。
2. 逻辑回归(Logistic Regression)
原理
将种子用户作为正样本,其他用户作为负样本,训练二分类模型预测用户属于种子人群的概率。
核心公式:
P(y=1∣x)=11+e−(wTx+b)P(y=1∣x)=1+e−(wTx+b)1
其中 ww 为权重向量,xx 为用户特征,bb 为偏置项。
实现步骤
-
构建特征矩阵 XX(用户特征如年龄、点击行为、购买历史)。
-
定义标签 yy(种子用户为1,其他为0)。
-
训练逻辑回归模型,输出用户属于种子人群的概率。
-
按概率排序扩展人群。
优缺点
-
优点:
-
可处理数值型和类别型特征。
-
输出概率直接用于排序,解释性强。
-
-
缺点:
-
依赖特征工程,对非线性关系捕捉能力弱。
-
正负样本不均衡时需处理(如欠采样或调整权重)。
-
适用场景
-
特征维度适中、线性可分性较强的数据(如电商用户扩展)。
3. 协同过滤(User-CF)
原理
基于用户-物品交互矩阵(如点击、购买),计算用户之间的行为相似性。
核心公式:
-
用户相似度计算:
Similarity(u,v)=∑i∈Iu∩Ivrui⋅rvi∑i∈Iurui2⋅∑i∈Ivrvi2Similarity(u,v)=∑i∈Iurui2⋅∑i∈Ivrvi2∑i∈Iu∩Ivrui⋅rvi其中 IuIu 为用户 uu 交互的物品集合,ruirui 为用户 uu 对物品 ii 的评分。
实现步骤
-
构建用户-物品交互矩阵(如点击次数、购买金额)。
-
计算用户之间的相似度(余弦相似度或皮尔逊相关系数)。
-
找到与种子用户最相似的用户群体。
优缺点
-
优点:
-
无需显式特征,依赖行为数据即可。
-
适合用户行为稀疏但物品丰富的场景(如视频推荐)。
-
-
缺点:
-
冷启动问题(新用户或新物品无法计算相似度)。
-
计算复杂度高(用户数大时需近似计算)。
-
适用场景
-
用户行为数据丰富、物品维度较高的场景(如社交媒体推荐)。
4. 图嵌入(Node2Vec/GraphSAGE)
原理
将用户关系建模为图(节点表示用户,边表示社交关系或共同行为),通过图嵌入学习用户的低维向量表示。
核心公式(Node2Vec):
通过随机游走生成节点序列,使用 Skip-Gram 模型优化:
maxf∑u∈VlogP(N(u)∣f(u))fmaxu∈V∑logP(N(u)∣f(u))
其中 N(u)N(u) 为节点 uu 的邻居,f(u)f(u) 为节点 uu 的嵌入向量。
实现步骤
-
构建用户关系图(如社交网络、共同购买行为)。
-
使用 Node2Vec 或 GraphSAGE 生成用户嵌入向量。
-
计算种子用户与其他用户的嵌入相似度(如余弦相似度)。
优缺点
-
优点:
-
捕捉用户之间的复杂关系(如二阶邻居)。
-
可结合异构信息(用户-物品-上下文)。
-
-
缺点:
-
图构建依赖先验知识,数据稀疏时效果差。
-
训练成本高,需处理大规模图数据。
-
适用场景
-
用户关系复杂、需捕捉高阶相似性的场景(如社交网络好友推荐)。
5. 深度学习方法(DNN/Transformer)
原理
使用深度神经网络(如双塔模型、Transformer)学习用户表征,通过向量相似度扩展人群。
双塔模型架构:
-
用户塔:输入用户特征(如行为序列、统计特征)。
-
物品塔:输入物品特征(可选)。
-
损失函数:对比损失(如 Triplet Loss)或余弦相似度损失。
实现步骤
-
构建用户特征(如历史行为序列、统计特征)。
-
训练双塔模型生成用户向量。
-
计算种子用户向量与其他用户的相似度。
优缺点
-
优点:
-
支持复杂特征(如文本、图像、序列)。
-
可端到端优化,适合海量数据。
-
-
缺点:
-
需要大量训练数据和计算资源。
-
模型解释性差,调参复杂。
-
适用场景
-
多模态特征、海量用户数据的场景(如短视频平台用户扩展)。
6. 梯度提升树(GBDT)
原理
使用 XGBoost/LightGBM 等梯度提升树模型,训练二分类模型预测用户属于种子人群的概率。
核心公式(LightGBM 目标函数):
L=∑i=1nl(yi,y^i)+∑k=1KΩ(fk)L=i=1∑nl(yi,y^i)+k=1∑KΩ(fk)
其中 ll 为损失函数(如对数损失),Ω(fk)Ω(fk) 为树的复杂度正则项。
实现步骤
-
构建特征工程(如统计特征、交叉特征)。
-
训练 GBDT 模型预测用户概率。
-
按概率排序选择 Top-K 用户。
优缺点
-
优点:
-
自动处理特征缺失和非线性关系。
-
训练速度快,支持并行化。
-
-
缺点:
-
对高维稀疏特征(如文本)效果差。
-
模型复杂度高,需防止过拟合。
-
适用场景
-
结构化特征丰富、需高效处理中等规模数据的场景(如金融风控用户扩展)。
7.各模型适用场景对比
模型 | 适用数据规模 | 特征类型 | 计算效率 | 可解释性 | 典型场景 |
---|---|---|---|---|---|
标签相似度 | 小规模 | 标签 | 高 | 高 | 广告定向 |
逻辑回归 | 中等 | 结构化 | 高 | 高 | 电商用户扩展 |
协同过滤 | 中等 | 行为交互 | 中 | 中 | 视频推荐 |
图嵌入 | 大规模 | 图结构 | 低 | 低 | 社交网络推荐 |
深度学习 | 超大规模 | 多模态 | 低 | 低 | 短视频平台用户扩展 |
梯度提升树(GBDT) | 中等-大规模 | 结构化 | 高 | 中 | 金融风控 |
8.关键优化方向
-
特征工程:
-
用户统计特征(如最近活跃时间、消费频次)。
-
行为序列特征(如点击序列的 Embedding)。
-
上下文特征(如设备类型、地理位置)。
-
-
样本设计:
-
解决正负样本不均衡(过采样、Focal Loss)。
-
动态更新种子用户(时间衰减策略)。
-
-
模型融合:
-
结合协同过滤和深度学习(如 Wide & Deep)。
-
集成多模型结果(投票或加权平均)。
-
Lookalike 人群扩展需根据 数据规模、特征类型 和 业务需求 选择模型:
• 小规模/冷启动:标签相似度、逻辑回归。
• 行为数据丰富:协同过滤、图嵌入。
• 海量数据/复杂特征:深度学习方法。
• 结构化数据/高效训练:梯度提升树(GBDT)。