1. 传统模型非常依赖于特征工程从而捕获潜在的高阶模式,而 FM 等模型通过自动特征交叉捕获二阶交叉特征。

      论文 Product-based Neural Networks for User Response Prediction 提出了 Product-based Neural Networks:PNN 模型,该模型构建了一个 embedding 层来学习离散特征的分布式representation,构建一个 product 层来自动捕捉离散特征的潜在高阶模式。

    1. 假设有 个 fieldone-hot 向量为 三、PNN - 图1field i 在向量中的起始位置为 、终止位置为 三、PNN - 图2(包含)。

      每个 field 生成一个 embedding 向量。即 field i 生成 。

      模型包含以下几层:

      • 第 0 层输入层:categorical 经过 one-hot 编码之后作为输入

      • 第1层embedding 层:模型从每个 field 中学得各 fieldembedding 表示。

        输入位置 三、PNN - 图3 仅仅与 相连,即:局部连接:

        三、PNN - 图4

        其中 为映射参数,它由 三、PNN - 图5 的第 到第 三、PNN - 图6 列组成。

      • 第2层 product 层:由embedding 特征的一阶特征和二阶交叉特征拼接而成。其中 部分表示一阶特征,三、PNN - 图7 部分表示二阶特征。为统一生成方式, 由常数 1 和一阶特征交叉生成。

        三、PNN - 图8

        表示成对特征交叉,当定义不同的 三、PNN - 图9 函数时,就定义了不同的 PNN 实现。

        该层的输出为:

        其中 三、PNN - 图10 表示对提取的一阶特征和二阶特征通过 和 三、PNN - 图11 各自分别进行进一步的特征抽取的数量。 类似于 CNN 的卷积核,其尺寸为整个图片大小, 三、PNN - 图12 为卷积核的数量, 表示第 三、PNN - 图13 个卷积核。

        表示张量的内积,定义为:

        三、PNN - 图14

      • 第3层到第 层:全连接层。

        三、PNN - 图15

      • 最后一层:sigmoid 输出层。

      模型的损失函数为 logloss

      三、PNN - 图16

    3.1.1 IPNN

    1. Inner Product-based neural network:IPNN: 的特征交叉函数为:

      则有:

      三、PNN - 图17

      则计算 的复杂度为:

      • 空间复杂度: 三、PNN - 图18
    1. 为降低复杂度,可以将 分解:

      三、PNN - 图19

      则有:

      其中 三、PNN - 图20

      则有:

      则计算 三、PNN - 图21 的复杂度为:

      • 空间复杂度:
      • 时间复杂度:三、PNN - 图22
    2. 仅仅是一阶分解,实际上可以进行更加通用的 三、PNN - 图23 阶分解:

      其中 三、PNN - 图24 。此时有:

    3.1.2 OPNN

    1. Outer Product-based neural network:OPNNOPNN 的特征交叉函数为:

      三、PNN - 图25

      与内积产生标量不同,这里的外积产生一个矩阵。

      则 。

      计算 三、PNN - 图26 的复杂度为:

      • 空间复杂度: 。它完全由 三、PNN - 图27 主导。
      • 时间复杂度: 。它完全由 三、PNN - 图28 主导。
    2. 为降低复杂度,定义:

      此时 三、PNN - 图29

      则计算 的复杂度为:

      • 空间复杂度: 三、PNN - 图30

        它们分别是计存储 的空间需求。

      • 时间复杂度: 三、PNN - 图31

    3.1.3 讨论

    1. 当移除 product 层的 部分时,IPNNOPNN 完全相同。

    2. 当采用 IPNN 时,IPNNFM 模型非常相似。

      • FM 模型将抽取的一阶、二阶特征直接送入分类器
      • IPMM 模型将抽取的一阶、二阶特征,首先使用类似 CNN 的 “核函数” (由 三、PNN - 图32 给出)抽取 个特征,然后将抽取后的特征送入 DNN

    3.2 实验

    1. 数据集:

      • iPinYou:该数据集是一个公开的、真实的展示广告数据集,包含 1950万曝光数据,其中点击数据 14790个。
      • Criteo:一个著名的广告 benchmark 数据集,包含 1TB 的点击日志。

      论文采用连续的 7 天来训练,第 8 天数据来评估。

    2. 不同模型的评估结果如下所示,其中评估指标为 AUC,Logloss,RMSE,RIGRIG 表示相对信息增益 Relative Information Gain ,它等于 1-NE ,其中 NE 为归一化的交叉熵。

      • 模型配置:

        • FM 模型的 embedding 向量维度为 10 维。
        • 模型有一个 embedding 层、2个卷积层、1个最大池化层、1个隐层,一共五层。
        • FNN 模型有1个 embedding层、3个隐层,一共四层。
        • PNN模型有1个 embedding 层、1个 product 层、3个隐层,一共五层。
        • PNN*模型和 IPNN,OPNN 相同,但是 product 层是内积和外积的拼接。

        另外:LR,FM 使用 L2 正则化;FNN,CCPM,PNN 使用 dropout (0.5的遗忘率) 。

        • FM 模型战胜了 LR 模型,说明 FM 模型有效的捕捉到了特征交互。
        • 神经网络模型(FNN,CCPM,IPNN,OPNN,PNN* )战胜了 LR 模型和 FM 模型,说明神经网络模型捕捉到了更高阶的潜在模式 latent pattern
        • 总体而言 PNN 模型效果最好(包括 IPNNOPNN 模型)。

      三、PNN - 图33