位置: IT常识 - 正文

Alexnet论文介绍(超详细)——ImageNet Classification with Deep Convolutional Neural Networks(alex研究原文)

编辑:rootadmin
Alexnet论文介绍(超详细)——ImageNet Classification with Deep Convolutional Neural Networks

推荐整理分享Alexnet论文介绍(超详细)——ImageNet Classification with Deep Convolutional Neural Networks(alex研究原文),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:alexnet的缺点与解决办法,alexnet原理,alexnet参数,alexnet优缺点,alexnet原理,alex研究原文,alexnet模型,alexnet 论文,内容如对您有帮助,希望把文章链接给更多的朋友!

近期开始阅读cv领域的一些经典论文,本文整理计算机视觉的奠基之作——Alexnet

论文原文:ImageNet Classification with Deep Convolutional Neural Networks(有需要论文原文的可以私信联系我)

本文的阅读方法是基于李沐老师的B站讲解视频,需要细致去看的小伙伴可以去搜索,链接如下:

9年后重读深度学习奠基作之一:AlexNet【论文精读】_哔哩哔哩_bilibili

本文整理用于之后自己能够更快的回忆起这篇论文,所以有些地方记录的可能没那么严谨,有问题的地方欢迎各位指出和讨论,我及时修改,谢谢各位!

如果该论文笔记对你有所帮助,希望可以点个赞关注一下,之后会继续更新cv领域的一些经典论文的笔记,谢谢大家!

当我们在阅读一篇论文时,可以分为三遍阅读:

目录

第一遍阅读:

Abstract—摘要:

Discussion—讨论

Figure and Table—重要的图和表

 第二遍阅读:

Introduce—介绍

The Dataset—数据集

The Architecture—网络结构

ReLU Nonlinearity—非线性激活函数ReLU

Training on Multiple GPUs—用多个GPU训练

Local Response Normalization——局部归一化

Overlapping Pooling—重叠池化

Overall Architecture—整体网络架构

Reducing Overfitting—减少过拟合

Data Augmentation—数据增强

Dropout—正则化

Details of learning—学习的细节

 Results—实验结果

Qualitative Evaluations—定性评估

第三遍阅读

第一遍阅读:Abstract—摘要:

摘要简单总结来说提出了以下四点:

表示了我们用了一个深度卷积神经网络来进行图片分类,取得了一个非常好的效果。深度卷积网络由60million个参数,65w个神经元,以及五个卷积层和三个全连接层组成。为了加快训练,用到了GPU加速实现。用了dropout这个正则化方法来减少过拟合。Discussion—讨论

总结来说讨论就是作者的一些吐槽以及后续的一些工作打算,大概分为了以下三点:

我们的研究表明深度很重要,如果去掉一个卷积层,那么准确率会下降2%。(这一点现在看来没那么准确,因为少一层导致准确率下降也有可能是因为参数没找好,找好参数也可以达到之前的准确率的,所以现在来看,深度和宽度都很重要)没有使用无监督进行预训练。这个是有一定历史背景的,在Alexnet网络提出之前有监督学习打不过无监督学习,但是在Alexnet提出之后,引起了有监督学习的热潮,直到最新的语言模型bert的提出,才慢慢的将人们又拉回了无监督学习。最后提出想将更大更深的神经网络应用到video上,因为video计算量非常大,且有时序信息(时序信息有很多能帮助你理解在空间的图片信息)。时序信息在现在来看发展也是比较慢的。Figure and Table—重要的图和表左侧图:八张ILSVRC-2010测试图像和我们的模型认为最可能的五个标签。正确的标签写在每张图片下面,分配给正确标签的概率也用红色条显示(如果恰好位于前5位)。右侧图:第一列中有五幅ILSVRC-2010测试图像。剩下的列显示了在最后一个隐藏层中生成特征向量的六个训练图像,这些特征向量与测试图像的特征向量之间的欧氏距离最小(简单来说可以理解为倒数第二层提取出的特征向量最相似的几个图像,也就是说我们的神经网络在最后第二层输出的特征,在语义空间里面表现的非常好)。

 下面两张表格是与之前最好的模型做的对比以及一些数据,这里不做详细解释了:

 

 

 结构流程图非常重要,在第二遍阅读时再详细解释:

 

 第二遍阅读:Introduce—介绍

