DCN的Cross Network,多项式逼近能力的理论证明?
DCN(Deep & Cross Network)的 Cross 层 做的是「当前层与初始输入」的显式交叉,递推式为: \(\boldsymbol{x}_{l+1} = \boldsymbol{x}_0 \boldsymbol{x}_l^\top \boldsymbol{w}_l + \boldsymbol{b}_l + \boldsymbol{x}_l.\) 其中 $\boldsymbol{x}_0 \in \mathbb{R}^d$ 是初始输入(embedding 拼接),$\boldsymbol{x}_l$ 是第 $l$ 层输出,$\boldsymbol{w}_l \in \mathbb{R}^d$、$\boldsymbol{b}_l \in \mathbb{R}^d$ 为可学习参数。注意 $\boldsymbol{x}_0 \boldsymbol{x}_l^\top$ 是 $d \times d$ 矩阵,右乘 $\boldsymbol{w}_l$ 后得到 $d$ 维向量,所以每层只增加 $O(d)$ 参数($2d$),总参数量与层数 $L$ 线性,且不增加「宽度」。
把递推式展开:$\boldsymbol{x}_1$ 含有 $\boldsymbol{x}_0$ 与自身的一次项;$\boldsymbol{x}_2$ 含有 $\boldsymbol{x}_0$ 与 $\boldsymbol{x}_1$ 的乘积,而 $\boldsymbol{x}_1$ 已含 $\boldsymbol{x}_0$,所以 $\boldsymbol{x}_2$ 中会出现 $\boldsymbol{x}_0$ 的二次项;依此类推,第 $l$ 层输出可表成 $\boldsymbol{x}_0$ 的 $l+1$ 次多项式(系数由 $\boldsymbol{w}_1,\ldots,\boldsymbol{w}_l$ 等决定)。因此 Cross 网络用 $L$ 层就能表达 $\boldsymbol{x}_0$ 的 $L+1$ 阶多项式,这是「多项式逼近能力」的由来。
严格来说,有工作证明:在适当条件下,DCN 的 Cross 部分可以逼近 $\boldsymbol{x}_0$ 的多元多项式函数(在紧集上),且阶数由层数 $L$ 决定($L+1$ 阶)。证明思路一般是:把 $\boldsymbol{x}_l$ 写成 $\boldsymbol{x}_0$ 的多项式,归纳得到每层引入更高一阶的单项式组合;再说明通过调节 $\boldsymbol{w}_l,\boldsymbol{b}_l$ 可以调节这些单项式的系数,从而在多项式空间里逼近目标函数。因此「增加 Cross 层数」等价于「提高可表达多项式的阶数」,适合需要显式、可控阶数特征交叉的 CTR 等场景。
DNN 也可以逼近连续函数(如用 ReLU 的万有逼近),但不保证用少量参数就得到「显式的、按阶数递增」的交叉;Cross 用 $O(L \cdot d)$ 参数就得到 $L+1$ 阶多项式子空间,结构归纳偏置强,在特征交叉任务上往往更省参数、更易解释。
| 返回模块 | 返回总览 |