CNN简介

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

卷积神经网络(CNN)ConvolutionalNeuralNetwork基础知识Basics1卷积神经网络ConvolutionalNeuralNetwork2应用和实例Applicationandexamples3基础知识1发展情况无法解决异或问题SVM的兴起硬件性能,大数据多层感知机Sigmoid当输入非常大或者非常小的时候,这些神经元的梯度是接近于0。大部分神经元可能都会处在饱和状态,导致网络学习率下降。xexf11)(sigmoid的输出不是零均值的tanhtanh函数的输出是零均值的xxxxeeeex)tanh(ReLU综合速率和效率,学习周期缩短),0max()(exxLUR当学习率设置得太高时,网络中的大量神经元可能会陷入死亡状态,从而有效降低模型的容量。LeakyReLU更快更高效elsexifxxxf001.0)(没有梯度消失或者是突变的现象Softmaxcceezycdzzccdc1)(11.多分类2.正则项Maxoutijkjizxh],1[max)(ijijTijbWxz55544433322211154321b+xw=zb+xw=zb+xw=zb+xw=zb+xw=z)z,z,z,z,max(z=out更多激活函数梯度下降反向传播-算法改进随机梯度下降法:需要我们人为的去选择参数比如学习率、参数初始化权重衰减系数、Dropout改进:BN网络(BatchNormalization)1.白化预处理2.变换重构网络可以学习恢复出原始网络所要学习的特征分布反向传播-权重更新1.vanillaupdate2.Momentumupdate3.NesterovMomentumupdate4.Adagradupdate5.RMSpropupdate6.Adamupdate卷积神经网络2卷积层1池化层2全连接3卷积层参数输入:W1*H1*D1超参数:卷积核个数K卷积核大小F,深度为D1步长S填充P输出:W2=(W1-F+2P)/S+1(下取整)H2=(H1-F+2P)/S+1(下取整)D2=K卷积层10101000010101000010101000010101000010101000010101000010-110-110-103030003030003030003030010-110-110-110-110-110-110-110-110-110-110-110-110-110-110-1输入:6*6卷积核:3*3步长:1输出:4*4卷积层101010001010100010101000101010001010100010-110-110-103003010-110-110-110-110-110-110-110-110-1输入:5*5卷积核:3*3步长:2输出:2*210-110-110-1填充(padding)问题:1.每一次卷积输出图像都会变小,这在很深的网络中无法工作2.中间的像素和边缘的像素的地位不平等,会丢失边缘信息1010100001010100001010100000001010100001010100001010100000000001010100000010101000000101010000000001010100000010101000000101010000000000111000-1-1-1-20-30-20-10000111000-1-1-1111000-1-1-1111000-1-1-1111000-1-1-1111000-1-1-1111000-1-1-1111000-1-1-1填充(padding)输入:6*6卷积核:3*3步长:1padding:1输出:6*6三维卷积6*6*36*6*64*=3*3*3步长:1卷积核:64padding:1(6-3+2*1)/1+1=6输入深度决定卷积核深度卷积核个数决定输出深度输出大小有公式计算池化层设置(无参数)输入:W1*H1*D1超参数:卷积核大小F,深度为D1步长S池化方式:最大池化,均值池化固定参数:卷积核个数K=D1填充P=0输出:W2=(W1-F)/S+1(下取整)H2=(H1-F)/S+1(下取整)D2=K提示:卷积层3*3过滤器会有9个参数需要学习,但是池化层3*3过滤器没有参数需要学习池化层池化方法:按处理方式:1.一般池化2.重叠池化3.空间金字塔池化(SSP)按计算方式:1.均值池化2.最大池化3.滑动平均池化4.L2范数池化一般池化:不重合101010000101010000101010000000101010000101010000101010输入:6*6超参数:池化过滤器尺寸:3*3步长:3输出:2*2重叠池化:有重合101010000101010000101010000000101010000101010000101010输入:6*6超参数:池化过滤器尺寸:3*3步长:3输出:4*4一般池化和重叠池化在都要求输入图片尺寸固定情况下设置参数,一旦输入改变就需要重新设置超参数空间金字塔池化(SPP)空间金字塔池化,使得任意大小的特征图都能够转换成固定大小的特征向量任意图片经过上图的SPP,都会变成21维特征如果你希望输出n*n个特征池化的windowssize:(w/n,h/n)均值池化101010000101010000101010000000101010000101010000101010106.673.3406.675.564.443.343.344.445.566.6703.346.6710参数:滤波器:3*3步长:1均值池化最大池化101010000101010000101010000000101010000101010000101010101010010101010101010100101010参数:滤波器:3*3步长:1最大池化池化层常用池化过滤器参数:1.卷积核大小F=2步长S=22.卷积核大小F=3步长S=2全连接层上一层N-I(m节点)全连接层N(n节点)参数:m*n+n个应用和实例3LeNet-532*32*328*28*6*=5*5*3步长为16个滤波器CONV1(32-5)/1+1=2814*14*62*2*6步长为26个滤波器POOL1(28-2)/2+1=14*=10*10*165*5*6步长为116个滤波器CONV2(14-5)/1+1=10*=*=5*5*162*2*16步长为216个滤波器(10-2)/2+1=5POOL2=1*1*4005*5*16=400LAYER1LAYER21*1*400全连接1*1*120FC3全连接1*1*84FC4激活输出1*1*10SOFTMAX25.8%AlexNet(13-3)/2+1=6=6*6*2563*3*256步长为2256个滤波器*POOL31000激活输出SOFTMAX55*55*96227*227*3*=11*11*3步长为496个滤波器CONV1(227-11)/4+1=55RELU27*27*2565*5*96步长为1256个滤波器CONV2(27-5+2*2)/1+1=27*=RELU*(13-3+2*1)/1+1=13=13*13*3843*3*256步长为1384个滤波器CONV3RELU(13-3+2*1)/1+1=13=13*13*3843*3*384步长为1384个滤波器*CONV4RELU(13-3+2*1)/1+1=13=13*13*2563*3*384步长为1256个滤波器*CONV5RELU9216=全连接4096FC1RELU全连接4096FC2RELU27*27*963*3*96步长为296个滤波器POOL1(55-3)/2+1=27*=不用LRN*=13*13*2563*3*256步长为2256个滤波器(27-3)/2+1=13POOL2不用LRN16.4%小结AlexNet:第一个卷积层:11*11的卷积核,步长为4问题:卷积核太大,步长太大,会丢失大量信息改进:减小卷积核,减小步长趋势:卷积核小型化ZFNet(13-3)/2+1=6=6*6*2563*3*256步长为2256个滤波器*POOL3227*227*3110*110*96*=7*7*3步长为296个滤波器CONV1(227-7)/2+1=110RELU26*26*2565*5*96步长为2256个滤波器CONV2*=RELU(13-3+2*1)/1+1=13=13*13*3843*3*256步长为1384个滤波器*CONV3RELU(13-3+2*1)/1+1=13=13*13*3843*3*384步长为1384个滤波器*CONV4RELU(13-3+2*1)/1+1=13=13*13*2563*3*384步长为1256个滤波器*CONV5RELU=9216全连接4096FC1RELU55*55*963*3*96步长为296个滤波器POOL1(110-3+2*1)/2+1=55*=不用LRN*=13*13*2563*3*256步长为2256个滤波器(26-3+2*1)/2+1=13POOL2不用LRN1000SOFTMAX激活输出全连接FC2RELU409614.8%小结LeNet-5,AlexNet,ZFNet:超参数很多,卷积核设计复杂改进:统一卷积核规范化网络趋势:卷积核小型化并且统一设计卷积核和池化AGG-161000激活输出SOFTMAX全连接4096FC2RELU224*224*3224*224*64LAYER1RELU224*224*3224*224*64*=3*3*3步长为164个滤波器3*3*64步长为164个滤波器(224-3+1+2*1)/1=224*=224*224*64(224-3+1+2*1)/1=2243*3,步长为1,same最大池化,2*2,步长为2112*112*64POOL1112*112*128LAYER2RELUPOOL256*56*12856*56*256LAYER3RELUPOOL328*28*256LAYER428*28*512RELUPOOL414*14*512LAYER514*14*512RELUPOOL57*7*512全连接4096FC1RELU7.3%AGG-16AGG-16:网络规范,不需要设计太多超参数特征数太多,参数太多GoogleNetGoogleNet基本思想:利用Inceptionnetwork,让网络选择超参数,避免网络在太深情况下,超参数选择不当导致网络性能下降,也在一定程度上减少了工作量GoogleNet28*28*19228*28*256Inceptionnetwork28*28*641*1*192步长为164个滤波器(28-1)/1+1=28(28-3+2*1)/1+1=283*3*192步长为1128个滤波器28*28*1285*5*192步长为132个滤波器(28-5+2*2)/1+1=2828*28*32最大池化3*3*192步长为132个滤波器(28-3+2*1)/1+1=2828*28*32计算量巨大GoogleNet28*28*32*5*5*192=1.2亿28*28*19228*28*16*=1*1*192步长为116个滤波器5*5*192步长为132个滤波器(28-5+1+2*2)/1=28*=28*28*32(28-1+1)/1=281*1*1925*5*19228*28*19228*28*32*=5*5*192步长为132个滤波器(28-5+1+2*2)/1=285*5*1921*1*192*28*28*16+5*5*192*28*28*32=1240万结果相同,计算量减少十倍GoogleNet6.7%理论:网络深度越深训练效果越好问题:梯度消失和梯度爆炸导致无法收敛方法:归一初始化缺点:增加网络层数导致更大误差新方法:ResNetResNetResNetResNetResNet基本结构)(Re12xWLUWFxWxFi}){,(yxWWxFsi}){,(yR

1 / 55
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功