convolutional neural network 课程笔记
一、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) 目标检测方法小结
传统方法步骤:
- sliding window框出候选区域;
- 提取候选区域特征,如HOG特征等;
- 分类器进别,如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 课程笔记的更多相关文章
- A NEW HYPERSPECTRAL BAND SELECTION APPROACH BASED ON CONVOLUTIONAL NEURAL NETWORK文章笔记
A NEW HYPERSPECTRAL BAND SELECTION APPROACH BASED ON CONVOLUTIONAL NEURAL NETWORK 文章地址:https://ieeex ...
- HYPERSPECTRAL IMAGE CLASSIFICATION USING TWOCHANNEL DEEP CONVOLUTIONAL NEURAL NETWORK阅读笔记
HYPERSPECTRAL IMAGE CLASSIFICATION USING TWOCHANNEL DEEP CONVOLUTIONAL NEURAL NETWORK 论文地址:https:/ ...
- 论文笔记之《Event Extraction via Dynamic Multi-Pooling Convolutional Neural Network》
1. 文章内容概述 本人精读了事件抽取领域的经典论文<Event Extraction via Dynamic Multi-Pooling Convolutional Neural Networ ...
- 论文笔记:(CVPR2019)Relation-Shape Convolutional Neural Network for Point Cloud Analysis
目录 摘要 一.引言 二.相关工作 基于视图和体素的方法 点云上的深度学习 相关性学习 三.形状意识表示学习 3.1关系-形状卷积 建模 经典CNN的局限性 变换:从关系中学习 通道提升映射 3.2性 ...
- Convolutional Neural Network in TensorFlow
翻译自Build a Convolutional Neural Network using Estimators TensorFlow的layer模块提供了一个轻松构建神经网络的高端API,它提供了创 ...
- 论文阅读(Weilin Huang——【TIP2016】Text-Attentional Convolutional Neural Network for Scene Text Detection)
Weilin Huang--[TIP2015]Text-Attentional Convolutional Neural Network for Scene Text Detection) 目录 作者 ...
- 卷积神经网络(Convolutional Neural Network,CNN)
全连接神经网络(Fully connected neural network)处理图像最大的问题在于全连接层的参数太多.参数增多除了导致计算速度减慢,还很容易导致过拟合问题.所以需要一个更合理的神经网 ...
- 卷积神经网络(Convolutional Neural Network, CNN)简析
目录 1 神经网络 2 卷积神经网络 2.1 局部感知 2.2 参数共享 2.3 多卷积核 2.4 Down-pooling 2.5 多层卷积 3 ImageNet-2010网络结构 4 DeepID ...
- 【论文阅读】ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices
ShuffleNet: An Extremely Efficient Convolutional Neural Network for MobileDevices
- 《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 ...
随机推荐
- 关于HTML、js加密、混淆、源码保护、代码安全,防止解压直接看源码
一直有人问HTML加密混淆怎么做,其实这在业内是早已很多人研究过的课题.假日期间整理一篇文章分享给大家. 我们先理下需求,加密的目的是什么?加密到什么级别?为此我们可以牺牲什么?我们知道这个世界不存在 ...
- jquery下载保存文件
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- C# 重载和默认参数(那种情况下使用更好)
当你提供函数,外部因为要传入不同参数个数,重载会导致 外部if增加, 默认参数可以消除外部的if.当外部调用函数需要判断调用那个函数,根据调用次数增多 if跟着调用持续增多两种不同的调用 //重载 ...
- ubuntu卸载第三方库
下面以pcl和opencv为例进行说明. 参考资料: https://www.cnblogs.com/txg198955/p/5990295.html ubuntu卸载opencv并重装opencv ...
- DRUPAL性能优化【转】
1.启用memcache代替Mysql的缓存表处理缓存数据. 2.添加一个opcode缓存可以让 PHP能够重用前面编译过的代码,这样就会跳过解析和编译.常见的opcode缓存有Alternative ...
- 使用scrapy进行12306车票查询
概述 通过12306的查询API进行查询某日火车票, 结果保存在csv文件中. 详细 代码下载:http://www.demodashi.com/demo/12623.html 一.环境搭建 1. 安 ...
- FTP服务搭建与配置
FTP介绍 大企业用的基本都是自动化发布工具,会用GIT企业发布的版本上传到服务器, 使用vsftpd搭建ftp服务(上) http://blog.csdn.net/qq_26941173/artic ...
- linux文本分析利器awk
转 快速理解linux文本分析利器awk 原文链接 杜亦舒 性能与架构 awk是什么 如果工作中需要操作linux比较多,那么awk是非常值得学习的 awk是一个极其强大的文本分析工具,把文件逐行的读 ...
- 【c#】设置Socket连接、接收超时
用到Socket,发现如果连接错误,比如Connect的端口不对,会造成很长时间的延时,程序就僵在那里,效果很不好: 在网上找到很方便的设置办法,分享如下: Socket.SetSocketOptio ...
- js setInterval()函数 [倒计时用]
定义和用法: setInterval() 方法用于在指定的毫秒数后调用函数或计算表达式.它与setTimeout()方法不同的是前者可以无限的循环,不会受调用函数的限制,要想退出此循环可 ...