一、CNN基础

(1)CNN在CV方面的应用

image classification(图像识别)、object detection(目标检测)、neural style transfer(风格迁移)等。

(2) CNN

卷积层、池化层(maxpooling最常见)、全连接层

(3) Lenet-5参数数量计算:

(4) CNN 每一层输入输出feature map大小

各个参数的维度:

(5) CNN优势

减少参数数量: 参数共享 & 稀疏连接

(6) 训练方法

梯度下降优化

二、梯度下降与反向传播

CNN正向传播过程:

Z = conv(A_prev, W, b)

A = activation(Z)

反向传播求导:

dZ 已知:

其中dZ 可以通过池化层反向传播用dA计算。

三、CNN进展

(1)几种经典CNN结构

(2)Resnet

意义:

如果已经达到最优,继续加深网络不会降低网络的性能。

(3)1*1卷积层

Resnet中skip connection层与曾之间feature map数量不匹配时,使用1*1卷积层进行通道数量降维和升维。

(4) GoogleNet- Inception network

使用1*1卷积层进行通道整合和特征数降维

四、目标检测

(1)输出标签表示形式

(2)使用卷积层实现 sliding window

(3)评估定位精确程度

Intersection over Union

(4)非极大抑制(non-max suppression)

(5) anchor box

多目标检测,输出增加多目标分量

(6) 目标检测方法小结

传统方法步骤:

  1. sliding window框出候选区域;
  2. 提取候选区域特征,如HOG特征等;
  3. 分类器进别,如SVM等。

传统方法: DPM(Deformable Part Model),HOG+SVM,检测速度较慢。

深度学习方法:代表方法有R-CNN (Region-based Convolutional Neural Networks)和 YOLO。R-CNN是基于区域的卷积神经网络,结合Region Proposal和CNN,YOLO将图片分为S*S分区,每个分区检测中心点位于该分区的目标。其他方法包括SPP-net、Fast R-CNN、Faster R-CNN、R-FCN、SSD等

基于深度学习的目标检测方法大致分为两类:基于Region Proposal的和端到端(end-to-end)的,前者包括R-CNN、SPP-net、Fast R-CNN、Faster R-CNN、R-FCN,后者包括YOLO、SSD。

五、Siamese network

(1) one-shot learning  & Siamese network

样本很少的情况, 类似于 knn 问题,关键在于找到相似度衡量方式

Siamese network是一种相似性度量方法,用于处理类别数多,但每个类别的样本数量少的情况的识别、分类等问题。主要思想是通过一个函数将输入图像映射到目标空间,在目标空间使用简单的距离(欧式距离等)进行相似度比较。在训练阶段,最小化来自相同类别的一对样本的损失函数值,最大化来自不同类别的一堆样本的损失函数值。

(2)triplet loss

Triplet Loss是一种损失函数,用于训练差异性较小的样本,数据包括锚(Anchor)、正(Positive)样例、负(Negative)样例。

