第四讲_图像识别之图像分类Image Classification

  • 目录

图片分类

  • 性能指标:top1,top5
  • ILSVRC:每种任务数据集不一样
  • imageNet:根据WorldNet组织的图片集,为每个名词提供平均1000张图片
  • 网络进化

卷积神经网络(CNN)

  • 基础神经网络:

    • 神经元(输入,w,b,sigmoid)
    • 优化:梯度下降,BP反向传播(链式规则),3~5层
    • 优化交叉熵(之前是均方误差):批量梯度下降,随机梯度下降(学习率、步长,扰动->动量算法momentum)
  • 构建CNN的基本层

卷积层

  • 不同的损失函数:注意跳出鞍点(在一个方向极小值,另一个方向极大值)


  • ReLU激活函数:分段线性函数,无饱和问题,明显减轻梯度消失问题
  • 卷积步长大于1,有降维的作用

池化层

  • 特征融合,降维

全连接层

Softmax层

工程实际

AlexNet

  • 基本概述
  • 局部响应归一化

Network-in-Network(NiN)

  • 1*1卷积层,实现特征的降维,这个就是卷积核的大小

VGG网络-2014

  • 卷积核的分解
  • 由于最后的卷积层--->第一个全连接;就是需要全局卷积,这里的卷积核大小是超参数,是固定的参数,所以对输入图片的大小有要求;而ResNet对输入图片大小没有要求
  • 网络结构,D,E结构用的多一些

GoogLeNet网络

  • 进化顺序
  • Inception V1网络
  • 和ResNet一样有基本的模块

  • 取消全连接层;最后的卷积层--->第一个全连接需要的参数最多
  • 网络结构
  • 网络参数
  • 两个辅助分类器:深度网络中,梯度回传到最初层,严重消失;有效加速收敛,测试阶段不使用

Inception V2网络

  • 核心有批归一化
  • 一批一批batch进行处理,每一批在第k个通道进行均值方差归一化操作


Inception V3网络

  • 卷积进行分解:非对称卷积;三种分解方案

  • 高效的降尺寸:避免表达瓶颈

  • 网络整体框架

ResNet残差网络

  • skip/shortcut connection
  • 虚线有降维作用
  • 往更深的走
  • 原始输入改为256,优化就是先通道降维,然后卷积,升维
  • 网络整体情况:5个卷积组

Inception V4网络

  • 引入残差

ResNeXt网络

  • 概况
  • 1**1卷积就相当于全连接降通道数
  • 32**4d块,保证参数量不变;32*4=128通道是普通64通道的2倍
  • 分支数就是基数,网络宽度就是分支数*每个分支的通道数

CNN设计准则

  • 避免信息瓶颈:数据量H**W(尺度大小)*C(通道数)变换要缓慢;通道数要不能弥补尺度减小,但要缓慢

  • 通道(卷积核)数量保持在可控范围内

  • 感受野要足够大

  • 分组策略--降低计算量
  • 低秩分解

实验结果

  • 代码实验ResNet

