CNN-台大李宏毅学习笔记
1.CNN
文章目录
- 1.CNN
- CNN -2 version
- CNN为什么叫CNN?(卷积)
- 总结:
- Pooling(池化)
- Alpha Go?
ONE-HOT Vector 维度-决定了图像分类的个数
softmax
一张图片一般是一个3D-Tensor
长和宽代表了这张图片的像素值-即解析度
channel(一般是3 RGB-三原色)
图片作为输入时,一般是长宽相同的,这需要resize(shape)来进行数据预处理
一个网络的输入通常是一个向量-所以我们在输入时需要将3D-Tensor拉直,成一个在此例子中为100*100*3大小的向量
如果还是用经典的全连接层(Dense-fully connect)会发现参数(weight)太多,不仅使模型变得更复杂,而且很容易过拟合,所以,我们使用全连接网络是不合适的,为了减少(参数的数量)w,我们来对图像本身的特征进行观察。
将图像拆分成很多特征pattern,来分解一个完整的图像给计算机辨识,辨识到这些特征后,计算机就认为这是一只鸟,事实上,人也是这样做的。比如下面这个有趣的例子:
所以,实际上,每个neuron的输入不需要是整张图,而只是整张图的小部分即可。
所以,第一个简化方式出现了
图像二值化(0~1)
每一个neuron只关心自己的哪一个(receptive field-感受野)即可
感受野是自己定义的–根据问题具体化
Neuron coporation 每个neuron一个channel 不多说
padding(补值-填充)-补0 补平均值 补最近的一列-都是可以的
stride(步长)–两个相邻感受野-(常见为3×3的kernel size)(receptive field)的距离-允许重叠
图像-视觉-影像
一个专门监测一个特征pattern的neuron,而不需要每个守备范围都有监测这个特征pattrn的neuron。
在不同的receptive field的检测相同特征的neuron 共享特征
同一个receptive field的neuron都是不同的-不会共享参数
每一个filter对应的是一个特征pattern
CNN -2 version
每一个filter对应一个特征pattern–filter里面的就是参数,与对应的receptive做inner product
一个convolutional layer的输出也可以看成一张图片
每一层的filler的高度就是输入的channel
所以,一个卷积层的重要参数是receptive field (kernel size)+stride +channel-深度
随着卷积层的变多,每一个filter监测的范围会越来越大(即使每一层的receptive field都是一样的)
CNN为什么叫CNN?(卷积)
共享参数-filter扫过一张图片-convolution
总结:
Pooling(池化)
Pooling里面没有根据Data需要learn的东西,就是一个operator-一个激活函数之类的东西
Maxpooling就是在分组后,选最大的那一个,还有平均和最小池化
一般是2*2 步长为1, 而receptive field一般是3*3 步长为2 (python深度学习)
pooling在侦测一些特征精细的图片的时候也存在失真
近年来,随着运算能力GPU的不断升级,也有全卷积神经网络
Pooling的主要目的还是减少运算量。
(经典的影像辨识的图像网络)
Alpha Go?
下一步落子变成分类问题 19*19的位置
1 -1 0这个自定义都是可以的。
不同的应用要考虑不同应用场景的特征
pytorch documention
channel深度是一个很重要的值得理解的点
颜色也是一个特征
具体需要深入看看数字图像处理
CNN-台大李宏毅学习笔记相关推荐
- 台大李宏毅课程笔记3——New Optimization for Deep Learning深度学习新优化
台大李宏毅课程笔记3 SGD with Momentum(SGDM) RMSProp Adam SWATS AdaXXX Adam分析 AMSGrad AdaBound SGDM分析 Cyclical ...
- 工业机器人——4 正运动学(台大机器人学学习笔记)
前面几篇文章,我们对于如何描述刚体的运动状态进行了具体的讲解,今天开始我们学习机械手臂的正向运动学. 1)定义 运动学(kinematics):讨论运动状态的本身,不涉及产生运动的力. 具体描述就是位 ...
- 工业机器人——1如何描述刚体的运动状态?(台大机器人学学习笔记)
基础知识: 刚体的自由度:物体能够对坐标系进行独立运动的数目称为自由度(DOF,degree of freedom):也就是说刚体沿任一个坐标轴移动或者绕任一个坐标系转动,我们称为一个自由度. 1)如 ...
- 台大李宏毅Machine Learning 2017Fall学习笔记 (11)Convolutional Neural Network
台大李宏毅Machine Learning 2017Fall学习笔记 (11)Convolutional Neural Network 本博客主要整理自: http://blog.csdn.net/x ...
- 台大李宏毅Machine Learning 2017Fall学习笔记 (16)Unsupervised Learning:Neighbor Embedding
台大李宏毅Machine Learning 2017Fall学习笔记 (16)Unsupervised Learning:Neighbor Embedding
- 台大李宏毅Machine Learning 2017Fall学习笔记 (14)Unsupervised Learning:Linear Dimension Reduction
台大李宏毅Machine Learning 2017Fall学习笔记 (14)Unsupervised Learning:Linear Dimension Reduction 本博客整理自: http ...
- 台大李宏毅Machine Learning 2017Fall学习笔记 (13)Semi-supervised Learning
台大李宏毅Machine Learning 2017Fall学习笔记 (13)Semi-supervised Learning 本博客参考整理自: http://blog.csdn.net/xzy_t ...
- 台大李宏毅Machine Learning 2017Fall学习笔记 (12)Why Deep?
台大李宏毅Machine Learning 2017Fall学习笔记 (12)Why Deep? 本博客整理自: http://blog.csdn.net/xzy_thu/article/detail ...
- 台大李宏毅Machine Learning 2017Fall学习笔记 (10)Tips for Deep Learning
台大李宏毅Machine Learning 2017Fall学习笔记 (10)Tips for Deep Learning 注:本博客主要参照 http://blog.csdn.net/xzy_thu ...
最新文章
- 人工智能新手入门学习路线!附学习资源合集
- 2021-03-28为什么用SCALA语言优势在哪里 Scala适合服务端、大数据、数据挖掘、NLP、图像识别、机器学习、深度学习…等等开发。
- File.documentsDirectory抛出异常Error #2014问题解决方案
- Html之head部分详解
- javaweb关于用户是否登录全局判断,没有登录跳转到登录界面
- python 3 廖雪峰博客笔记(三) 命令行模式与交互模式
- vue mysql webapp_基于Laravel+VueJS实战开发WebAPP
- C语言实现hello world代码
- RDBMS DML DDL
- 三维重建笔记_相机标定_求本质矩阵E
- kafka 查看待消费数据_通过Kafka Connect进行数据迁移
- 台达伺服控制器接线图_【智】两种PLC台达B2伺服驱动器接线和参数设置详解
- 计算机职业素养论文1500字,【如何提高职业素养1500字】_个人职业素养提升计划1500字范文...
- POI(兴趣点)抓取工具
- 【华人学者风采】李进 广州大学
- 日志库EasyLogging++学习系列(8)—— Verbose日志详解
- JAVA公司网站系统毕业设计 开题报告
- java Swing TXT文件分割程序
- 电子学推动计算机产业,自旋电子学和计算机硬件产业!-物理杂志.PDF
- EXCEL应用:思迈特软件Smartbi数据可视化终极教程