convolutional neural network 课程笔记的更多相关文章

  1. A NEW HYPERSPECTRAL BAND SELECTION APPROACH BASED ON CONVOLUTIONAL NEURAL NETWORK文章笔记

    A NEW HYPERSPECTRAL BAND SELECTION APPROACH BASED ON CONVOLUTIONAL NEURAL NETWORK 文章地址:https://ieeex ...

  2. HYPERSPECTRAL IMAGE CLASSIFICATION USING TWOCHANNEL DEEP CONVOLUTIONAL NEURAL NETWORK阅读笔记

    HYPERSPECTRAL IMAGE CLASSIFICATION USING TWOCHANNEL  DEEP  CONVOLUTIONAL NEURAL NETWORK 论文地址:https:/ ...

  3. 论文笔记之《Event Extraction via Dynamic Multi-Pooling Convolutional Neural Network》

    1. 文章内容概述 本人精读了事件抽取领域的经典论文<Event Extraction via Dynamic Multi-Pooling Convolutional Neural Networ ...

  4. 论文笔记:(CVPR2019)Relation-Shape Convolutional Neural Network for Point Cloud Analysis

    目录 摘要 一.引言 二.相关工作 基于视图和体素的方法 点云上的深度学习 相关性学习 三.形状意识表示学习 3.1关系-形状卷积 建模 经典CNN的局限性 变换:从关系中学习 通道提升映射 3.2性 ...

  5. Convolutional Neural Network in TensorFlow

    翻译自Build a Convolutional Neural Network using Estimators TensorFlow的layer模块提供了一个轻松构建神经网络的高端API,它提供了创 ...

  6. 论文阅读(Weilin Huang——【TIP2016】Text-Attentional Convolutional Neural Network for Scene Text Detection)

    Weilin Huang--[TIP2015]Text-Attentional Convolutional Neural Network for Scene Text Detection) 目录 作者 ...

  7. 卷积神经网络(Convolutional Neural Network,CNN)

    全连接神经网络(Fully connected neural network)处理图像最大的问题在于全连接层的参数太多.参数增多除了导致计算速度减慢,还很容易导致过拟合问题.所以需要一个更合理的神经网 ...

  8. 卷积神经网络(Convolutional Neural Network, CNN)简析

    目录 1 神经网络 2 卷积神经网络 2.1 局部感知 2.2 参数共享 2.3 多卷积核 2.4 Down-pooling 2.5 多层卷积 3 ImageNet-2010网络结构 4 DeepID ...

  9. 【论文阅读】ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices

    ShuffleNet: An Extremely Efficient Convolutional Neural Network for MobileDevices

  10. 《ABCNN: Attention-Based Convolutional Neural Network for Modeling Sentence Pairs》

    代码: keras:https://github.com/phdowling/abcnn-keras tf:https://github.com/galsang/ABCNN 本文是Wenpeng Yi ...

随机推荐

  1. 理解和使用 Promise.all 和 Promise.race

    一.Pomise.all的使用 Promise.all可以将多个Promise实例包装成一个新的Promise实例.同时,成功和失败的返回值是不同的,成功的时候返回的是一个结果数组,而失败的时候则返回 ...

  2. appendChild append insertBefore prepend

      CreateTime--2017年11月2日16:57:59 Author:Marydon appendChild()与append() insertBefore()与prepend()区别与联系 ...

  3. Python 入门demo第二篇

    循环执行逻辑 #-*- coding: UTF-8 -*- import time import urllib2 def task(i): urlstr='http://baidu.com' html ...

  4. php json_decode失败,返回null

    在使用json_decode之前,一定得保证字符串是utf-8编码,而执行json_decode失败的原因有很多,罗列如下: 1)编码不对: 2)字符串格式不对: 3)字符串格式对,但是有异常字符: ...

  5. linux任务计划cron

    linux任务计划cron 1.crontab命令任务计划配置文件 [root@bogon ~]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/ ...

  6. Win10怎么打开或关闭自动维护功能

  7. Python 实现根据不同的程序运行环境存放日志目录,Python实现Linux和windows系统日志的存放

    说明:在我们开发的时候,有时候是在windows系统下开发的代码,我们的生产环境是Linux系统,更新代码就需要修改日志的环境,本文实现了代码更新,不需要配置日志文件的目录,同样也可以延伸到ip地址 ...

  8. unity, GetComponent<MeshRenderer>().sharedMaterial 与 GetComponent<MeshRenderer>().material

    我多个物体用的是同一个material,当我用gameObject.GetComponent<MeshRenderer>().sharedMaterial.SetColor("_ ...

  9. Outlets 和Referencing Outlets的区别

    转自:http://blog.sina.com.cn/s/blog_4431c7610100sypy.html 我的理解就是连接与被连接的关系吧 Outlets里面显示的是你的属性, 以及连接着的目标 ...

  10. 设计模式_Observable与Observer

    一.基本概念   java.util.Observable 被观察者类,需要继承这个类   java.util.Observer 观察者类,需要实现这个接口中的update()方法 二.举例 Door ...