第四讲_图像识别之图像分类Image Classification的更多相关文章

  1. COM_第四讲_保存GUID_优化使用代码

    优化以前的代码,让使用者更方便 一丶 优化思路 1.我们可以将我们写的GUID(类工厂的ID)保存到注册表中,并且保存一下DLL的文件路径,遍历注册表去DLL路径即可. 2.每个类工厂我们就要使用一个 ...

  2. 视觉slam学习之路(一)看高翔十四讲所遇到的问题

      目前实验室做机器人,主要分三个方向,定位导航,建图,图像识别,之前做的也是做了下Qt上位机,后面又弄红外识别,因为这学期上课也没怎么花时间在项目,然后导师让我们确定一个方向来,便于以后发论文什么. ...

  3. 第二讲_图像数据处理Image Data Processing

    第二讲_图像数据处理Image Data Processing 深度模型出现后被弱化,但是思想的影子在深度模型中可以看到的 图片存储原理 RGB颜色空间:三通道(b,g,r),加法混色 CMY(K): ...

  4. 《视觉SLAM十四讲》第2讲

    目录 一 视觉SLAM中的传感器 二 经典视觉SLAM框架 三 SLAM问题的数学表述 注:原创不易,转载请务必注明原作者和出处,感谢支持! 本讲主要内容: (1) 视觉SLAM中的传感器 (2) 经 ...

  5. 背包四讲 (AcWing算法基础课笔记整理)

    背包四讲 背包问题(Knapsack problem)是一种组合优化的NP完全问题.问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高 ...

  6. Linux设备管理(四)_从sysfs回到ktype

    sysfs是一个基于ramfs的文件系统,在2.6内核开始引入,用来导出内核对象(kernel object)的数据.属性到用户空间.与同样用于查看内核数据的proc不同,sysfs只关心具有层次结构 ...

  7. linux 学习3 第四讲 文件常用命令

    好几天没有在网上总结了.我把ppt先誊写在本子上,这样听的时候记录就方便很多,添些东西就可以. 我想先看shell那部分,但是没有之前几章的准备,是没法跟着视频动手操作的.所以还是按部就班得学习. 虽 ...

  8. C Primer Plus_第四章_字符串和格式化输入输出_编程练习

    Practice 1.输入名字和姓氏,以"名字,姓氏"的格式输出打印. #include int main(void) { char name[20]; char family[2 ...

  9. Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation

    原文 http://blog.csdn.net/abcjennifer/article/details/7749309 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

随机推荐

  1. 【Open-Falcon】Linux下安装Open-Falcon

    一.Open-Falcon组件简述 [Open-Falcon绘图相关组件] Agent:  部署在目标机器采集机器监控项 Transfer : 数据接收端,转发数据到后端Graph和Judge Gra ...

  2. org.hibernate.AnnotationException: No identifier specified for entity: com.example1.demo1.Entity.User错误

    最近在公司带人,他们问我的问题在这里也顺便总结下. 此项目为SpringDataJpa项目. 出现的错误如下: Caused by: org.hibernate.AnnotationException ...

  3. Java学习笔记3---unable to launch

    环境配置好后,在eclipse下编写HelloWorld程序: ①创建新工程 ②创建.java文件,命名为HelloWorld ③在源文件中添加main方法,代码如下: public void mai ...

  4. python-网络编程-01

    我们常说的计算机网络通信,值得是两台,或者多台计算机间,进行数据传输. 从计算机网络发展至今,人们使用了很多协议,但是最常用的还是tcp/ip协议,实际上这是一组协议. 当然使用python做网络编程 ...

  5. Tensorflow 笔记 -- tensorboard 的使用

    Tensorflow 笔记 -- tensorboard 的使用 TensorFlow提供非常方便的可视化命令Tensorboard,先上代码 import tensorflow as tf a = ...

  6. Codeforces Round #412 Div. 2 第一场翻水水

    大半夜呆在机房做题,我只感觉智商严重下降,今天我脑子可能不太正常 A. Is it rated? time limit per test 2 seconds memory limit per test ...

  7. javascript学习笔记 - 引用类型 基本包装类型

    六 基本包装类型 Boolean,Number,String 这三个引用类型亦称为基本包装类型,与基本的数据类型boolean,number,string相关联.为了方便操作这些基本类型的数据. 引用 ...

  8. DS作业06-图

    1.本周学习总结(0--2分) 1.1思维导图 1.2谈谈你对图结构的认识及学习体会. 图这一章的学习,是经过树学习后,难得一章重新寻找到感觉的学习.因为这一章比较少用递归,使用的是结构体,很多东西我 ...

  9. Java Socket IO(BIO、NIO)

    总结下Java socket IO.首先是各种IO的定义,这个定义似乎也是众说纷纭.我按照stackoverflow上面的解释: IO有两种分法:按照阻塞或者按照同步.按照阻塞,有阻塞IO和非阻塞IO ...

  10. 瞄一眼CopyOnWriteArrayList(jdk11)

    CopyOnWriteArrayList是ArrayList线程安全的变体.使用写时复制策略进行修改操作. 与之前版本较明显的区别是,jdk11中用来保护所有设值方法(mutator)的Reentra ...