返回介绍

数学基础

统计学习

深度学习

工具

Scala

十六、DeepMCP [2019]

发布于 2023-07-17 23:38:25 字数 22476 浏览 0 评论 0 收藏 0

  1. 点击率 click-through rate: CTR预估是预测用户点击某个 item 的概率。它在在线广告系统中扮演着重要的角色。例如,广告排序策略通常取决于 CTR x bid,其中 bid 为广告的点击出价。此外,根据常见的 cost-per-click: CPC 扣费模式,广告主仅在用户点击广告之后才扣费。因此,为了最大限度地提高收入并保持理想的用户体验,准确预估广告的 CTR 至关重要。

    CTR 预估引起了学术界和工业界的广泛关注。例如:

    • 逻辑回归 Logistic Regression: LR 模型考虑了线性的特征重要性,并将预测的 CTR 建模为: $ \hat y = \sigma\left(b+ \mathbf{\vec w}^\top\mathbf{\vec x} \right) $ ,其中 $ \sigma(\cdot) $ 为 sigmoid 函数, $ \mathbf{\vec w} $ 为权重系数, $ b $ 为 bias, $ \mathbf{\vec x} $ 为特征向量。

    • 分解机 Factorization Machine: FM 模型进一步对 pairwise 特征交互interaction 进行建模。它将预估的 CTR 建模为: $ \hat y = \sigma\left(b+\mathbf{\vec w}^\top\mathbf{\vec x} + \sum_{i}\sum_{j} (\mathbf{\vec v}_i^\top \mathbf{\vec v}_j)\times x_ix_j\right) $ ,其中 $ \mathbf{\vec v}_i $ 为第 $ i $ 个特征的潜在 embedding 向量, $ x_i $ 为第 $ i $ 个特征的取值。

    • 近年来,深度神经网络 Deep Neural Network: DNN 被广泛用于 CTR 预估和 item 推荐,从而自动学习特征 representation 和高阶特征交互。

    • 为了同时利用浅层模型和深层模型,人们还提出了混合模型。例如:

      • Wide & Deep 结合了 LRDNN,从而提高模型的 memorizationgeneralization 能力。
      • DeepFM 结合了 FMDNN ,从而进一步提高了学习特征交互的模型能力。
      • Neural Factorization Machine: NFM 结合了 FM 的线性和 DNN 的非线性。 尽管如此,这些模型仅考虑了 feature-CTR 关系,并且存在数据稀疏问题。论文 《Representation Learning-Assisted Click-Through Rate Prediction》 提出的 DeepMCP 模型额外考虑了 feature-feature 关系,例如如 user-ad 关系、ad-ad 关系,从而学习更多信息丰富的、统计可靠的特征representation ,最终提高 CTR 预估的性能。下图说明了DeepMCP(图 (b)) 和其它方法图 (a))的主要区别:
    • (a):经典的 CTR 预估方法建模 feature-CTR 关系。

    • (b)DeepMCP 进一步对 feautre-feature 关系进行建模,诸如 user-ad 关系(虚实线)、ad-ad 关系(点线)。

    注意:FM 模型中的特征交互仍然是建模 feature-CTR 关系。可以将其视为tow_features-CTR 关系,因为它建模了特征交互 $ \mathbf{\vec v}_i^\top\mathbf{\vec v}_jx_ix_j $ 和 CTR $ \hat y $ 的关系,但是并未建模两个特征representation $ \mathbf{\vec v}_i $ 和 $ \mathbf{\vec v}_j $ 是否应该彼此相似。其中 $ \mathbf{\vec v}_i $ 是第 $ i $ 个特征的 latent embedding 向量, $ x_i $ 是第 $ i $ 个特征的取值。

    更具体而言,论文提出的 DeepMCP 模型包含三个部分:一个 matching subnet、一个 correlation subnet、一个 prediction subnet ,这也是 DeepMCP 模型名称的由来。这三个部分共享相同的 embedding 矩阵。

    • matching subnetuser-ad 的关系(即,广告是否匹配用户的兴趣)进行建模,并旨在学习有用的用户representation 和有用的广告 representation
    • correlation subnetad-ad 的关系(即,哪些广告位于用户点击序列的时间窗口内)进行建模,并旨在学习有用的广告 representation
    • prediction subnetfeature-CTR 关系进行建模,并旨在预测在给定所有特征的条件下的 CTR

    当这些 subnet 在目标label 的监督下联合优化时,学到的特征representation既具有良好的预测能力、又具有良好的表达能力。此外,由于同一个特征以不同的方式出现在不同的 subnet 中,因此学到的 representation 在统计上更加可靠。

    总之,论文的主要贡献是:

    • 论文提出了一种用于 CTR 预估的新模型 DeepMCP。与主要考虑 feature-CTR 关系的经典 CTR 预估模型不同,DeepMCP 进一步考虑了 user-ad 关系和 ad-ad 关系。
    • 论文对两个大规模数据集进行了大量实验,从而比较了 DeepMCP 和其它几个 state-of-the-art 模型的性能。论文还公开了 DeepMCP 的实现代码。
  2. 相关工作:

    • CTR 预估:CTR 预估引起了学术界和工业界的广泛关注。

      • 广义线性模型,如逻辑回归 Logistic Regression: LRFollow-The-Regularized-Leader: FTRL 在实践中表现出不错的性能。然而,线性模型缺乏学习复杂特征交互的能力。
      • 分解机 Factorization Machine: FM 以被涉及特征的潜在向量 latent vector 的形式对 pairwise 特征交互建模。
      • Field-aware FMField-weighted FM 进一步考虑了特征所属 field 的影响,从而提高 FM 的性能。

      近年来,深度神经网络 Deep Neural Network 被广泛用于 CTR 预估和 item 推荐,以自动学习特征 representation 和高阶特征交互。

      • Factorization-machine supported Neural Network: FNN 在应用 DNN 之前预训练 FM
      • Product-based Neural Network: PNNembedding layer 和全连接层之间引入了 product layer
      • Wide & Deep 结合了 LRDNN,从而提高模型的 memorizationgeneralization 能力。
      • DeepFMFM 一样对低阶特征交互进行建模,并像 DNN 一样对高阶特征交互进行建模。
      • Neural Factorization Machine: NFM 结合了 FM 的线性和神经网络的非线性。

      尽管如此,这些方法主要是对 feature-CTR 关系进行建模。我们提出的 DeepMCP 模型进一步考虑了 user-adad-ad 的关系。

    • Multi-modal / Multi-task Learning:我们的工作也与多模态/多任务学习密切相关,其中引入了多种信息或辅助任务来帮助提高main task 的性能。

      • 《Collaborative knowledge base embedding for recommender systems》 利用知识库 knowledge base 中的异质信息 heterogeneous information(如结构化内容、文本内容、视觉内容)来提高推荐系统的质量。
      • 《Recommendation with multisource heterogeneous information》 除了利用经典的 item 结构信息之外,还利用文本内容和社交 tag 信息来改进推荐。
      • 《Improving entity recommendation with search log and multi-task learning》 引入上下文感知排序 context-aware ranking 作为辅助任务,以便更好地对实体推荐中的 query 语义进行建模。
      • 《Deep cascade multi-task learning for slot filling in online shopping assistant》 提出了一种多任务模型,该模型额外学习了 segment taggingnamed entity tagging ,从而用于在线购物助手中的槽位 slot 填充。

      在我们的工作中,我们解决了一个不同的问题。我们引入了两个辅助的、但是相关的任务(即共享了 embeddingmatching subnetcorrelation subnet)来提高 CTR 预估的性能。

