CNN入门paper
来源:互联网 发布:维生素c 知乎 编辑:程序博客网 时间:2024/05/18 18:20
Convolutional Networks for Images, Speech, and Time-Series
INTRODUCTION
- multilayer back-propagation networks适用于图像识别(见PATTERN RECOGNITION AND NEURAL NETWORKS)
- 模式识别的traditional model中,需要:
- hand-designed feature extractor:用来从输入图像中获取信息,并消除无关变量
- trainable classier:将得到的feature vectors (or strings of symbols)分类
- standard, fully-connected multilayer networks 可被用作classifier
- 传统模型的缺点:
- 上千变量;
- fully-connected architecture忽略了输入中的拓扑结构
CONVOLUTIONAL NETWORKS
- CNN中的三种architectural ideas(保证shift and distortion invariance):
- local receptive fields
- shared weights (or weight replication)
- sometimes, spatial or temporal subsampling
VARIABLE-SIZE CONVOLUTIONAL NETWORKS, SDNN
A guide to convolution arithmetic for deep learning
Introduction
卷积层的输出shape受输入shape、kernel shape的选择、 zero padding and strides影响,而且这些性质之间的关系不易得到。但fully-connected layers的output size与the input size之间是独立的。
Discrete convolutions
- 神经网络主要源于仿射变换(affine transformation):输入一个vector,给它乘上一个matrix,得到输出vector,通常还要加上一个 bias vector。也就是线性变换+平移。
齐次坐标:用N+1维来代表N维坐标 - images无论是多少维,都可以表示为vector,它有如下性质:
- 可以用多维数组存储表示
- 存在一个或多个axes,如width axes和height axes
- 每一个axis表示该data的不同view(如color image的R、G、B通道)
- 上述性质在仿射变换中未被利用,所有axes被同等对待,未考虑其topology信息,于是discrete convolutions闪亮登场٩(๑❛ᴗ❛๑)۶
- discrete convolution:
- a linear transformation that preserves this notion of ordering
- sparse(只有很少的input影响output)
- reuse parameters(共享权值,不同位置有相同权值)
- 一个discrete convolution的例子:
- 原始的图像数据称为input feature map
- kernel在原始图像上滑动,每个位置计算:
- 最终得到的结果为output feature maps
- 有多个input feature maps的情况很常见,如图像的不同通道。这种情况下kernel是三维的,也可以说是多个,最后对应元素相加
- 可以利用多个不同的kernels,产生所需数量的output feature maps的例子:
- kernels collection相关参数:
(n,m,k1,⋯,kN) n :output feature maps数量m : input feature maps数量kj :沿j轴的kernel size
- output size
oj 的影响因素:ij :j轴方向的input sizekj :j轴方向的kernel sizesj :j轴方向的stride(两个相邻kernel的距离)pj :j轴方向的zero padding(起止处添加的0的个数)
- strides形成了subsampling,可以理解为控制了kernel表达的程度or输出信息保留的多少
Pooling
- Pooling operations reduce the size of feature maps by using some function to summarize subregions, such as taking the average or the maximum value.
- Pooling works by sliding a window across the input and feeding the content
of the window to a pooling function. pooling 层的e output size
oj 受以下因素影响:ij :j轴的input sizekj :j轴的kernel window sizesj :j轴的stride
average pooling和max pooling的例子:
Convolution arithmetic
- 各卷积层性质的独立性:the choice of kernel size, stride and zero padding along axis j only affects the output size of axis j
- 若在2D图像中,i、k、p、s在两个维度上的值相同,则
Pooling arithmetic
阅读全文
0 0
- CNN入门paper
- [Paper] Faster R-CNN
- [paper] Co-CNN
- Face paper:Light-Head R-CNN
- CNN卷积神经网络的改进(15年最新paper)
- CNN卷积神经网络的改进(15年最新paper)
- 深度学习-CNN入门
- CNN卷积神经网络入门
- CNN入门知识大全
- TensorFlow入门-MNIST & CNN
- tensorflow入门Day4-CNN
- TensorFlow入门-CIFAR10&CNN
- CNN入门之cnn架构和cnn卷积、采样
- paper
- paper
- paper
- PAPER
- 推荐系统入门必读的经典paper
- 解决nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
- 283. Move Zeroes
- Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/com.google.android.webview-2/li
- Linux安装配置memcached
- centos7开机后进入命令行模式
- CNN入门paper
- python 基础
- select2下拉搜索框匹配汉字全拼及首字母
- Oracle实现自动删除大数据量表7天前的数据
- 连接池改造JDBC工具类
- Azure 中 Windows 虚拟机的大小
- [LeetCode]350. Intersection of Two Arrays II
- JavaScript中的this的一些用法
- JAVA 服务端和客户端Socket通信的简单例子