前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >深度学习基础知识总结

深度学习基础知识总结

原创
作者头像
用户2794661
发布2022-05-10 23:05:47
2.6K0
发布2022-05-10 23:05:47
举报
文章被收录于专栏:程序人生小记

数据相关问题

样本选择

样本选择一般包括两个问题选择哪段时间的数据去训练,如何定义正负样本?

  • 选择哪段时间去训练?

一般模型训练包括小时级模型和天级别模型。选择过去7天、15天、过去30天、过去45天、过去60天、过去90天的数据去训练。

  • 如何定义正负样本?

召回正负样本定义:正样本为曝光点击样本,负样本为随机采样样本。(曝光未点击样本有偏差)

排序正负样本定义:正样本为曝光点击样本,负样本为曝光未点击样本。

召回的目的就是让模型见多识广,所以负样本需要各种各样的样本,不只需要easy negative,还需要hard negative。精排的目的是让模型精益求精,负样本可以是有偏的。

如何解决数据延迟问题?

  • 以1天归因转化 label 进行模型训练,可以保证时效性。但由于 n 天后才转化的样本都被标记成了负样本,这样的模型对转化周期长的样本,比如某些很贵的商品,显然是有偏的。由于尚未到达归因结束的时间,因此这部分负样本随时间推移有可能因为用户的突然转化,而变成正样本。因此,转化时间以内的样本需要每天更新一次 label。
  • 既然观测到的负样本包含假负样本,一个直观的想法是能否分别建模转化模型和时延模型,然后通过时延模型预估这条样本到模型训练时刻已经发生转化的概率,作为该负样本的不确定性,从而给每条负样本一个合理权重,降低假负样本带来的影响。那么首先一个问题,淘系的商品的转化时延,是可建模的吗?于是我们进行调研,按照分类,统计某场景归因的1天转化/7天转化的比值来看,不同分类的转化周期有明显差异。按照用户购买力统计,也是类似结论。基于上述分析,转化周期(时延模型)在淘系广告产品是可建模的。该类方法在建模中通过显示建模一个成交是否可能发生在观测窗口外的概率

p(d>w_o|y=1)来实现基于观测分布的label纠偏,即:

编辑切换为居中

添加图片注释,不超过 140 字(可选)

该类方法虽然理论上可以实现无偏建模,但由于对于延迟成交(

d>w_o)样本只能通过联合建模来推断而无法在成交时作为确定性的正反馈,效果提升有限,实际应用较少。

样本不平衡

  • 扩大数据集
  • 数据采样
  • focas loss损失函数

数据处理方法

  • shard: 采样,从某个位置开始隔固定距离采样一个元素。
  • repeat: 重复数据若干次,不带参数时,重复无数次。
  • batch : 构建批次,每次放一个批次。比原始数据增加一个维度。 其逆操作为unbatch。
  • map: 将转换函数映射到数据集每一个元素。
  • 使用 prefetch 方法让数据准备和参数迭代两个过程相互并行。
  • shuffle:数据顺序洗牌。

模型定义相关问题

模型结构

DNN/CNN/RNN/LSTM/GRU/transformer

DNN:深度神经网络

CNN:卷积神经网络

RNN:循环神经网络

LSTM\GRU

transformer:

激活函数

sigmoid、tanh、relu、softmax

sigmoid的数学公式是

\sigma(x)=\frac{1}{1+e^{-x}}\\

优点:

  • 梯度平滑,容易求导
  • Sigmoid函数的输出映射在(0,1)之间,单调连续,输出范围有限,优化稳定,可以用作输出层

缺点:

  • Sigmoid函数饱和使梯度消失。当神经元的激活在接近0或1处时会饱和,在这些区域梯度几乎为0,这就会导致梯度消失,几乎就有没有信号通过神经传回上一层。
  • Sigmoid函数的输出不是零中心的。因为如果输入神经元的数据总是正数,那么关于

w的梯度在反向传播的过程中,将会要么全部是正数,要么全部是负数,这将会导致梯度下降权重更新时出现z字型的下降。

Tanh非线性函数的数学公式是

tanh(x)=2\sigma(2x)-1\\

Tanh解决了Sigmoid的输出是不是零中心的问题,但仍然存在饱和问题。

ReLU

数学公式:

函数公式是

f(x)=max(0,x)\\

