【CNN】一文读懂卷积神经网络CNN
https://blog.csdn.net/np4rHI455vg29y2/article/details/78958121
本文为大家解读如何简单明了的解释卷积,并且分享了学习中的一些方法案例。
首先文章的提纲为:
CNN栗子镇楼
What is CNN
什么是卷积
什么是池化
Why CNN
对CNN的其他一些理解
CNN实现(接口)
1、CNN栗子(A Beginning Glimpse of CNN)
Modern CNN since Yann LeCun
2.
上面是最经典和开始的两篇CNN的结构图
2、What is CNN?
神经网络?卷积?
2.1 什么是卷积?
卷积的定义
其连续的定义为:
特点:
2.2 离散卷积的栗子:
丢骰子时加起来要等于4的概率是多少?
二维离散的卷积
计算的动图如下
2.3 用到二维图像上:
关于卷积中常用到的一些概念:神经网络的卷积是对应位相乘,现在是信号相乘。
上面移动的小矩阵有两种叫法,一种叫做滤波器filter,一种加法叫做卷积核Kernel,是相同的东西只是不同的叫法。
2.4、用到神经网络中
我们其实需要学习的就是里面的线上面对应的权值,比如上面绿色的代表3*1的卷积核大小,只是这里用神经网络的结构表示出来了。
2.5、卷积的细节
filter/Kernel size,number
假设神经网络的输入是6*6的image,
其中每一个卷积核代表提取不同的特征,多个卷积核提取的特征然后进行组合(这样更强大),一同送入到后续的结构。
下面来一个更通俗的解释:
每个人代表一个卷积核来进行提取不同的特征,一个人是弱小的,但是一组人就强大了,他们有着不同的知识(权重),这样类比来理解,就会好理解很多。
Stride
The step size you take the filter to sweep the image
Zero-padding
A way not to ignore pattern on border
New image is smaller than the original image
Channel
2.6 池化(pooling)
Max pooling 例子:
Pooling is unsensitive to local translation.(局部不变性)
"If we translation the input by a small amount ,the values of mosts of the pooled outputs do not change."
图像往左或者往右移动,pooling 的结果是不变的
2.7 flatten
2. 8 Convolution v.s. Fuly Connected
2.9 The whole CNN
So as the whole,CNN is conposed of
Convolution
Nonlinearity:e.g.ReLU
Pooling
FC Layers
3. Why CNN
Some patterns are much smaller whole image.
The same patterns appear in different regions
Subsampling the pixels will not change the object
4. 对CNN的其他一些理解
4.1 关于接受域(receptive field)
称在底层中影响上层输出单元s的单元合集为s的接受域(receptive field)。
处于卷积网络更深的层中的单元,它们的接受域要比处在浅层的单元的接受的域更大。如果网络还包含类似步幅卷积或者池化之类的结构特征,这种效应会加强。这意味着在卷积网络中尽管直接连接都是很稀疏的,但处在更深的层中的单元可以间接地链接到全部或者大部分输入图像。(表现性能)
4.2 卷积与池化作为一种无限强的先验
首先,弱先验具有较高的熵值,因此自由性较强,强先验具有较低的熵值,这样的先验在决定参数最终取值时可以起着非常积极的作用。
把卷积网络类比成全连接网络,但对于网络的权重具有无限强的先验。
所有隐藏单元的权重是共享的。
除了一些连续的小单元的权重外,其他的权重都是0.
池化也是一个无限强的先验:每个单元都具有对少量平移的不变性。
卷积和池化可能导致欠拟合!任何其他先验类似,卷积和池化只有当先验的夹着合理且正确时才有用。如果一项任务依赖于保存精确的空间信息,那么在所有的特征上使用池化将会增大训练误差。
根据实际需求选取先验
5. CNN in Pytorch
pytorch的相关接口
LeNet in PyTorch
参考:
如何通俗易懂得解释卷积(马同学知乎答案)
李宏毅老师slides
【CNN】一文读懂卷积神经网络CNN相关推荐
- 【综述】一文读懂卷积神经网络(CNN)
卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习 ...
- 一文读懂卷积神经网络CNN(学习笔记)
来源:机器学习算法与自然语言处理 作者:白雪峰 本文为图文结合,建议阅读10分钟. 本文为大家解读如何简单明了的解释卷积,并且分享了学习中的一些方法案例. 首先文章的提纲为: CNN栗子镇楼 What ...
- 技术向:一文读懂卷积神经网络CNN
自今年七月份以来,一直在实验室负责卷积神经网络(Convolutional Neural Network,CNN),期间配置和使用过theano和cuda-convnet.cuda-convnet2. ...
- 一文看懂卷积神经网络-CNN(基本原理+独特价值+实际应用)
http://blog.itpub.net/29829936/viewspace-2648775/ 2019-06-25 21:31:18 卷积神经网络 – CNN 最擅长的就是图片的处理.它受到人类 ...
- 技术向:一文读懂卷积神经网络
技术向:一文读懂卷积神经网络 技术网络 36大数据(张雨石) · 2015-03-06 05:47 自今年七月份以来,一直在实验室负责卷积神经网络(Convolutional Neural Ne ...
- 一文看懂卷积神经网络CNN的核心
在之前,我总结了关于计算机神经网络与梯度下降的核心,详见下文链接 : 一文看懂计算机神经网络与梯度下降 本文主要会对图像相关的机器学习中最为重要的网络,卷积神经网络作个人的理解分析. 1. 为什么要使 ...
- 卷积层的主要作用_对卷积神经网络CNN的理解,一文读懂卷积神经网络。
什么是神经网络? 神经网络ANN全称为(artificial neutral network),也就是人工神经网络,是一种仿人类神经网络原理构造的一种计算机模型. 主要由:输入,权重,激活函数来构成一 ...
- 一文读懂卷积神经网络
自今年七月份以来,一直在实验室负责卷积神经网络(Convolutional Neural Network,CNN),期间配置和使用过theano和cuda-convnet.cuda-convnet2. ...
- 一文读懂卷积神经网络(转载)
作者:张雨石 原文地址>> 自今年七月份以来,一直在实验室负责卷积神经网络(Convolutional Neural Network,CNN),期间配置和使用过theano和cuda-c ...
最新文章
- 旅行售货员 java_JAVA旅行商售货TSP
- CListCtrl 使用技巧
- lamp 安装pdo_mysql_LAMP安装
- 【好文收藏】k8s中Pod 无法正常解析域名:部署 DNS 调试工具排查
- java并发编程之美-阅读记录11
- Xcode使用心得01:断点中断问题和调整编译目标[转]
- [置顶] 完美程序员的10种品质
- Fiori Hash url的生成原理
- win10下 Ubuntu 18.04 LTS 的安装及 rlt8821ce网卡驱动的安装
- 学习ASP.NET Core,怎能不了解请求处理管道[1]: 中间件究竟是个什么东西?
- 【SpringMVC】返回视图中包含数据(ModelAndView)
- mysql datetime 对于hbm_mysql 字段datetime Hibernate
- 字符串首字母置为大写
- ORACLE关联查询
- java-php-python-ssm医药网络挂号系统计算机毕业设计
- android打电话的intent,如何在Android中使用intent打电话?
- linux作为网络防火墙,如何用linux做防火墙
- 2022 Aug 18 刷题log
- 计算机主机配置有哪些,组装电脑配置推荐有哪些
- 算法设计与分析 二叉树
热门文章
- php文章排序,PHP+Ajax实现后台文章快速排序
- 十一、springboot WebMvcConfigurer与HandlerInterceptorAdapter使用
- AI创业周报:元宇宙时代来临!环球墨非风头正盛,53岁女博士领现象级芯片公司获数亿元融资...
- AI突破的「阴暗面」:怎样防止GPT-3跟人类学坏?
- 2020年ACM Fellows出炉!颜水成、周昆、陈怡然等12位华人当选
- 新书上市 | 6岁的gRPC,终于出书了!
- 根据双眼的坐标对齐人脸Python实现
- 面部特征点检测的关键技术
- 超分辨率(super-resolution)VS解模糊(deblur)
- java.lang.ThreadLocal实现原理和源码分析