第 36 题:DCN-V2的Matrix Low-Rank分解,秩的选择对表达能力的影响?
题目
DCN-V2的Matrix Low-Rank分解,秩的选择对表达能力的影响?
完整讲解
一、DCN-V2 的 Cross 与低秩形式
DCN 的 Cross 层可写成 $\boldsymbol{x}{l+1} = \boldsymbol{x}_0 \boldsymbol{x}_l^\top \boldsymbol{w}_l + \boldsymbol{x}_l$(忽略 bias),其中 $\boldsymbol{x}_0 \boldsymbol{x}_l^\top$ 是秩至多为 1 的矩阵。DCN-V2 把这一「秩 1」的交叉扩展为多秩形式,用一组低秩矩阵来建模更丰富的交叉:
\(\boldsymbol{x}_{l+1} = \sum_{r=1}^{R} \boldsymbol{U}_l^{(r)} \big( (\boldsymbol{V}_l^{(r)})^\top \boldsymbol{x}_l \big) + \boldsymbol{x}_l.\)
或等价的矩阵形式:用 $\boldsymbol{W}_l = \sum{r=1}^{R} \boldsymbol{U}l^{(r)} (\boldsymbol{V}_l^{(r)})^\top$($R$ 个秩 1 矩阵之和,故 $\boldsymbol{W}_l$ 的秩 $\leq R$),则 $\boldsymbol{x}{l+1} = \boldsymbol{W}_l \boldsymbol{x}_l + \boldsymbol{x}_l$(这里为简化略去与 $\boldsymbol{x}_0$ 的显式关系,V2 中有与 $\boldsymbol{x}_0$ 结合的版本,但「低秩分解」思想一致)。秩 $R$ 即每一层用 $R$ 个「左向量 + 右向量」来近似一个更大的交互矩阵,参数量从 $O(d^2)$ 降为 $O(2Rd)$。
二、秩 $R$ 对表达能力的影响
- $R$ 小(低秩):参数量少、不易过拟合、训练稳定;但可表达的交叉模式有限,相当于限制在「少数几个主方向」上的交互,表达能力弱,复杂交叉可能学不好。
- $R$ 大:更接近满秩矩阵,表达能力更强,可拟合更细粒度的特征组合;但参数多、易过拟合,且计算与显存都增加。
- 经验:$R$ 常取 1~32 之间,在 CTR 等任务上 $R=4\sim16$ 往往就够用;可通过验证集或正则选择 $R$,相当于在表达力与泛化、算力之间做折中。
三、与 DCN 原版的对比
- DCN 原版:每层等价于秩 1($\boldsymbol{x}_0 \boldsymbol{x}_l^\top \boldsymbol{w}_l$),一层只有一个「交叉方向」。
- DCN-V2:每层用秩 $R$ 的矩阵,一层内有 $R$ 个交叉方向,同层参数量仍为 $O(Rd)$,在相近参数量下比单秩更灵活,因此 V2 在不少 benchmark 上优于 DCN。
面试要点
- 能说清 DCN-V2 的 Matrix Low-Rank 形式:每层用 $R$ 个秩 1 矩阵之和,参数量 $O(Rd)$ 而非 $O(d^2)$。
- 能说明秩 $R$ 的影响:$R$ 小 → 省参数、稳、表达弱;$R$ 大 → 表达强、易过拟合;常取 4~16 折中。
- 能对比 DCN:原版每层秩 1;V2 每层秩 $R$,同参数量下表达更丰富。
记忆要点
- DCN-V2:Cross 用低秩 $\boldsymbol{W}l = \sum{r=1}^{R} \boldsymbol{U}_l^{(r)} (\boldsymbol{V}_l^{(r)})^\top$,参数量 $O(Rd)$。
- 秩 $R$:小 → 表达弱、稳;大 → 表达强、易过拟合;常用 $R=4\sim16$。
- 相对 DCN:原版秩 1;V2 秩 $R$,更灵活。