热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

tensorflow下实现ResNet网络对数据集cifar10的图像分类

Inceptionv3传送门:Inceptionv3DenseNet传送门:DenseNetSegNet传送门:semanticsegmentation-segnetResNet论

Inceptionv3传送门:Inceptionv3

DenseNet传送门:DenseNet

SegNet传送门:semantic segmentation-segnet

ResNet论文地址:https://arxiv.org/pdf/1512.03385.pdf

先来简单讲讲ResNet的网络结构。ResNet的出现是为了解决深度网络中由于层数太多,导致的degradation problem(退化问题),作者在原论文中对比了较为“耿直”的深度卷积网络(例如以VGG为原型,不断加深层数)在不同层数的训练精度:

tensorflow下实现ResNet网络对数据集cifar-10的图像分类

从图中可见,18层的卷积结构反而要比34层的准确率要高,这就是所谓的degradation problem。而ResNet提出了一种比较新颖的解决方法,即identity mapping:在常用的卷积结构中加入一个shortcut connection(捷径)。如下图所示:

tensorflow下实现ResNet网络对数据集cifar-10的图像分类

以上图为例,对于一个input,对其做两层卷积操作(包含BN,RELU),在输出端加上卷积操作之前的数值。这里得到的输出作为后续卷积层的输入。这样一个操作便构成了Residual module。

其效果也很显著,相比未加入residual结构的卷积网络,其准确率是随着层数加深而增加的,如下图所示:

tensorflow下实现ResNet网络对数据集cifar-10的图像分类

其中作者在论文中还介绍了一些ResNet的结构变化,比如卷积核的改变:

tensorflow下实现ResNet网络对数据集cifar-10的图像分类

以及相应的ResNet A(在shortcut connection的部分为了使维度一致,仅使用zero-padding,不加任何训练参数), ResNet B(仅在需要使维度一致的情况下使用权值参数W计算Wx得到与输出一致的维度), ResNet C(在每一个shortcut connection均使用权值参数W对shortcut connection的输入进行训练)。不过C版的参数量相较于B版较大,且并没有较大的提升效果,并不推荐使用。

而在进行cifar10的数据集训练的时候,我这里使用的是A版,即不带参数训练的shortcut connection。网络的输入是32x32的图片,并且经过预处理对所有点减去平均值。第一层为一个3x3的卷积层。之后一共有6n个3x3的卷积层,其中对于为{32,16,8}的features maps分别为2n个卷积层。残差网络最后接一个全局的平均池化,以及一个10类的全连接。如果想修改成其他的网络结构(如resnet_56),只需要修改residual_blocks中的n参数即可。

其模型结构部分代码如下所示:

tensorflow下实现ResNet网络对数据集cifar-10的图像分类

其代码下载地址:Architecture        其中包含一个之前写好的inceptionv3 和一个正在写的DenseNet.




推荐阅读
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 代码如下:#coding:utf-8importstring,os,sysimportnumpyasnpimportmatplotlib.py ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 阿里Treebased Deep Match(TDM) 学习笔记及技术发展回顾
    本文介绍了阿里Treebased Deep Match(TDM)的学习笔记,同时回顾了工业界技术发展的几代演进。从基于统计的启发式规则方法到基于内积模型的向量检索方法,再到引入复杂深度学习模型的下一代匹配技术。文章详细解释了基于统计的启发式规则方法和基于内积模型的向量检索方法的原理和应用,并介绍了TDM的背景和优势。最后,文章提到了向量距离和基于向量聚类的索引结构对于加速匹配效率的作用。本文对于理解TDM的学习过程和了解匹配技术的发展具有重要意义。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 也就是|小窗_卷积的特征提取与参数计算
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了卷积的特征提取与参数计算相关的知识,希望对你有一定的参考价值。Dense和Conv2D根本区别在于,Den ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
  • 网址:https:vue.docschina.orgv2guideforms.html表单input绑定基础用法可以通过使用v-model指令,在 ... [详细]
  • 开源Keras Faster RCNN模型介绍及代码结构解析
    本文介绍了开源Keras Faster RCNN模型的环境需求和代码结构,包括FasterRCNN源码解析、RPN与classifier定义、data_generators.py文件的功能以及损失计算。同时提供了该模型的开源地址和安装所需的库。 ... [详细]
  • 通过Anaconda安装tensorflow,并安装运行spyder编译器的完整教程
    本文提供了一个完整的教程,介绍了如何通过Anaconda安装tensorflow,并安装运行spyder编译器。文章详细介绍了安装Anaconda、创建tensorflow环境、安装GPU版本tensorflow、安装和运行Spyder编译器以及安装OpenCV等步骤。该教程适用于Windows 8操作系统,并提供了相关的网址供参考。通过本教程,读者可以轻松地安装和配置tensorflow环境,以及运行spyder编译器进行开发。 ... [详细]
  • 本人学习笔记,知识点均摘自于网络,用于学习和交流(如未注明出处,请提醒,将及时更正,谢谢)OS:我学习是为了上 ... [详细]
  • 基于TensorFlow的Keras高级API实现手写体数字识别
    前言这个项目的话我也是偶然在B站看到一个阿婆主(SvePana)在讲解这个,跟着他的视频敲的代码并学习起来的。并写在自己这里做个笔记也为 ... [详细]
author-avatar
小鱼儿r6K2
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有