特征交叉
概述
机器学习中将两个或多个原始特征组合成新特征的过程,用于捕获特征之间的联合效应,是提升推荐系统和 CTR 预估模型精度的核心手段。
关键内容
- 定义与动机:单个特征只能建模独立影响,而特征交叉(如"用户年龄 × 广告类别")能捕获联合效应。在推荐系统中,用户 ID 和物品 ID 的交叉直接建模个性化偏好;在 CTR 预估中,"性别=男 AND 广告类别=体育"的交叉能捕获特定人群的点击倾向。
- 传统方法:工程师手工构造交叉特征——对类别型特征做笛卡尔积、对数值型特征做分桶后交叉。这项工作耗时且高度依赖领域经验,难以迁移到新任务。多项式核 SVM 理论上可自动建模交叉,但在高度稀疏数据上完全失败,因为独立参数 $w_{ij}$ 需要特征 $i$ 和 $j$ 共现才能学习。
- FM 的解决方案:Factorization Machines 通过隐向量分解 $\langle \mathbf{v}_i, \mathbf{v}_j \rangle$ 建模特征交叉,参数不再独立而是通过隐向量相互关联。即使特征 $i$ 和 $j$ 从未共现,只要 $\mathbf{v}_i$ 和 $\mathbf{v}_j$ 从其他交互中学到合理表示,FM 仍能预测其交叉效应。
- 线性复杂度:FM 通过代数变换将二阶特征交叉的计算复杂度从 $O(kn^2)$ 降至 $O(kn)$,使得在百万甚至千万维特征空间中进行交叉建模成为可能。这是 FM 能够在工业界落地的前提条件。
- 高阶交叉:标准 FM 仅支持二阶交叉。高阶 FM 因组合爆炸导致的计算复杂度和数值不稳定性在实践中很少使用。后续工作如 xDeepFM 的 CIN 网络尝试显式建模高阶交叉,而 DNN 则隐式学习高阶交互。
- 交叉的等权问题:FM 对所有特征对交叉一视同仁,无法区分有意义的交叉与噪声。FFM 通过场感知机制为不同语义类别的交叉使用不同隐向量来缓解此问题。AFM(Attentional FM)用注意力机制为不同交叉分配不同权重。
- 与嵌入表示的关系:特征交叉的隐向量 $\mathbf{v}_i$ 本质上就是类别型特征的嵌入表示。现代推荐系统中,嵌入层可以看作 FM 隐向量的自然延伸,几乎所有深度模型都会为每个类别型特征学习低维嵌入向量。
来源
相关
- Factorization Machines — 自动学习特征交叉的统一框架
- 嵌入表示 — 特征交叉的隐向量即嵌入
- CTR 预估 — 特征交叉的核心应用场景
- 协同过滤 — 用户-物品交叉是 CF 的核心
- FFM — 场感知特征交叉
- AFM — 注意力加权的特征交叉