经典神经网络论文阅读|AlexNet

AlexNet

Krizhevsky et al. "ImageNet classification with deep convolutional Neural Networks " NIPS 2012

动机(Why)

ImageNet 图像分类竞赛中现有模型准确度不足,为了刷点

方法(How)

  • 8层卷积神经网络
  • 使用ReLU,比Sigmoid效率高上很多
  • 数据增强:沿PCA主方向乘以随机系数向量,扩充数据
  • 使用Local Response Normalization 局部响应归一化;作用在同层中相邻的通道之间,之后的VGG论文指出没啥意义,徒增计算量。
  • 防止过拟合:使用重叠池化。后来都不这么做了,进一步说明浅层网络的超参调节策略不能迁移到深层网络中
  • 防止过拟合:dropout 0.5, 测试阶段失活一般神经元,测试阶段使用所有的神经元,但是将神经元的输出乘以0.5
  • minibatch size 128,按一批的平均梯度进行更新
  • SGD Momentum 0.9
  • 卷积层的偏置项为1,鼓励ReLU进行正向激活,其他层bias为0,weights都为N(0,0.01)
  • Learning rate 1e-2, reduced by 10
  • L1 weight decay 5e-4;
  • 测试的时候:7 CNN ensembles

拓展应用

  • 图像分类

英文表达

  1. Current approaches to object recognition make essential use of machine learning methods.
  2. However, the immense complexity of the object recognition task means that this problem cannot be specified even by a dataset as large as ImageNet, so our model should also have lots of prior knowledge to compensate for all the data we don’t have. (尽管解决巨复杂的物体识别任务,不能仅依靠超大的数据集,还需要模型有先进的知识来弥补未知的数据上的识别能力
  3. Despite the attractive qualities of CNNs, and despite the relative efficiency of their local architecture, they have still been prohibitively expensive to apply in large scale to high-resolution images. (CNN虽然有极具吸引力的特性和高效简单的结构,但训练大规模高分辨率图像还是过分高昂
  4. The specific contributions of this paper are as follows:
  5. In all, there are roughly 1.2 million training images, 50,000 validation images, and 150,000 testing images.

实验设计

  • 对比和其他分类模型的Top1,Top5准确率
  • 剥离实验,发现层数越多越好
  • 双GPU并行训练
  • 对倒数第二层的dim4096向量,找到欧式距离最近的几个图,发现相似

优缺点分析

优点:

  1. 在以往的网络中加深了深度,又采用多种抗过拟合的方法

  2. 采用卷积操作,更好提取特征

  3. 确实有非常亮眼的准确率提升

缺点:

1. 并没有说明白这个神经网络所采用的一些方法为什么好,缺少解释
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 学习卷积神经网络需要以下步骤: 1. 了解基本概念:首先你需要了解神经网络、卷积、池化、前馈网络等基本概念。 2. 学习数学知识:学习卷积神经网络需要对线性代数、微积分等数学知识有扎实的基础。 3. 研究论文阅读和理解相关的论文是学习卷积神经网络的重要组成部分。 4. 实践:最好的学习方法就是实践,在计算机上使用深度学习框架(如 Tensorflow、PyTorch)实现自己的卷积神经网络。 5. 参加课程或培训:学习卷积神经网络的有用的方法之一是参加专业的课程或培训。 6. 社区参与:加入相关的社区,与其他专家和爱好者交流,可以获得更多的知识和技巧。 ### 回答2: 学习卷积神经网络可以遵循以下步骤: 1. 理解基本概念:卷积神经网络(CNN)是一种用于图像识别和分类的深度学习模型。了解卷积层、池化层、激活函数和全连接层等基本概念是学习CNN的第一步。 2. 学习数学基础:掌握线性代数和微积分是理解CNN的重要前提。学习卷积运算、梯度下降、反向传播等数学概念对于深入理解CNN的工作原理非常有帮助。 3. 研究经典模型:CNN领域有很多经典模型,如LeNet-5、AlexNet、VGGNet和ResNet等。通过研究这些模型的网络结构、参数设置和最佳实践,可以更好地了解CNN的应用和创新点。 4. 探索开源库:TensorFlow、PyTorch、Keras等开源深度学习库都提供了丰富的CNN模型和相关教程。通过使用这些库,可以加深对CNN的理解,并从实践中学习如何构建和训练CNN模型。 5. 实际项目的实践:在学习理论知识的同时,通过参与实际项目,如图像分类、目标检测和人脸识别等任务,可以将所学知识应用到实际中,并不断调整和改进CNN模型。 6. 与他人交流和合作:参与学术论坛、社群和与其他学习者的讨论,可以共享经验和资源,并从其他人的反馈中不断提高。 总之,学习卷积神经网络需要一定的数学基础,理解经典模型,并通过实践和与他人的交流来巩固所学的知识。不断学习和实践,掌握CNN的原理和应用,可以为深度学习方向的研究和实践提供坚实的基础。 ### 回答3: 学习卷积神经网络可以采取以下步骤。 首先,了解卷积神经网络的基本概念和原理。卷积神经网络是一种深度学习模型,具有通过卷积运算提取图像特征的能力。了解卷积运算的定义、作用和实现方式,以及卷积神经网络的层次结构和参数设置,是学习的基础。 其次,学习卷积神经网络的常见模型和算法。如LeNet、AlexNet、VGGNet、GoogLeNet和ResNet等。深入了解这些模型的结构、特点和应用场景,可以通过阅读相关的研究论文和教程来学习。 第三,进行实践和编程。选择合适的开发环境和工具,如Python和深度学习库TensorFlow或PyTorch等,实践编写卷积神经网络的代码。可以从简单的图像分类任务开始,逐步提高难度,理解和实现不同模型的训练过程。同时要注意调试和优化,以提高模型效果。 第四,参与相关的竞赛或项目。参加Kaggle等机器学习竞赛,或者加入开源社区共同开发项目,可以和其他学习者交流和分享经验,提高自己的卷积神经网络技能。 最后,不断学习和探索。深度学习领域发展迅速,新的卷积神经网络模型和算法不断涌现。要保持对最新研究和技术的关注,阅读论文、参加学术会议和研讨会,不断扩展自己的知识和技能。此外,通过复现经典模型和开展自己的研究项目,可以加深对卷积神经网络的理解和应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值