16.1 模型

  1. 在线广告中点击率预估任务是估计用户点击特定广告的概率。下表展示了一些样本实例,每一行都是 CTR 预估的一个样本。其中第一列是 label(点击是 1、未点击是 0)。每个样本可以用多个 field 来描述,例如用户信息field(用户 ID、城市等)和广告信息 field(创意ID、标题等)。field 的实例化对应了一个特征。

    与大多数主要考虑 feature-CTR 关系的现有 CTR 预估模型不同,我们提出的 DeepMCP 模型额外考虑了 user-adad-ad 关系。DeepMCP 包含三个部分:一个 matching subnet、一个 correlation subnet、一个 prediction subnet ,如下图 (a) 所示。当这些 subnet 在目标label 的监督下联合优化时,学到的特征representation既具有良好的预测能力、又具有良好的表达能力。

    DeepMCP 的另一个特点是:尽管在训练过程中所有 subnet 都处于活跃状态,但是在测试过程中只有 prediction subnet 处于活跃状态,如下图 (b) 所示。这使得测试阶段变得相当简单和高效。

  2. 我们将特征分为四组:用户特征(如用户 ID、年龄)、query 特征(如 queryquery category )、广告特征(如创意ID、广告标题)、其它特征(如一天中的小时、星期)。每个 subnet 使用不同的特征集合。具体而言:prediction subnet 使用所有四组特征,matching subnet 使用 user, query, ad 三组特征,correlation subnet 仅使用 ad 特征。所有 subnet 共享相同的 embedding 矩阵。

    注意:Context ad featuresNegative ad featurescorrelation subnet 中,位于用户点击序列的时间窗口内上下文广告、以及窗口外的负采样广告。它们仅用于 correlation subnet

  3. DeepMCP 的整体结构如下图所示,所有的subnet 共享相同的 embedding 矩阵。

