Task03:过拟合、欠拟合及其解决方案;梯度消失、梯度爆炸;循环神经网络进阶

错题回顾

测试数据集不可以用来调整模型参数,如果使用测试数据集调整模型参数,可能在测试数据集上发生一定程度的过拟合,此时将不能用测试误差来近似泛化误差。


知识点总结

训练误差:是指模型在训练数据集上表现出来的误差

泛化误差:是指模型在任意一个测试样本上表现出的误差的期望,并通常通过测试数据集的误差来近似

机器学习模型越简单,良好的实证结果就越有可能不仅仅基于样本的特性。——奥卡姆剃刀定律

泛化边界:统计化描述模型根据以下因素泛化到新数据的能力:

  • 模型的复杂程度
  • 模型在处理训练数据方面的表现

以下三项基本假设阐明了泛化:

我们从分布中随机抽取独立同分布 (i.i.d) 的样本。换言之,样本之间不会互相影响。(另一种解释:i.i.d. 是表示变量随机性的一种方式)。
分布是平稳的;即分布在数据集内不会发生变化。
我们从同一分布的数据划分中抽取样本。
在实践中,我们有时会违背这些假设。例如:

想象有一个选择要展示的广告的模型。如果该模型在某种程度上根据用户以前看过的广告选择广告,则会违背 i.i.d. 假设。
想象有一个包含一年零售信息的数据集。用户的购买行为会出现季节性变化,这会违反平稳性。
如果违背了上述三项基本假设中的任何一项,那么我们就必须密切注意指标。

过拟合的解决方案

欠拟合:根本原因是特征维度过少,模型过于简单,导致拟合的函数无法满足训练集,误差较大;

解决方法:增加特征维度,增加训练数据;

过拟合:根本原因是特征维度过多,模型假设过于复杂,参数过多,训练数据过少,噪声过多,导致拟合的函数完美的预测训练集,但对新数据的测试集预测结果差。 过度的拟合了训练数据,而没有考虑到泛化能力。

过拟合模型在训练过程中产生的损失很低,但在预测新数据方面的表现却非常糟糕。

过拟合是由于模型的复杂程度超出所需程度而造成的。机器学习的基本冲突是适当拟合我们的数据,但也要尽可能简单地拟合数据。

解决方法:(1)减少特征维度;(2)正则化,降低参数值。

减少过拟合总结:过拟合主要是有两个原因造成的:数据太少+模型太复杂

(1)获取更多数据 :从数据源头获取更多数据;数据增强(Data Augmentation)

(2)使用合适的模型:减少网络的层数、神经元个数等均可以限制网络的拟合能力;

(3)dropout ;

(4)正则化,在训练的时候限制权值变大;

(5)限制训练时间;通过评估测试;

(6)增加噪声 Noise: 输入时+权重上(高斯初始化) ;

(7)数据清洗(data ckeaning/Pruning):将错误的label 纠正或者删除错误的数据。

(8)结合多种模型: Bagging用不同的模型拟合不同部分的训练集;Boosting只使用简单的神经网络;

权重衰减:L2范数正则化(增加惩罚项)

丢弃法:不改变期望值

image

循环神经网络RNN

循环神经网络(Recurrent Neural Network, RNN)是一类以序列(Sequence)数据为输入,在序列的演进方向进行递归(Recursion)且所有节点(循环单元)按链式连接的递归神经网络(Recursive Neural Network)。

对循环神经网络的研究始于二十世纪80-90年代,并在二十一世纪初发展为深度学习(Deep Learning)算法之一 ,其中双向循环神经网络(Bidirectional RNN, Bi-RNN)和长短期记忆网络(Long Short-Term Memory Networks,LSTM)是常见的的循环神经网络。

循环神经网络具有记忆性、参数共享并且图灵完备Turing Completeness),因此在对序列的非线性特征进行学习时具有一定优势。循环神经网络在自然语言处理(Natural Language Processing, NLP),例如语音识别、语言建模、机器翻译等领域有应用,也被用于各类时间序列预报。引入了卷积神经网络(Convoutional Neural Network,CNN)构筑的循环神经网络可以处理包含序列输入的计算机视觉问题。

简单循环网络(Simple Recurrent Network,SRN)

SRN是仅包含一组链式连接(单隐含层)的循环神经网络,其中循环单元-循环单元连接的微Elman网络,闭环链接的为Jordan网络。对应的递归方式为:
Elman:,
Jordan: ,
和为激励函数,例如逻辑斯蒂函数或双曲正切函数。SRN在提出时使用BPTT进行监督学习,但不包含任何优化理论,因此无法学习长距离依赖 [44] ,在现代的机器学习问题中很少直接使用

错题归纳与知识点总结

循环神经网络
困惑度
采样方法

GRU

用以处理循环神经网络里梯度消失的问题

  • 重置⻔有助于捕捉时间序列⾥短期的依赖关系;
  • 更新⻔有助于捕捉时间序列⾥⻓期的依赖关系。

LSTM

长短期记忆long short-term memory:
遗忘门:控制上一时间步的记忆细胞 输入门:控制当前时间步的输入
输出门:控制从记忆细胞到隐藏状态
记忆细胞:⼀种特殊的隐藏状态的信息的流动

你可能感兴趣的:(Task03:过拟合、欠拟合及其解决方案;梯度消失、梯度爆炸;循环神经网络进阶)