第二次打卡

过拟合、欠拟合及其解决方案

过拟合和欠拟合

欠拟合(underfitting):模型无法得到较低的训练误差。
过拟合(overfitting:模型的训练误差远小于它在测试数据集上的误差。

训练误差与泛化误差

训练误差(training error):指模型在训练数据集上表现出的误差。
泛化误差(generalization error):指模型在任意一个测试数据样本上表现出的误差的期望,并常常通过测试数据集上的误差来近似。

模型复杂度

给定训练数据集,模型复杂度和误差之间的关系:
在这里插入图片描述

方法

权重衰减:
权重衰减等价于 L2范数正则化(regularization)。L2范数正则化在模型原损失函数基础上添加L2范数惩罚项,从而得到训练所需要最小化的函数,是应对过拟合(高方差)的常用手段。L2范数惩罚项指的是模型权重参数每个元素的平方和与一个正的常数的乘积。
丢弃法:
丢弃法按一定的比例去除隐藏层的神经单元,使神经网络的结构简单化,是应对过拟合(高方差)的常用手段。
增加模型复杂度,降低正则化约束等是应对欠拟合(高偏差)的手段。

K折交叉验证

把原始训练数据集分割成K个不重合的子数据集,然后我们做K次模型训练和验证。每一次,我们使用一个子数据集验证模型,并使用其他K-1个子数据集来训练模型。在这K次训练和验证中,每次用来验证模型的子数据集都不同。最后,我们对这K次训练误差和验证误差分别求平均。

梯度消失、梯度爆炸

概念

特别地,在循环神经网络中出现:
梯度消失:初始化的网络权值∣w∣通常都小于1,因此,当层数增多时,梯度 ∣σ′(z)w∣<1的值不断相乘,最后就导致梯度消失的情况出现。
梯度爆炸:当权值∣w∣过大时,导致梯度 ∣σ′(z)w∣>1 ,最后大于1的值不断相乘,就会产生梯度爆炸。

解决方案

1.用Relu激活函数让激活函数的导数为1。
2.深度残差网络。
在这里插入图片描述 3.批标准化(batch normalization)
通过对每一层的输出规范为均值和方差一致的方法,消除输入X带来的放大缩小的影响。
4.LSTM结构
LSTM通过它内部的“门”可以接下来更新的时候“记住”前几次训练的”残留记忆“。

机器翻译及相关技术

概念

机器翻译(MT):将一段文本从一种语言自动翻译为另一种语言,用神经网络解决这个问题通常称为神经机器翻译(NMT)。 主要特征:输出是单词序列而不是单个单词。 输出序列的长度可能与源序列的长度不同。

数据预处理

1.数据集清洗,去除的特殊字符。
2.分词:字符串—单词组成的列表。
3.建立词典:单词组成的列表—单词id组成的列表。

sequence to sequence模型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

beam searh( 集束搜索)

集束搜索结合了greedy search和维特比算法。使用beam size参数来限制在每一步保留下来的可能性词的数量。
在这里插入图片描述
在这里插入图片描述
在sequence2sequence模型中,beam search的方法只用在测试的情况,因为在训练过程中,每一个decoder的输出是有正确答案的,也就不需要beam search去加大输出的准确率。

注意力机制

注意力机制框架

Attention 是一种通用的带权池化方法,输入由两部分构成:询问(query)和键值对(key-value pairs)。Query , attention layer得到输出与value的维度一致 . 对于一个query来说,attention layer 会与每一个key计算注意力分数并进行权重的归一化,输出的向量o则是value的加权求和,而每个key计算的权重与value一一对应。
在这里插入图片描述在这里插入图片描述
不同的attetion layer的区别在于score函数的选择。

点积注意力

在这里插入图片描述

多层感知机注意力

在这里插入图片描述

引入注意力机制的Seq2seq模型

在时间步为t的时候。此刻attention layer保存着encodering看到的所有信息——即encoding的每一步输出。在decoding阶段,解码器的t时刻的隐藏状态被当作query,encoder的每个时间步的hidden states作为key和value进行attention聚合. Attetion model的输出当作成上下文信息context vector,并与解码器输入Dt拼接起来一起送到解码器:
Fig1 具有注意机制的seq-to-seq模型解码的第二步
下图展示了seq2seq机制的所以层的关系,下面展示了encoder和decoder的layer结构。
Fig2  具有注意机制的seq-to-seq模型中层结构

Transformer

该模型利用attention机制实现了并行化捕捉序列依赖,并且同时处理序列的每个位置的tokens,上述优势使得Transformer模型在性能优异的同时大大减少了训练时间。
1.Transformer blocks:将seq2seq模型重的循环网络替换为了Transformer Blocks,该模块包含一个多头注意力层(Multi-head Attention Layers)以及两个position-wise feed-forward networks(FFN)。对于解码器来说,另一个多头注意力层被用于接受编码器的隐藏状态。
2.Add and norm:多头注意力层和前馈网络的输出被送到两个“add and norm”层进行处理,该层包含残差结构以及层归一化。
3.Position encoding:由于自注意力层并没有区分元素的顺序,所以一个位置编码层被用于向序列元素里添加位置信息。
Fig Transformer架构
Transformer的过程可以总结如下。
Step 0: 一个Transformer由多级编码块和解码块堆叠而成。
Step 1: 第一级编码块接收原始输入。从第二级开始,上一级编码块和解码块的输出经过嵌入(embedding)和位置编码后,对应地输入本级的编码块和解码块。
Step 2: 每一个编码块分为multi-head注意层和前馈层。 利用输入计算出multi-head注意层的Q,K,V 注意层按(2)式计算出 H H H并输入前馈层。 编码块前馈层的输出就是本级编码输出。
Step 3: 每一个解码块分为掩模multi-head注意层、编码-解码注意层和前馈层。 利用输入计算出掩模multi-head注意层的Q,K,V,掩模注意层按(2)式计算出H. 通过H计算出编码-解码注意层的Q,同时用最后一级编码输出计算编码-解码注意层的K,V. 编码-解码注意层按(2)式计算出H并输入前馈网络。解码块前馈层的输出经softmax全连接层得到本级解码输出。
Step 4: 在编码块和解码块的每一层,引入short-cut来防止退化。
Step 5: 最终输出为最后一级解码输出。

卷积神经网络

组成

1.Convolutional layer(卷积层–CONV)
由滤波器filters和激活函数构成。
一般要设置的超参数包括filters的数量、大小、步长,以及padding是“valid”还是“same”。当然,还包括选择什么激活函数。
2. Pooling layer (池化层–POOL)
需要指定的超参数,包括是Max还是average,窗口大小以及步长。
3.Fully Connected layer(全连接层–FC)
指定超参数,包括神经元的数量,以及激活函数。

深度卷积神经网络(AlexNet)

特征:
1.8层变换,其中有5层卷积和2层全连接隐藏层,以及1个全连接输出层。
2.将sigmoid激活函数改成了更加简单的ReLU激活函数。
3.用Dropout来控制全连接层的模型复杂度。
4.引入数据增强,如翻转、裁剪和颜色变化,从而进一步扩大数据集来缓解过拟合。

使用重复元素的网络(VGG)

VGG:通过重复使⽤简单的基础块来构建深度模型。
Block:数个相同的填充为1、窗口形状为3×3的卷积层,接上一个步幅为2、窗口形状为2×2的最大池化层。
卷积层保持输入的高和宽不变,而池化层则对其减半。

⽹络中的⽹络(NiN)

LeNet、AlexNet和VGG:先以由卷积层构成的模块充分抽取空间特征,再以由全连接层构成的模块来输出分类结果。
NiN:串联多个由卷积层和“全连接”层构成的小⽹络来构建⼀个深层⽹络。
⽤了输出通道数等于标签类别数的NiN块,然后使⽤全局平均池化层对每个通道中所有元素求平均并直接⽤于分类。
在这里插入图片描述

GoogLeNet

1.由Inception基础块组成。
2.Inception块相当于⼀个有4条线路的⼦⽹络。它通过不同窗口形状的卷积层和最⼤池化层来并⾏抽取信息,并使⽤1×1卷积层减少通道数从而降低模型复杂度。
3.可以⾃定义的超参数是每个层的输出通道数,我们以此来控制模型复杂度。
在这里插入图片描述
GoogLeNet模型:
在这里插入图片描述

以上内容来自书籍《动手学深度学习》和公益课程《动手学》。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值