16.1.1 Prediction Subnet

  1. prediction subnet 这里是一个典型的 DNN 模型,它对 feature-CTR 关系进行建模(其中显式地或隐式地对特征交互进行建模)。它旨在在目标 label 的监督下,根据所有特征预估点击率。尽管如此,DeepMCP 模型非常灵活,可以使用任何其它CTR 预估模型来代替prediction subnet,如 Wide & DeepDeepFM 等。

    prediction subnet 的整体结构为:

    • 首先,单个特征 $ x_i\in \mathbb R $ (如用户ID)通过一个 embedding 层,然后映射到对应的embedding 向量 $ \mathbf{\vec e}_i\in \mathbb R^K $ ,其中 $ K $ 为 embedding 向量维度, $ \mathbf{\vec e}_i $ 为待学习的参数。

      假设特征 $ x_i $ 的取值集合规模为 $ N $ ,则这个特征所有 embedding 的集合构成一个 embedding 矩阵 $ \mathbf E\in \mathbb R^{N\times K} $ 。

      注意:

      • 这里假设所有特征都是离散的。如果存在连续值的特征,则需要首先对其进行离散化。
      • 对于多类别的离散特征(如广告标题中的 bi-gram,一个广告标题可能包含多个 bi-gram),我们首先将每个 bi-gram 映射到一个 embedding 向量,然后再执行一个 sum pooling 从而得到广告标题的、聚合后的 embedding 向量。
    • 接着,我们将样本的所有特征的 embedding 向量拼接为一个长的向量 $ \mathbf{\vec m} $ 。然后向量 $ \mathbf{\vec m} $ 经过若干层全连接层fully connected:FC 层(带有 ReLU 非线性激活函数),从而学到高阶的非线性特征交互。

    • 最后,最后一层 FC 层的输出 $ \mathbf{\vec z} $ 通过一个 sigmoid 函数从而得到预估的 CTR

      $ \hat y = \frac{1}{1+\exp\left[-\left(\mathbf{\vec w}^\top\mathbf{\vec z} + b\right)\right]} $

      其中 $ \mathbf{\vec w},b $ 都是待学习的模型参数。

    为缓解过拟合,我们在每个 FC 层之后都应用了 dropout

  2. prediction subnet 的损失函数为训练集的交叉熵:

    $ \mathcal L_p=-\frac{1}{n}\sum_{i=1}^n\left[y_i\log \hat y_i+(1-y_i)\log(1-\hat y_i)\right] $

    其中: $ n $ 为训练样本的数量; $ y_i\in \{0,1\} $ 为第 $ i $ 个样本是否点击的真实label; $ \hat y_i $ 为第 $ i $ 个样本预估的CTR

16.1.2 Matching Subnet

  1. matching subnetuser-ad 的关系(即,广告是否匹配用户的兴趣)进行建模,并旨在学习有用的用户representation 和有用的广告 representation 。它的灵感来自于网络搜索的语义匹配模型semantic matching model

  2. 在推荐系统的经典矩阵分解中,rating score 近似为用户ID 潜在向量和item ID 潜在向量的内积。在我们的问题中,我们没有直接 match 用户 ID 和广告ID,而是在更高级别上进行了 match ,并结合了关于用户的所有特征、关于广告的所有特征。

    当用户点击广告时,我们假设所点击的广告至少部分和用户需求相关(考虑到用户提交的 query,如果有的话)。因此,我们希望用户特征(和query 特征)的 representation 和广告特征的 representation 相匹配。

    具体而言,matching subnet 包含两个部分:

    • 用户部分 user part:用户部分的输入是用户特征(如用户ID、年龄)和 query 特征(如 queryquery category)。

      像在 prediction subnet 中一样,单个特征 $ x_i\in \mathbb R $ 首先经过 embedding 层,然后映射为对应的 embedding 向量 $ \mathbf{\vec e}_i\in \mathbb R^K $ 。然后我们将单个用户 $ u $ 的多种特征的 embedding 拼接为长向量 $ \mathbf{\vec m}_u\in \mathbb R^{N_u} $ ,其中 $ N_u $ 为长向量的维度。

      然后向量 $ \mathbf{\vec m}_u $ 经过若干层全连接层fully connected:FC 层(带有 ReLU 非线性激活函数),从而学到高阶的非线性特征交互。对于最后一个 FC 层,我们使用 tanh 非线性激活函数(而不是 ReLU),我们后面解释这么做的原因。

      用户部分的输出是一个 high-level 的用户 representation 向量 $ \mathbf{\vec v}_u\in \mathbb R^M $ ,其中 $ M $ 为向量维度。

    • 广告部分 ad part:广告部分的输入是广告特征(如广告ID、广告标题)。

      同样,我们首先将每个广告特征映射到对应的 embedding 向量,然后将单个广告 $ a $ 的多种特征的 embedding 拼接为长向量 $ \mathbf{\vec m}_a\in \mathbb R^{N_a} $ ,其中 $ N_a $ 为长向量的维度。

      然后向量 $ \mathbf{\vec m}_a $ 经过若干层全连接层fully connected:FC 层(带有 ReLU 非线性激活函数),从而得到一个 high-level 的广告 representation 向量 $ \mathbf{\vec v}_a\in \mathbb R^M $ 。同样地,对于最后一个 FC 层,我们使用 tanh 非线性激活函数(而不是 ReLU)。

    注意:通常用户部分、广告部分的输入具有不同的特征维度,即 $ N_u\ne N_a $ 。因为用户特征和广告特征的类别、数量通常都不相等。但是,经过 matching subnet 之后, $ \mathbf{\vec v}_u $ 和 $ \mathbf{\vec v}_a $ 具有相同的维度 $ M $ 。换句话讲,我们将两组不同的特征投影到一个公共的低维空间中。

    然后我们通过下式计算 matching score $ s $ 为:

    $ s\left(\mathbf{\vec v}_u,\mathbf{\vec v}_a\right)=\frac{1}{1+\exp\left(-\mathbf{\vec v}_u^\top\mathbf{\vec v}_a\right)} $

    我们并没有使用 ReLU 作为最后一个 FC 层的激活函数,因为 ReLU 之后的输出将包含很多零,这使得 $ \mathbf{\vec v}_u^\top\mathbf{\vec v}_a \rightarrow 0 $ 。

    注意:前面 prediction subnet 最后一个 FC 层仍然采用 ReLU,因为其输出为 $ \mathbf{\vec z} $ 是和模型参数 $ \mathbf{\vec w} $ 进行内积。 $ \mathbf{\vec w} ^\top\mathbf{\vec z} $ 为零的概率远小于 $ \mathbf{\vec v}_u^\top\mathbf{\vec v}_a $ 。

  3. 至少有两种选择来建模 matching score

    • point-wise 模型:当用户 $ u $ 点击广告 $ a $ 时,则 $ s\left(\mathbf{\vec v}_u,\mathbf{\vec v}_a\right)\rightarrow 1 $ ;当用户 $ u $ 未点击广告 $ a $ 时,则 $ s\left(\mathbf{\vec v}_u,\mathbf{\vec v}_a\right)\rightarrow 0 $ 。
    • pair-wise 模型:如果用户 $ u $ 点击了广告 $ a_i $ 但是未点击广告 $ a_j $ ,则 $ s\left(\mathbf{\vec v}_u,\mathbf{\vec v}_{a_i}\right)\gt s\left(\mathbf{\vec v}_u,\mathbf{\vec v}_{a_j}\right) +\delta $ ,其中 $ \delta\gt 0 $ 为 margin 超参数。

    这里我们选择 point-wise 模型,因为它可以直接将训练数据集重新用于 prediction subnet 。我们将 matching subnet 的损失函数定义为:

    $ \mathcal L_m=-\frac{1}{n}\sum_{i=1}^n\left[y(u,a)\log s\left(\mathbf{\vec v}_u,\mathbf{\vec v}_a\right) +(1-y(u,a))\log(1-s\left(\mathbf{\vec v}_u,\mathbf{\vec v}_a\right))\right] $

    其中: $ n $ 为样本数量;如果用户 $ u $ 点击广告 $ a $ 则 $ y(u,a)=1 $ ,否则 $ y(u,a) = 0 $ 。

  4. matching subnet 也是采用是否点击作为label,这和 prediction subnet 完全相同。二者不同的地方在于:

    • matching subnetuv 粒度,而 prediction subnetpv 粒度。
    • matching subnet 通过representation 向量的内积来建模用户和广告的相关性,用户信息和广告信息只有在进行内积的时候才产生融合。而 prediction subnet 直接建模点击率,用户信息和广告信息在 embedding layer 之后就产生融合。

