Overcoming catastrophic forgetting in neural networks
-
arxiv: 1612.00796
-
序列化的学习方法对AI发展至关重要。而目前连接型的神经网络存在灾难性遗忘问题,本文提出一种方式可以克服这个问题,使得训练的网络能够长时间保存知识。该方法通过选择性地减缓任务的重要程度来记住旧任务。通过MNIST数据集的分类任务和Atari 2600游戏任务实验证明了该方法是可扩展和有效的。
arxiv: 1612.00796
序列化的学习方法对AI发展至关重要。而目前连接型的神经网络存在灾难性遗忘问题,本文提出一种方式可以克服这个问题,使得训练的网络能够长时间保存知识。该方法通过选择性地减缓任务的重要程度来记住旧任务。通过MNIST数据集的分类任务和Atari 2600游戏任务实验证明了该方法是可扩展和有效的。
迭代收缩阈值算法(Iterative shrinkage-thresholding algorithm, ISTA)是一种用于信号处理和图像重建的优化算法。
本文将介绍ISTA算法原理和其处理地震反演问题的实际应用。
对于一个线性变换问题y=Ax+b,其中A和y已知,b为未知噪音,我们需要求解x。
本质上这就是一个线性回归问题,从线性回归可知我们可以使用梯度下降解决这个问题。
梯度下降会带来新的问题,对于无约束的优化问题
xmin{F(x)≡f(x)}.(1)
若实函数F(x)在点a处可微且有定义,梯度下降总是认为F(x)在点a沿着梯度相反的方向−∇F(a)下降最快。
所以当f(x)连续可微时,若存在一个足够小的数值t>0使得
x2=x1−t∇F(a).(2)
则有F(x1)≥F(x2)。
梯度下降核心便是通过式2找到序列{xk},使得F(xk)≥F(xk−1)。
显然,此时初值的选取成了关键,即梯度下降可能陷入局部最优,同时tk的选取(机器学习中的学习率)也是关键,太小会导致迭代太慢,太大会导致无法收敛。
深度残差网络表现出很好的分类准确率,该文是作者在原始ResNet的基础上分析了残差块背后的数学原理。
这是一种基于整合全局上下文信息的金字塔池化模块的网络架构,根据全局先验信息能够有效地进行图像分割。
在深度神经网络中,感受野的大小决定了使用上下文信息的能力。常用的池化例如全局平均池化(GAP)利用全局信息进行池化,但在复杂场景下表现并不好,作者希望能够有一个基于子区域的全局上下文信息表示,于是提出了金字塔池化的概念。
在金字塔池化模块中,特征图先经过池化操作(使用自适应平均池化)进行下采样,再进行上采样(使用二次线性差值)得到新的特征图并与原特征图拼接。
同时金字塔池化融合了四个比例的特征(默认是[1, 2, 3, 6])。
GAN的本质是将生成器的分布逼近真实分布。VAE则是训练两个分布q,p分别表示从真实数据到噪声和噪声到生成数据的映射。
扩散模型和VAE类似,也是一套从真实数据到噪声的分布以及噪声到生成数据的分布,但是在扩散模型中将这个过程分成了T步。
扩散模型包含两个部分:扩散和和逆扩散过程。
在CNN中,通过卷积的引入能够很好的对图片进行分类,但是如何识别图片中的物体依然是一个难题。CNN会在卷积层之后接入若干全连接层,将卷积层产生的特征图映射为固定长度的特征向量进行输出,每个值代表样本属于某个类别的概率。
全卷积网络(Fully Convolutional Nerworks,FCN)则是抛弃最终的全连接层,直接对图像进行像素级的分类,在FCN中将引入反卷积层将对卷积层的输出进行采样恢复为输入图像的大小,从而对每个像素产生一个预测值,最后逐个像素计算softmax分类损失获取最终分类预测。
在RNN隐藏层之中的节点不再是相互独立的,每个节点将包含三部分输入数据
上一层的输出、自身上一时刻输出、上一节点输出。
可以看到隐藏层中的节点不仅有来自输入层的连接,还有节点之间的自连和互连。
其中节点的自连接代表节点的输出会再次作为节点的输入,但这并不是马上完成的,数据会经过延迟器在下一时刻再进入该节点。
也就是说在RNN中包含了对时序特征的处理,对于同一数据根据其前文不同也将得到不同的输出。这也便是RNN中最重要的特征,通过引入延迟器来让网络模型包含“记忆”。
延迟器只是一个虚拟单元,也称为RNN的记忆单元,它的作用便是保存上一次的节点状态信息,每次节点计算时将使用上一次的状态信息参与进行并更新状态,可以理解为一个动态偏置,状态信息的计算与神经元计算类似,它也包含权重参数
st=f(wxt+vst−1)
其中t代表时刻信息,f是一个非线性激活函数,w,v分别为输入的权重参数和状态的权重参数。
卷积神经网络(Convolutional Neural Networks, CNN)是深度学习中一种重要的神经网络结构,特别适用于处理图像相关的机器学习问题。CNN通过模拟人脑视觉皮层对图像的处理机制,自动提取图像中的特征,从而实现对图像的识别和理解。
在传统的MLP中,网络被简单的分为了表现层(特征提取)和决策层(输出),而在CNN中网络被进一步细分,以便能够更好的提取图像中的局部特征,具体分层结构为
激活函数的主要作用是加入非线性变换防止多层网络退化为单层网络。
激活函数的选择遵循如下标准:
这个函数我们已经很熟悉了,它又称为S形函数,能够将输入压缩到(0,1)中并且处处连续可导,输出非常平滑。
函数表达式为
Λ(z)=1+e−z1
其中(0,0.5)是函数中心点。虽然该函数在ML中应用广泛,但在神经网络模型中有些情况下并不是一个最好的选择,由于数据的不同,该函数可能会引起如下问题。