卷积神经网络的基本结构

 深度学习基础理论-CNN篇 

卷积神经网络的基本结构

总体来说,卷积神经网络是一种层次模型(hierarchical model),其输入是原始数据(raw date),如RGB 图像、原始音频数据等。卷积神经网络通过卷积(convolution)操作、汇合(pooling)操作和非线性激活函数(non-linear activation function)映射等一系列操作的层层堆叠,将高层语义信息逐层由原始数据输入层中抽取出来,逐层抽象,这一过程便是“前馈运算”(feed-forward)。其中,不同类型操作在卷积神经网络中一般称作“层”:卷积操作对应“卷积层”,汇合操作对应“汇合层”等等。最终,卷积神经网络的最后一层将其目标任务(分类、回归等)形式化为目标函数(objiective function)。通过计算预测值与真实值之间的误差或损失(loss),凭借反向传播算法(back-propagation algorithm)将误差或损失由最后一层逐层向前反馈(back-forward),更新每层参数,并在更新参数后再次前馈,如此往复,直到网络模型收敛,从而达到模型训练的目的。

(a)AlexNet结构

(b)Geoffrey E. Hinton

图  AlexNet网络结构和Geoffrey E. Hinton。Hinton因其杰出的研究成就,获得2016年度电气和电子工程师协会(IEEE)和爱丁堡皇家科学家联合颁发的James Clerk Maxwell 奖,以表彰其在深度学习方面的突出贡献

更通俗地讲,卷积神经网络犹如搭积木的过程(如公式1),将卷积等操作层作为“基本单元”依次“搭”在原始数据(公式1中的x1)上,逐层“堆砌”,以损失函数的计算(公式1中的z)作为过程结束,其中每层数据形式是一个三维张量(tensor)。具体地,在计算机视觉应用中,卷积神经网络的数据层通常是RGB颜色空间的图像:H 行,W 列,3个通道(分别为R,G,B),在此记作x1。x1 经过第一层操作可得x2,对应第一层操作中的参数记为ω1;x2 作为第二层操作层ω2 的输入,可得x3⋯⋯直到第L−1 层,此时网络输出为xL。在上述的过程中,理论上每层操作层可为单独卷积操作、汇合操作、非线性映射或其他操作/变换,当然也可以是不同形式操作/变换的组合。

最后,整个网络以损失函数的计算结束。若y 是输入x1 对应的真实标记(ground truth),则损失函数表示为:

其中,函数L(·) 中的参数即ωL。事实上,可以发现对于层中的特定操作,其参数ωi 是可以为空的,如汇合操作、无参的非线性映射以及无参损失函数的计算等。实际应用中,对于不同任务,损失函数的形式也随之改变。以回归问题为例,常用的ℓ2 损失函数即可作为卷积网络的目标函数,此时有

若对于分类问题,网络的目标函数常采用交叉墒(cross entropy)损失函数,有

其中

C 为分类任务类别数。无论回归问题还是分类问题,在计算z 前,均需要通过合适的操作得到与y 同维度的xL,方可正确计算样本预测的损失/误差值。

 end

*欢迎在留言区分享您的观点  

*值班小Paddle:wangp

*为了方便大家问题的跟进解决,PaddlePaddle采用Github Issue来采集信息和追踪进度。大家遇到问题请搜索Github Issue,问题未解决请优先在Github Issue上提问,有助于问题的积累和沉淀

点击“阅读原文”,访问Github Issue。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值