AdaGrad、RMSProp和Adam
AdaGrad、RMSProp以及Adam都是逐元素的自适应学习率方法(per-parameter adaptive learning rate methods),根据每个神经元的梯度变化进行权重调整,能够有效的提高模型精度
AdaGrad、RMSProp以及Adam都是逐元素的自适应学习率方法(per-parameter adaptive learning rate methods),根据每个神经元的梯度变化进行权重调整,能够有效的提高模型精度
文章very deep convolutional networks for large-scale image recognition对卷积网络深度进行了详细研究,证明了增加模型深度能够有效提高网络性能,其实现的VGGNet在2014年ImageNet的定位(localisation)和分类(classification)比赛中获得第一和第二名
VGGNet在AlexNet模型配置和学习的基础上,参考ZFNet使用更小的感受野和更小的步长,参考OverFeat在整个图像和多个尺度上对网络进行密集的训练和测试。最终,VGGNet使用
主要内容如下:
文章Network In Network提出一种新的深度网络结构mlpconv,使用微神经网络(micro neural network)代替传统卷积层的线性滤波器,同时利用全局平均池化(global average pooling)代替全连接层作为分类器,在当时的CIFAR-10和CIFAR-100上实现了最好的检测结果
文章Visualizing and Understanding Convolutional Networks提出一种可视化方法来观察中间层特征,以此发现不同模型层的性能分布,调整AlexNet参数的得到的ZFNet模型在ImageNet上得到了更好的分类性能;通过预训练ImageNet模型测试发现预训练大数据库能够提高模型的泛化能力
使用pytorch实现AlexNet,并进行cifar-10训练和测试
AlexNet在ImageNet LSVRC-2010的1000类分类比赛上实现了37.5% top-1和17.0% top-5的最小误差率,在LSVRC-2012上实现了15.3% top-5的最小误差率,这些数据是当时最好的识别结果,其实现代码也在google code上公开:cuda-convnet
本文学习AlexNet网络结构及其训练方法
pytorch提供了多种失活函数实现
下面首先介绍Dropout和Dropout2d的使用,然后通过LeNet-5模型进行cifar-10的训练
使用前馈神经网络进行检测,测试集的检测率总是低于训练集,尤其是训练集数量不大的情况下,原因在于神经网络在训练过程中不断调整参数以拟合训练数据,在此过程中也学习了训练集噪声,导致泛化能力减弱
随时失活(dropout)是一种正则化方法,其动机来自于进化中的性别作用理论(a theory of the role of sex in evolution),它通过训练多个不同网络模型,模拟模型组合的方式来提高网络性能,防止网络过拟合
主要内容如下: