CNN-卷积神经网络

【模型】VGG-16与VGG-19模型结构

作者 : 老饼 发表日期 : 2023-07-28 10:52:49 更新日期 : 2024-01-19 10:38:18
本站原创文章,转载请说明来自《老饼讲解-深度学习》www.bbbdata.com



本文详细讲解VGG-16的模型结构及相关数据处理、训练方法

通过本文具体地掌握VGG-16模型及VGG原文对VGG所作的相关细节处理




    01. VGGNet模型回顾    



本节回顾VGGNet系列模型,并展示VGGNet各个模型的配置



      VGGNet模型简要回顾       


VGGNet是Visual Geometry Group和Google DeepMind公司在2014年共同研发的卷积神经网络
VGG主要用于图片类别识别
 VGG的输入是:3×224×224的图片                                           
 VGG的输出是:1000×1的向量P,Pi代表样本属于第i类的概率 
   VGG共包括6个模型,各个模型的配置如下:
 VGG各个模型的配置表
其中,较实用的模型为D、E模型,它们一般被称为VGG-16和VGG-19







     02. VGG-16模型结构    



本节详细讲解VGG-16模型结构和VGG-16的具体运算流程



     VGG-16模型结构描述    


VGG-16的卷积、池化配置预说明
 VGG的卷积、池化配置是统一的,如下
 卷积配置:3×3的卷积核,填充1,步幅1                                  
           特点:该卷积配置的输出Size与输入Size一致     
 池化配置:2×2的池化窗口,步幅2,池化方式:max                  
           特点:该池化配置的输出Size是输入Size的一半
VGG-16的各层明细
 
VGG-16模型结构图
输入:224×244×3的图像                                                                                               
说明:以下“卷积(a,b)”中的a,b代表卷积的输入和输出通道                          

C1:卷积(3,64)->ReLu->卷积(64,64)->ReLu->池化                                                       
     输出Size:112×112×64                                                       
C2:卷积(64,128)->ReLu->卷积(128,128)->ReLu->池化                                               
     输出Size:56×56×128                                                        
C3:卷积(128,256)->ReLu->卷积(256,256)->ReLu->卷积(256,256)->ReLu->池化        
     输出Size:28×28×256                                                        
C4:卷积(256,512)->ReLu->卷积(512,512)->ReLu->卷积(512,512)->ReLu->池化        
     输出Size:14×14×512                                                        
C5:卷积(512,512)->ReLu->卷积(512,512)->ReLu->卷积(512,512)->ReLu->池化        
     输出Size:7×7×512                                                          
F6:全连接层,神经元个数4096,激活函数ReLu                                                            
F7:全连接层,神经元个数4096,激活函数ReLu                                                            
F8:全连接层,神经元个数1000(即类别的个数)                                                              
VGG-16的输出:将F8的输出进行soft-max就是最终的输出                                              
✍️备注:F6和F7在训练时采用dropout机制进行,其中概率系数:0.5



      VGG-16的模型结构图    


为方便直观了解VGG-16的模型的整体结构以及运算流程,
笔者绘制了VGG-16的模型结构图如下

 VGG-16模型结构图-详细 





     03. VGG-19模型结构    



本节基于VGG-16的基础上,讲解VGG-19的模型结构



        VGG-19的模型结构       


VGG-19的结构只是在VGG-16的C3、C4、C5层各加一个卷积层,其它一切与VGG-16一致
 VGG-19的C3、C4、C5配置具体如下:
👉C3:卷积(128,256)->ReLu->卷积(256,256)->ReLu->卷积(256,256)->ReLu->卷积(256,256)->ReLu->池化          
     输出Size:28×28×256                                                                                 
👉C4:卷积(256,512)->ReLu->卷积(512,512)->ReLu->卷积(512,512)->ReLu->卷积(512,512)->ReLu->池化          
     输出Size:14×14×512                                                                                 
👉C5:卷积(512,512)->ReLu->卷积(512,512)->ReLu->卷积(512,512)->ReLu->卷积(512,512)->ReLu->池化          
     输出Size:7×7×512                                                                                   
✍️老饼语
简单来说,VGG-19就是在VGG-16的C3,C4,C5各加一层,共加三层,就变成了VGG-19
为避免内容过于重复,这里不再展示VGG-19的完整结构图,参考VGG-16即可











 End 




联系老饼