16.1.3 Correlation Subnet

  1. correlation subnetad-ad 的关系(即,哪些广告位于用户点击序列的时间窗口内)进行建模,并旨在学习有用的广告 representation 。在我们的问题中,由于用户的点击广告构成了随时间推移的、具有一定相关性的序列,因此我们使用 skip-gram 模型来学习有用的广告representation

    给定单个用户点击广告的广告序列 $ \{a_1,a_2,\cdots,a_L\} $ ,我们最大化平均对数似然:

    $ ll=\frac{1}{L}\sum_{i=1}^L\sum_{-C\le j\le C}\log p(a_{i+j}\mid a_i) $

    其中: $ L $ 是广告序列长度, $ C $ 为上下文窗口大小。

  2. 概率 $ p(a_{i+j}\mid a_i) $ 可以通过不同的方式进行定义,例如 softmax、层次 softmax、负采样。由于负采样的效率高,我们选择负采样技术将 $ p(a_{i+j}\mid a_i) $ 定义为:

    $ p(a_{i+j}\mid a_i) = \sigma\left(\mathbf{\vec h}_{a_{i+j}}^\top\mathbf{\vec h}_{a_{i}}\right)\prod_{q=1}^Q\sigma\left(-\mathbf{\vec h}_{a_{q}}^\top\mathbf{\vec h}_{a_{i}}\right) $

    其中:

    • $ Q $ 为负采样的广告数, $ \sigma(\cdot) $ 为 sigmoid 函数。
    • $ \mathbf{\vec h}_{a_i} $ 为广告 $ a_i $ 的 high-level representation,它涉及广告 $ a_i $ 的所有特征,并经过多个 FC 层。
  3. correlation subnet 的损失函数为负的对数似然:

    $ \mathcal L_c = \frac{1}{L}\sum_{i=1}^L\sum_{-C\le j\le C}\left[-\log \left[ \sigma\left(\mathbf{\vec h}_{a_{i+j}}^\top\mathbf{\vec h}_{a_{i}}\right)\right]-\sum_{q=1}^Q \log \left[ \sigma\left(-\mathbf{\vec h}_{a_{q}}^\top\mathbf{\vec h}_{a_{i}}\right)\right]\right] $

    考虑所有用户的 $ \mathcal L_c $ 则得到 correlation subnet 总的损失。