Introduce部分主要说了以下几点:

引出ImageNet这个数据集很大很好。对于ImageNet这个很大的模型,我们采用CNN来作为我们的模型。对于CNN计算成本高(容易overfitting+训练不动),我们利用GPU以及高度优化的2D卷积来实现CNN的训练。主要贡献:我们训练了一个很大很好的模型,结果特别好。我们是怎么做的?用了一些不寻常的方法以及用了什么方法来避免过拟合,并且说明深度似乎很重要。网络的大小受到了GPU的可用内存以及我们可容忍时间的影响,说了一下他们用的GPU。The Dataset—数据集ImageNet数据集包含超过1500万张高分辨率图像的数据集,这些图像属于大约22000个类别。ILSVRC的比赛,ILSVRC使用ImageNet的一个子集,1000个类别中的每一个都有大约1000个图像。总共大约有120万张培训图像、50000张验证图像和150000张测试图像。图像处理:ImageNet这个数据集不像其他数据集一样,它没有对数据进行裁剪。所以我们要先对数据集进行裁剪,裁剪为:256*256的尺寸大小。具体裁剪方法:先对原始图片进行缩放,将短边变成256的大小,另一个长边在这一步操作中也会根据长宽比进行调整,然后第二步从图片中心对长边进行两侧的裁剪,得到256*256的尺寸大小。我们没有对图像进行任何的预先处理,比如抽取特征、抽取SIFT特征等等,我们实现了一个end to end 的方式,也就是说直接将原始图片(原始文本)输入到神经网络模型,他就能实现我们想要的功能。The Architecture—网络结构

网络架构分为八个层,其中有五个卷积层和三个全连接层。下面每一小节都介绍了一些新颖的不同寻常的功能:

ReLU Nonlinearity—非线性激活函数ReLU

讲述了一下我们采用的激活函数是非线性的ReLU函数。这个非线性激活函数是不饱和的,但是训练速度要比饱和的非线性激活函数tanh和sigmoid要快的多。(但具体为什么快没具体说,现在的视角看来也没快多少,都差不多,但是ReLU函数要简单所以用的多)

下图的实线为采用ReLU的误差下降率,虚线则是tanh的下降率,明显ReLU下降起来要快得多。

Training on Multiple GPUs—用多个GPU训练Alexnet论文介绍(超详细)——ImageNet Classification with Deep Convolutional Neural Networks(alex研究原文)

这一部分偏工程型,不用太注意这些细节,主要是说了图片太多我们无法在一个GPU上训练,所以把网络切开训练,之后的架构图中会说明怎么切的,切完之后用了两个GPU去训练。

Local Response Normalization——局部归一化

总结来说,在ReLU层之前我们应用了normalization得到了一个更好的效果。(注:这个现在看来不重要了,因为之后没人用过这种normalization技术,而且我们有了更好的normalization方法,下述方法也不用了,所以不重要)

首先说了ReLU虽然有一个性质是说不需要input normalization来避免饱和,但是用一下normalization效果会更好

下面复杂的公式可以忽略掉,但是这里我们也放上了:

Overlapping Pooling—重叠池化

采用了重叠pooling。

总结一些:一般来说两个pooling是不重叠的,但是这里采用了一种对传统的pooling改进的方式,效果很好。知道这些即可。

Overall Architecture—整体网络架构

上图为整体流程图,说明几点:

因为在两个GPU上运行,所以网络结构被一切为二,上下两部分各自训练各自的,各有各的参数核,结构都是一样的;整个结构有八层,前五层为卷积层,后三层为全连接层,最后再跟一个1000路的分类激活函数softmax,相当于多个logistic回归来进行多元分类。二、四、五层只与自己之前的核有关系,就是只与自己这个GPU前一层训练的输出有关系。第三层卷积层与前一层的两个GPU训练出来的都有关系,在通道维度上做了一个融合。全连接层就与前一层中所有神经元相连。之前提到的Response-normalization应用在了第一层和第二层的卷积层。上一节提到的Max—pooling应用在了有Response-normalization的层以及第五卷积层。八层每一层都应用了ReLU函数。这些层的顺序:Response-normalization放在ReLU之前,然后Max—pooling跟在ReLU之后。规律:我们输入的图片从一个又高又宽又扁的一个形状,慢慢变为了一个宽和高都很小,但是很长的一个张量,这是说我们的空间信息被压缩了也就是从一开始的224变为了后面的13,也就是13中的一个像素能表示之后一大片像素。通道数变多也就是变长了,通道数可以理解为对于一个模式的识别,例如通道数为192那么说明可以识别图中192个模式,例如猫腿、爪子这种模式。所以说整个过程就是空间信息被压缩,但是语义信息空间慢慢增加。

总结:整个过程就是一张图片,经过模型处理变为了一个4096维的向量,这个向量可以把中间的语义信息表示出来。机器学习可以认为是一个压缩知识的过程;具体来讲就是我们原始的一个图片,文字或者视频输入到一个模型中,这个模型就会把它压缩为一个向量,这个向量机器可以识别,用来实现别的任务,例如分类等等。

Reducing Overfitting—减少过拟合

避免过拟合采用了两种方法:数据增强和dropout

Data Augmentation—数据增强

减少图像数据过度拟合的最简单也是最常见的方法是使用保留标签的变换人为地放大数据集。这里用了两种方式:

通过从256×256图像中随机提取224×224的图像,并在这些提取的图像上训练我们的网络来实现这一点。这将使我们的培训集的规模增加了2048倍。但是有个问题也不能说就是2048倍,因为很多图片都是相似的。采用PCA的方式对RGB图像的channel进行了一些改变,使图像发生了一些变化,从而扩大了数据集。Dropout—正则化

随机的将隐藏层的输出以50%的概率设为0,相当于一个L2的正则化,只不过用了这种方式实现了L2正则化的功能。

Details of learning—学习的细节

SGD:我们使用随机梯度下降法(SGD)训练我们的模型,批量大小为128,momentum为0.9(对传统SGD增加了动量这个观点,来解决传统SGD的一些问题,例如优化过程非常不平滑或者梯度下降很低效的时候),weight decay为0.0005(可以理解为是一个L2的正则化项,用在优化算法上而不是模型上)。我们发现,这种少量的weight decay对模型的学习很重要。换句话说,这里的weight decay不仅仅是一个正则化器:它减少了模型的训练误差。权重w的更新规则为

初始化参数:用均值为0 ,方差为0.01的高斯随机变量去初始化了权重参数(0.01是一个非常好的数,不大也不小,如果网络过大,例如BERT ,我们才用到0.02)。然后偏置bias也进行了初始化,不过这里不太重要,因为数据平衡的话初始为0最好,但是这里初始1效果更好一些,这个地方也没有继续深入研究。

学习率:我们在所有层上使用相同的学习率,设为0.01。但验证误差不降的时候我们就手动的乘以0.1,也就是降低十倍。也有自动的方法,例如Resnet,训练120轮epoch,初始学习率也是设为0.01,每30轮降低十倍,本文是训练了90个epoch,每一次是120w张图片。当然现在我们都不采用十倍十倍去降低了,我们采用更平滑的降低方式,例如利用cos函数去降低,如下图,蓝色线为本文中的降低方式,十倍十倍去降,红色线是我们现在用的,一开始学习率设的大一些,慢慢下降,这样更高效。

 Results—实验结果

实验部分就知道效果就可以了,具体怎么实验的不用关心,除非你需要重复他的实验。

小知识:训练集、验证集、测试集。验证集就是说用来调参的数据集,可以一直用来调参,但是测试集就运行几次用来看这个模型的效果怎么样。

