一、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. ionicframework(二)

    Start building with Ionic! Follow these quick steps and start building high quality mobile apps in m ...

  2. Mybatis准备

    http://www.mybatis.org/mybatis-3/zh/index.html

  3. 《C++编程思想》(第二版)第3章 C++中的C(笔记、习题及答案)(二)

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/ ...

  4. 消息队列 概念 配合SpringBoot使用Demo

    转http://www.jianshu.com/p/048e954dab40 概念: 分布式消息队列 ‘分布式消息队列’包含两个概念 一是‘消息队列’,二是‘分布式’ 那么就先看下消息队列的概念,和为 ...

  5. SQL 查询结果为 XML

    --原始数据 SELECT  OrderNO,CreateDate,Username,Address FROM   Whir_Order_OrderInfo --1.AUTO模式 SELECT  Or ...

  6. Impala中多列转为一行

    之前有一位朋友咨询我,Impala中怎样实现将多列转为一行,事实上Impala中自带函数能够实现,不用自己定义函数. 以下我開始演示: -bash-4.1$ impala-shell Starting ...

  7. Atitit.隔行换色  变色 css3 结构性伪类选择器

    Atitit.隔行换色  变色 css3 结构性伪类选择器 1.1. css3隔行换色扩展阅读 1 1.2. 结构伪选择器 1 1.3. jQuery 选择器2 1.1. css3隔行换色扩展阅读 原 ...

  8. C++游戏系列5:不止有一件武器

    很多其它见:C++游戏系列文件夹 知识点:对象数组作为数据成员 改进:每一个角色所持有的武器不仅仅一件,故持有的武器,用了对象数组来表示,当然,也能够是空手. 由此而带来的,还得记录一共同拥有几件武器 ...

  9. eclipse中使用weblogic作为服务器控制台中文乱码

    使用WebLogic时控制台输出中文乱码解决方法:   1.找到weblogic安装目录,当前项目配置的domain   2.找到bin下的setDomainEnv.cmd文件   3.打开文件,从文 ...

  10. twemproxy源码分析2——守护进程的创建

    twemproxy源码中关于守护进程的创建实现得比较标准,先贴出代码来,然后结合一些资料来分析和列举一些实现守护进程的常用方法,不过不得不说twemproxy的实现确实是不错的,注释都写在了代码中,直 ...