ReLU非线性函数图像如下图所示。相较于sigmoid和tanh函数,ReLU对于随机梯度下降的收敛有巨大的加速作用;sigmoid和tanh在求导时含有指数运算,而ReLU求导几乎不存在任何计算量。

对比sigmoid类函数主要变化是:

1)单侧抑制;

2)相对宽阔的兴奋边界;

3)稀疏激活性。

存在问题:

ReLU单元比较脆弱并且可能“死掉”,而且是不可逆的,因此导致了数据多样化的丢失。通过合理设置学习率,会降低神经元“死掉”的概率。

Leaky ReLU

数学公式:

函数公式是

f(y)=max(\varepsilon y,y)\\

其中

\varepsilon 是很小的负数梯度值,比如0.01,Leaky ReLU非线性函数图像如下图所示。这样做目的是使负轴信息不会全部丢失,解决了ReLU神经元“死掉”的问题。更进一步的方法是PReLU,即把

\varepsilon 当做每个神经元中的一个参数,是可以通过梯度下降求解的。

Softmax

数学公式:

Softmax用于多分类神经网络输出,目的是让大的更大。函数公式是

\sigma(z)_{j}=\frac{e^{z_{j}}}{\sum_{k=1}^{K}{e^{z_{k}}}}\\

示意图如下。

编辑切换为居中

Softmax示意图

Softmax是Sigmoid的扩展,当类别数k=2时,Softmax回归退化为Logistic回归。

BN/LN/WN

Dropout

参数初始化问题

参数初始化分为:固定值初始化、预训练初始化和随机初始化。

固定初始化是指将模型参数初始化为一个固定的常数,这意味着所有单元具有相同的初始化状态,所有的神经元都具有相同的输出和更新梯度,并进行完全相同的更新,这种初始化方法使得神经元间不存在非对称性,从而使得模型效果大打折扣。

预训练初始化是神经网络初始化的有效方式,比较早期的方法是使用 greedy layerwise auto-encoder 做无监督学习的预训练,经典代表为 Deep Belief Network;而现在更为常见的是有监督的预训练+模型微调。

随机初始化是指随机进行参数初始化,但如果不考虑随机初始化的分布则会导致梯度爆炸和梯度消失的问题。

warm up

模型训练相关问题

损失函数

模型优化器

梯度消失和梯度爆炸

过拟合与欠拟合

偏差与方差

评估指标

warm up

其他问题

  • 判别模型与生成模型

判别方法:由数据直接学习决策函数

f(x)或者条件概率分布

P(y|x)作为预测的模型,即判别模型。判别方法关心的是对给定输入

x,应该预测什么样的输出

y。

生成方法:由数据学习输入和输出联合概率分布

P(x,y) ,然后求出后验概率分布

P(y|x) 作为预测的模型,即生成模型。这里以朴素贝叶斯为例,我们要求的目标可以通过:

P(x,y) =P(x|y) P(y)

求出输入输出的联合概率分布,然后通过贝叶斯公式:

P(y|x)=\frac{P(x|y) P(y)}{P(x)}

求出后验概率分布。

常见的判别模型有线性回归、对数回归、线性判别分析、支持向量机、 boosting、条件随机场、神经网络等。

常见的生产模型有隐马尔科夫模型、朴素贝叶斯模型、高斯混合模型、 LDA、 Restricted Boltzmann Machine 等。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数据相关问题
    • 样本选择
      • 如何解决数据延迟问题?
        • 样本不平衡
          • 数据处理方法
          • 模型定义相关问题
            • 模型结构
              • 激活函数
                • BN/LN/WN
                  • Dropout
                    • 参数初始化问题
                    • 模型训练相关问题
                      • 损失函数
                        • 模型优化器
                          • 梯度消失和梯度爆炸
                            • 过拟合与欠拟合
                              • 偏差与方差
                                • 评估指标
                                • 其他问题
                                相关产品与服务
                                联邦学习
                                联邦学习(Federated Learning,FELE)是一种打破数据孤岛、释放 AI 应用潜能的分布式机器学习技术,能够让联邦学习各参与方在不披露底层数据和底层数据加密(混淆)形态的前提下,通过交换加密的机器学习中间结果实现联合建模。该产品兼顾AI应用与隐私保护,开放合作,协同性高,充分释放大数据生产力,广泛适用于金融、消费互联网等行业的业务创新场景。
                                领券
                                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档