读书笔记——《解析卷积神经网络 ——深度学习实践手册(魏秀参)》
#卷积神经网络(CNN)基本概念#
##发展历程##
- 1959 加拿大神经科学家提出感受野概念
- 1980日本科学家福岛邦彦提出神经认知模型,S-cells抽取局部特征—>卷积convolution层,C-cells抽象和容错—>池化pooling层
- 1998 Yann LeCun 基于梯度学习的卷积神经网络LeNet 手写字体识别
- 2012 Hinton AlexNet在ImageNet夺冠
- 2015 改进激活函数,预测能力超过人类
##基本结构
- 原始数据raw data representation—>卷积、池化、非线性激活函数(不同操作层的“堆叠”)—>映射为高级语义表示—>向任务目标映射==>“端到端”学习或“表示学习”
- 前馈运算:对样本进行推理和预测
- 反馈运算:将预测误差反向传播逐层更新参数
- 两种运算交替以训练网络模型
##基本部件
- “端到端”学习,替代特征表示+分类器
- 网络某一层的输入通常是一个四维张量(高度,宽度,维度,mini-batch)
卷积层
- 卷积核f可视为学习到的权重w,对不同位置的所有输入都是相同的,即卷积层的“权值共享”特性。可加入偏置项b。
- 超参数:卷积核大小filter size、卷积步长stride
- 作用:获取图像的局部信息,如边缘、颜色、形状、纹理等。
汇合层(池化层) - 超参数:汇合类型(average-pooling、max-pooling等)、核大小、步长。
- 作用:特征不变性(容错)、特征降维(降采样)、一定程度防止过拟合。
(stride convolutional layer 可代替汇合层降采样)
激活函数(非线性映射层) - 作用:增加网络的表达能力(即非线性)
- ReLU函数
全连接层 - 作用:将学习到的特征表示映射到样本的标记空间,类似于“分类器”
目标函数 - 作用:衡量该预测值与真实样本标记之间的误差 。
- 最常用的目标函数:交叉熵损失函数——分类问题,l2损失函数——回归问题
备注:
1、单层感知机属于线性分类器,由于异或问题非线性可分,故无法解决疑惑问题。而多层感知机计算复杂,无法直接求解隐藏层参数,故直到Hinton等提出BP算法,基于链式求导法则,解决了多层感知机中间层参数计算的问题。
2、神经网络模型是非凸函数且复杂,优化求解困难,因此采用随机梯度下降SGD和误差反向传播进行模型参数更新。批处理mini-batch SGD 每次不放回随机抽样,遍历一次训练集为一轮epoch,避免局部最优更新。
##三个重要概念
感受野
- 小卷积核的多层堆叠可取得大卷积核同等规模的感受野,加深网络(增强容量和复杂度)、减少参数个数。
分布式表示 - “语义概念”到神经元是一个多对多映射 。
深度特征的层次性 - 随着若干卷积、汇合等操作的堆叠,各层得到的深度特征逐渐从泛化特征过渡到高级语义表示。
##四种经典网络
Alex-Net
VGG-Nets
Network-In-Network
Residual Network深度残差网络
##数据扩充
水平翻转、随机扣取(0.8-0.9倍)、尺度变换(分辨率变为原图0.8-1.3等倍)、旋转变换、色彩抖动(对RGB色彩分布轻微扰动、HSV颜色空间随机改变S饱和度和V明度通道的值)
Fancy PCA:“可以近似的捕获自然图像 的一个重要特性,即物体特质与光照强度和颜色变化无关 。”对所有训练数据的R,G,B像素值进行主成分分析,得到对应的特 征向量 pi 和特征值 λi i = 1, 2, 3 ,然后根据特征向量和特征值可以计算一组随机值 [p1, p2, p3] [α1λ1, α2λ2, α3λ3]⊤,每一个epoch重新选取αi计算新的随机值,将其作为扰动加到原像素值中即可。
监督式数据扩充:根据原数据训练一个分类的初始模型,利用该模型对每张图生存对应的特征图或热力图(可指示图像区域与场景标记间的相关概率),选择较强相关的图像区域作为扣取的图像块。
##数据预处理
- 卷积神经网络中的数据预处理通常是计算训练集图像像素均值,之后在处理训练集验证集和测试集图像时分别减去该均值。
- 原理:我们默认自然图像是一类平稳的数据分布(即数据每一个维度的统计都服从相同分布),此时,在每个样本上减去数据的统计平均值(逐样本计算)可以移除共同部分,凸显个体差异。
##网络参数初始化
- 通过合理的数据预处理和规范化,当网络收敛到稳定状态时,参数(权值)在理想情况下应基本保持正负各半的状态(此时期望为0 ) 。
- 随机初始化:随机参数服从高斯分布或均匀分布。w=0.001*randn(n_in,n_out)
不足:方差会随输入神经元的个数改变。 - Xavier参数初始化方法:加入了 方差规范化。w=0.001*randn(n_in,n_out)/sqrt(n)
不足:并未考虑非线性映射函数对输入 s 的影响 - He方法:将非线性映射造成的影响考虑进参数初始化中,方差规范化分母sqrt(n/2)
- 利用预训练模型
##激活函数
Sigmoid型函数
tanh(x)型函数
在 型函数基础上为解决均值并非为0而是全为正的问题提出的激活函数: tanh(x)=2sigmiod(2x)-1
依然会发生“梯度饱和”现象 。修正线性单元( ReLU)
Leaky ReLU
参数化ReLU
随机化ReLU
指数化线性单元(ELU)
##目标函数
分类任务
-交叉熵cross entropy损失函数(Softmax)
-合页损失函数hinge loss
-坡道损失函数ramp loss
交叉熵损失函数是最为常用的分类目标函数,且效果一般优于合页损失函数;大间隔损失函数和中心损失函数从增大类间距离、减小类内距离的角度不仅要求分类准确,而且还有助提高特征的分辨能力;坡道损失函数是分类问题目标函数中的一类非凸损失函数,由于其良好的抗噪特性,推荐将其用于样本噪声或离群点较多的分类任务。回归任务
l1 损失函数和 l2 损失函数是两个直观且常用的 回归任务目标函数,实际使用中 l2 损失函数略优于 l1 损失函数; 损失函数为回归问题中的一类非凸损失函数,同样具有良好的抗 噪能力;
##网络正则化
- 目的:防止过拟合。
- 正则化是机器学习中通过显式的控制模型复杂度来避免模型过拟合、确保泛化能力的一种有效方式 。
A. l1正则化
B. l2正则化
C. 最大范数约束
D. 随机失活dropout
原理:对于某层的每个神经元,在训练阶段 均以概率 p 随机将该神经元权重置 (故被称作“随机失活”),测试阶段所有神经元均呈激活态,但其权重需乘 (1 − p) 以保证训练和测试阶段各自权重拥有相同的期望 。
工程实现时使用“倒置随机失活” ,训练阶段:(1/(1-p))w 测试阶段w
E. 利用验证集判断模型过拟合、欠拟合
“早停”:取验证集 准确率最高的那一轮训练结果作为最终网络。
##超参数设定和网络训练
- 输入数据大小一般为a*2^n的正方形,便于GPU并行计算。
- 卷积层推荐使用3x3,5x5的小卷积核,还可以对图像边缘做填充操作。
- 汇合层常用2x2,步长为2。
- 训练数据随机打乱,确保模型不同epoch相同batch看到的数据是不同的。
- 初始学习率不宜过大(0.01或0.001),学习率应随轮数增加而减缓。
- 批规范化batch normalization:
读书笔记——《解析卷积神经网络 ——深度学习实践手册(魏秀参)》相关推荐
- 读书笔记 | 墨菲定律
1. 有些事,你现在不做,永远也不会去做. 2. 能轻易实现的梦想都不叫梦想. 3.所有的事都会比你预计的时间长.(做事要有耐心,要经得起前期的枯燥.) 4. 当我们的才华还撑不起梦想时,更要耐下心来 ...
- 读书笔记 | 墨菲定律(一)
1. 有些事,你现在不做,永远也不会去做. 2. 能轻易实现的梦想都不叫梦想. 3.所有的事都会比你预计的时间长.(做事要有耐心,要经得起前期的枯燥.) 4. 当我们的才华还撑不起梦想时,更要耐下心来 ...
- 洛克菲勒的38封信pdf下载_《洛克菲勒写给孩子的38封信》读书笔记
<洛克菲勒写给孩子的38封信>读书笔记 洛克菲勒写给孩子的38封信 第1封信:起点不决定终点 人人生而平等,但这种平等是权利与法律意义上的平等,与经济和文化优势无关 第2封信:运气靠策划 ...
- 股神大家了解多少?深度剖析股神巴菲特
股神巴菲特是金融界里的传奇,大家是否都对股神巴菲特感兴趣呢?大家对股神了解多少?小编最近在QR社区发现了<阿尔法狗与巴菲特>,里面记载了许多股神巴菲特的人生经历,今天小编简单说一说关于股神 ...
- 2014巴菲特股东大会及巴菲特创业分享
沃伦·巴菲特,这位传奇人物.在美国,巴菲特被称为"先知".在中国,他更多的被喻为"股神",巴菲特在11岁时第一次购买股票以来,白手起家缔造了一个千亿规模的 ...
- 《成为沃伦·巴菲特》笔记与感想
本文首发于微信公众帐号: 一界码农(The_hard_the_luckier) 无需授权即可转载: 甚至无需保留以上版权声明-- 沃伦·巴菲特传记的纪录片 http://www.bilibili.co ...
- 读书笔记002:托尼.巴赞之快速阅读
读书笔记002:托尼.巴赞之快速阅读 托尼.巴赞是放射性思维与思维导图的提倡者.读完他的<快速阅读>之后,我们就可以可以快速提高阅读速度,保持并改善理解嗯嗯管理,通过增进了解眼睛和大脑功能 ...
- 读书笔记001:托尼.巴赞之开动大脑
读书笔记001:托尼.巴赞之开动大脑 托尼.巴赞是放射性思维与思维导图的提倡者.读完他的<开动大脑>之后,我们就可以对我们的大脑有更多的了解:大脑可以进行比我们预期多得多的工作:我们可以最 ...
- 读书笔记003:托尼.巴赞之思维导图
读书笔记003:托尼.巴赞之思维导图 托尼.巴赞的<思维导图>一书,详细的介绍了思维发展的新概念--放射性思维:如何利用思维导图实施你的放射性思维,实现你的创造性思维,从而给出一种深刻的智 ...
- 产品读书《滚雪球:巴菲特和他的财富人生》
作者简介 艾丽斯.施罗德,曾经担任世界知名投行摩根士丹利的董事总经理,因为撰写研究报告与巴菲特相识.业务上的往来使得施罗德有更多的机会与巴菲特亲密接触,她不仅是巴菲特别的忘年交,她也是第一个向巴菲特建 ...
最新文章
- 1、一、Introduction(入门): 0、Introduction to Android(引进到Android)
- JavaWeb入门篇(6) 实现字符过滤器 解决全局字符乱码 实现模拟权限拦截
- Java电子书平滑翻页效果_(转载)Android 平滑和立体翻页效果1
- Python-视频爬取示例对小白友好
- 使用web服务器控件显示页面,服务器_Web服务器控件:TextBox控件,阅读此文请先查看网页教学网 - phpStudy...
- Android开发笔记(一百五十四)OpenGL的画笔工具GL10
- 餐饮为什么很难做到薄利多销?
- (二十四)JSP标签之基本标签(jsp:标签名)
- uniGUI session超时时间设置
- docker-compose 部署 mindoc文档服务器(支持在线markdown文件编辑)
- Tiles的使用,遗漏和总结
- matlab如何泰勒公式用求近似值_泰勒公式在生活中的应用.doc
- html 伸缩布局,CSS3弹性伸缩布局(下)——flex布局
- thinkpad x250装黑苹果教程_[黑苹果]x250 黑苹果历险记
- oracle 获取当月的1号_Oracle 获取当前年、月、日
- 发布微头条显示调用服务器失败,发布的微头条,有的标明“内容已编辑”,有的未标示,这是怎么回事?...
- 常用半导体器件之二极管
- 使用Dism++备份系统文件并恢复
- ssd(Single Shot MultiBox Detector)解读之(一)原理解析
- 夺命雷公狗---DEDECMS----21dedecms按照地区取出电影内容