16.1.4 其它

  1. 离线训练过程:DeepMCP 的最终联合损失函数为:

    $ \mathcal L = \mathcal L_p+ \alpha \mathcal L_m+\beta\mathcal L_c $

    其中 $ \alpha,\beta $ 为超参数,它们平衡了不同 subnet 的重要性。

    DeepMCP 通过在训练集上最小化联合损失函数来训练。由于我们的目标是最大化 CTR 预估性能,因此训练过程中我们在独立的验证集上评估模型,并记录验证 AUC。最佳模型参数在最高的验证 AUC 处获得。

  2. 在线预测过程:DeepMCP 模型仅需要计算预估的点击率pCTR,因此只有prediction subnet 处于活跃状态。这使得 DeepMCP 的在线预测阶段相当简单和高效。

16.2 实验

  1. 数据集:我们使用两个大型数据集:

    • Avito 广告数据集:数据集包含来自俄罗斯最大的通用分类网站 avito.ru 的广告日志的随机样本。我们将 2015-04-28 ~ 2015-05-18 的广告日志用于训练、2015-05-19 的广告日志用于验证、2015-05-20 的广告日志用于测试。

      CTR 预估中,测试通常是第二天的预测,这里测试集包含 $ 2.3\times 10^6 $ 个样本。用到的特征包括:用户特征(如用户 IDIP ID 、用户浏览器、用户设备)、query 特征(如queryquery categoryquery 参数)、广告特征(如广告ID、广告标题、广告cateogry)、其它特征(如 hour of dayday of week )。

    • Company 广告数据集:数据集包含来自阿里巴巴商业广告系统的广告曝光日志和点击日志的随机样本。我们使用 2018 年八月到九月连续30 天的日志用于训练,下一天的日志用于验证、下下一天的日志用于测试。

      测试集包含 $ 1.9 \times 10^6 $ 个样本。用到的特征也包括用户特征、query 特征、广告特征、其它特征。

  2. baseline 方法:我们使用以下 CTR 预估的 baseline 方法:

    • LR:逻辑回归方法。它是线性模型,建模了特征重要性。
    • FM:因子分解机。它同时对一阶特征重要性和二阶特征交互进行建模。
    • DNN:深度神经网络,它包含一个 embedding 层、几个 FC 层、一个输出层。
    • Wide & Deep:它同时结合了 LRwide 部分)、DNNdeep 部分)。
    • PNNproduct-based 神经网络,它在 DNNembedding 层和 FC 层之间引入了一个乘积层production layer
    • DeepFM:它结合了 FMwide 部分)、DNNdeep 部分)。
    • DeepCPDeepMCP 模型的一种变体,仅包含 correlation subnetprediction subnet 。它等价于在联合损失函数中设置 $ \alpha = 0 $ 。
    • DeepMPDeepMCP 模型的一种变体,仅包含 matching subnetprediction subnet 。它等价于在联合损失函数中设置 $ \beta = 0 $ 。
  3. 实验配置:

    • 考虑到每个特征的取值范围很广,因此我们设置每个特征的维度 $ K=10 $ ,从而防止 embedding 矩阵规模太大。
    • 对于基于神经网络的模型,我们设置全连接层的层数为 2、维度分别为 512256
    • 我们设置 batch size=28,上下文窗口大小 $ C=2 $ ,负采样广告数量为 $ Q=4 $ ,dropout rate=0.5
    • 所有这些方法都在 tensorflow 中实现,并通过 Adagrad 算法进行优化。
  4. 评估指标:测试 AUC (越大越好)、测试 logloss (越小越好)。

  5. 实验结果如下表所示,可以看到:

    • FM 性能要比 LR 好得多,这是因为 FM 建模了二阶特征交互,而 LR 仅建模一阶的特征重要性。

    • DNN 性能进一步优于 FM,因为它可以学习高阶非线性特征交互。

    • PNN 优于 DNN,因为它进一步引入了 production layer

    • Wide & Deep 进一步优于 PNN,因为它结合了 LRDNN,从而提高了模型的记忆memorization 能力和泛化generalization 能力。

    • DeepFM 结合了 FMDNN,它在 Avito 数据集上优于 Wide & Deep,但是在 Company 数据集上性能稍差。

    • DeepCPDeepMP 在两个数据集上都超越了表现最好的 baseline

      由于 baseline 方法仅考虑单个CTR 预估任务,因此这些观察结果表明:考虑额外的 representation learning 任务可以帮助更好地执行 CTR 预估。

    • 还可以观察到 DeepMP 的性能比 DeepCP 更好,这表明:matching subnet 要比 correlation subnet 带来更多的好处。

      这是可以理解的,因为 matching subnet 同时考虑了用户和广告,而 correlation subnet 仅考虑了广告。

    • DeepMCP 在这两个数据集上均表现最佳,这些证明了 DeepMCP 的有效性。

  6. 超参数 $ \alpha,\beta $ 的影响:下图分别给出了 $ \alpha,\beta $ 超参数对于DeepMCP 测试 AUC 的影响,其中 Pred 表示 DNNPred+Corr 表示DeepCPPred+Match 表示 DeepMP 。可以看到:

    • 当超参数 $ \alpha $ 或者 $ \beta $ 开始增加时,测试AUC 开始提升;当 $ \alpha $ 或者 $ \beta $ 继续增加时,测试 AUC 开始下降。
    • Company 数据集上,较大的 $ \beta $ 可能导致非常差的性能,甚至比单纯的 DNN 更差。
    • 总体而言,matching subnetcorrelation subnet 带来更大的测试 AUC 提升。

  7. 隐层维度的影响:下图给出了两层隐层的模型中,测试 AUC 和隐层维度的关系。为了方便阅读,我们仅展示了 DNN, Wide & Deep, DeepMCP 的结果。我们使用收缩结构,其中第二层维度为第一层维度的一半。第一层维度选择从 128 增加到 512

    可以看到:当隐层维度增加时,测试 AUC 通常会提升;但是当维度进一步增加时,测试 AUC 可能会下降。这可能是因为训练更复杂的模型更加困难。

  8. 隐层数量的影响:我们对比了不同深度的模型的效果。为了方便阅读,我们仅展示了 DNN, Wide & Deep, DeepMCP 的结果。我们分别使用一层([256])、两层([512, 256])、三层([1024, 512, 256])、四层([2048, 1024, 512, 256])。

    可以看到:

    • 当隐层数量从1 层增加到 2 层时,模型性能通常会提高。这是因为更多的隐层具有更好的表达能力。
    • 但是当隐层数量进一步增加时,性能就会下降。这是因为训练更深的神经网络更加困难。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文