Qualitative Evaluations—定性评估

第一遍阅读时讲的图,不作详述了。

这里记录一点:就是说神经网络一直被人诟病的一个问题,不知道神经网络内部到底训练了一个什么东西,这里右边这个图展示出了最后4096维的向量,可以在一定程度证明神经网络内部的特征到底是一个什么东西。

总结:偏底层的神经元学习的是一些纹理、方向等;偏上的神经元则是学到的是全局点,例如一个手、一个头之类的。

第三遍阅读

再看一些第二遍未看懂的细节,例如激活函数的饱和和非饱和,这里不带着读第三遍了。

本文链接地址:https://www.jiuchutong.com/zhishi/298864.html 转载请保留说明!

上一篇:Vue实战篇三十五:实现滑动拼图验证登录(vue实例教程)

下一篇:Vue权限控制(vue权限控制设计)

  • bose蓝牙耳机怎么重新配对(bose蓝牙耳机怎么接听电话)

    bose蓝牙耳机怎么重新配对(bose蓝牙耳机怎么接听电话)

  • iphone丢了如何用另一个手机定位找回(iphone丢了如何用另一个手机发消息)

    iphone丢了如何用另一个手机定位找回(iphone丢了如何用另一个手机发消息)

  • word重复上一步快捷键(word重复上一步快捷键是什么)

    word重复上一步快捷键(word重复上一步快捷键是什么)

  • enter current password什么意思(enter current password翻译中文)

    enter current password什么意思(enter current password翻译中文)

  • 拼多多加速包有什么用(拼多多使用加速礼包真的能砍成吗)

    拼多多加速包有什么用(拼多多使用加速礼包真的能砍成吗)

  • VLOOKUP何时绝对引用(vlookup函数的绝对运用的快捷键是什么?)

    VLOOKUP何时绝对引用(vlookup函数的绝对运用的快捷键是什么?)

  • 苹果耳机一代一个可以用一个不能用(苹果耳机一代一边响一边不响)

    苹果耳机一代一个可以用一个不能用(苹果耳机一代一边响一边不响)

  • 怎样取消抖音收藏的视频(怎样取消抖音收藏的作品)

    怎样取消抖音收藏的视频(怎样取消抖音收藏的作品)

  • 手机无面容是什么意思(无面容手机影响使用吗?)

    手机无面容是什么意思(无面容手机影响使用吗?)

  • 底部任务栏怎么不显示(底部任务栏怎么完全显示)

    底部任务栏怎么不显示(底部任务栏怎么完全显示)

  • qq扩列资料为什么一直改不了(qq扩列资料为什么保存失败)

    qq扩列资料为什么一直改不了(qq扩列资料为什么保存失败)

  • 手机别人打电话屏幕不显示咋回事(手机别人打电话打不进来怎么回事)

    手机别人打电话屏幕不显示咋回事(手机别人打电话打不进来怎么回事)

  • 美版三网通8p是高通基带吗(美版三网4g)

    美版三网通8p是高通基带吗(美版三网4g)

  • 手机电量回升是怎么回事(手机电量突然大幅度上升)

    手机电量回升是怎么回事(手机电量突然大幅度上升)

  • 固态硬盘用多长时间(固态硬盘多长多宽)

    固态硬盘用多长时间(固态硬盘多长多宽)

  • 实际存储数据的对象是(实际存储在数据库中的表是什么)

    实际存储数据的对象是(实际存储在数据库中的表是什么)

  • iphone美版和国行的区别(iphone美版和国行价格差多少)

    iphone美版和国行的区别(iphone美版和国行价格差多少)

  • 荣耀20如何设置后台运行(荣耀20如何设置桌面时间)

    荣耀20如何设置后台运行(荣耀20如何设置桌面时间)

  • 微信如何不被察觉退群(怎么防止微信被偷看)

    微信如何不被察觉退群(怎么防止微信被偷看)

  • 上班族兼职赚钱方式有哪些(上班族 兼职)

    上班族兼职赚钱方式有哪些(上班族 兼职)

  • websoc是什么(webs是什么意思)

    websoc是什么(webs是什么意思)

  • 小米手机定位怎么关(小米手机定位怎么改变自己的位置)

    小米手机定位怎么关(小米手机定位怎么改变自己的位置)

  • qq音乐如何投屏(qq音乐如何投屏到电视视频)

    qq音乐如何投屏(qq音乐如何投屏到电视视频)

  • YOLOv5内置--hyp超参配置文件对比(yolov5最新版)

    YOLOv5内置--hyp超参配置文件对比(yolov5最新版)

  • ps橡皮擦工具组中橡皮擦工具的使用方法(ps橡皮擦工具的作用是什么)

    ps橡皮擦工具组中橡皮擦工具的使用方法(ps橡皮擦工具的作用是什么)

  • 收到待报解预算收入怎么查退的什么税
  • 销售使用过的车辆
  • 汇算清缴现金流量表怎么填
  • 股东投资属于什么会计要素
  • 折旧额对应纳税所得额的影响
  • 存货造成的损失
  • 出口货物退运管理办法
  • 个体工商户核定应税所得率
  • 合作建房的土地出让金在土地增值税中可以加计扣除嘛
  • 酒店里的水电费怎么收
  • 实收资本需要计提印花税吗
  • 建筑物加高违法么
  • 应付职工薪酬账务处理例题
  • 税法是否认可低税收
  • 土地受让人是什么意思
  • 个体工商户允许哪些经营范围
  • 主营业务收入会计分录怎样写
  • 出口报关和不报关的区别
  • 计提税金及附加怎么算
  • 未办理土地使用权证房屋买卖 案例
  • 电脑默认网关不可以用
  • windows搭建dvwa
  • 保险业营改增
  • 融资租赁与经营租赁的联系
  • 外国企业如何在阿联酋注册商标
  • 开具增值税专用发票和普通发票的区别
  • phprestfulapi框架
  • 外商投资企业 外资企业
  • 最常用的基金业务
  • 监事和财务负责人可以一个人么
  • php强大吗
  • php绘图库
  • 电子发票是正规发票吗能报销吗
  • 退货的会计处理分录
  • 增值税申报系统登录密码
  • 房地产销售折扣
  • mysql中文乱码怎样用代码解决
  • 印花税报少了交税了怎么办
  • sql server join
  • 增值税纳税申报类型有哪些
  • 预包装销售是什么意思
  • 营改增后土地出让增值税
  • 职工食堂的费用,会计上怎么做账?
  • 差额征税问题
  • 工会经费教育经费计提比例
  • 发生了销售交易但没有在销售日记
  • 出口额和外汇收入
  • 销售未开票怎么做分录
  • 销售货物多收款怎么处理
  • 税后扣税
  • 组织员工旅游的租宿费的税额是什么
  • 农产品成本包含所消耗的物资费用
  • 开出口未开出口怎么办
  • 税控盘和金税盘可以安装在一个电脑
  • 财务会计与管理会计的区别与联系?谁更棒?
  • mysql索引作用的简单理解
  • 微软windows8.1
  • win10 win7兼容模式
  • 查找注册表命令
  • windows8中“同步你的设置”使用介绍(让你的设置自动同步)
  • 2021年win10新系统版本
  • 删除kernel
  • linux安装virsh
  • win10系统自带虚拟机无法启
  • win10预览文件怎么显示内容
  • 教你怎样用竹子搭棚子
  • cocos lua教程
  • Unity3D游戏开发培训课程大纲
  • 计算字符串的长度使用哪个函数?
  • shell脚本取n天前的日期
  • js中tolocalestring
  • python如何用
  • js原型使用场景
  • twist python
  • 江苏省税务局土地增值税清算公告
  • 年应税销售额超过小规模纳税人标准的企业
  • 减免性质代码怎么填写才正确
  • 北京朝阳区地税局地址电话
  • 重庆网上社保怎么交
  • 地税怎么交税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设