24/10/12算法笔记 VGG

VGG特点:

1.深度:非常深

2.卷积核采用3*3,使得网络能够捕捉到更细粒度的图像特征

3.全连接层:使用全连接层来分类

4.使用ReLU激活函数,有助于缓解梯度消失

5.在卷积层和池化层后,使用局部归一化,有助于提高网络训练速度和性能

def vgg_block(num_convs,in_channels,out_channels):
    layers = []
    for_ in range(num_convs):
        layers.append(nn.Conv2d(in_channels,out_channels,
                                kernel_size=3,padding=1))
        layers.append(nn.ReLU())
        in_channels = out_channels
    layers.append(nn.MaxPool2d(kernel_size=2,stride=2))
    return nn.Sequential(*layers)

问题:

关于代码里面的num_convs怎么选择vgg块的配置

根据任务的复杂性:

  • 更复杂的任务(例如,具有大量类别的图像分类)可能需要更深的网络来捕获更抽象的特征,因此可能选择VGG16或VGG19。

数据集大小:大的选大的,小的选小的(比如vgg11或13)

训练资源,训练时间,泛化能力,网络越深,参数越多,会提高泛化能力,也增加了过拟合风险

相关推荐
醉陌离16 分钟前
渗透测试笔记——shodan(4)
笔记
LateBloomer77731 分钟前
FreeRTOS——信号量
笔记·stm32·学习·freertos
legend_jz34 分钟前
【Linux】线程控制
linux·服务器·开发语言·c++·笔记·学习·学习方法
Komorebi.py36 分钟前
【Linux】-学习笔记04
linux·笔记·学习
余炜yw39 分钟前
【LSTM实战】跨越千年,赋诗成文:用LSTM重现唐诗的韵律与情感
人工智能·rnn·深度学习
莫叫石榴姐1 小时前
数据科学与SQL:组距分组分析 | 区间分布问题
大数据·人工智能·sql·深度学习·算法·机器学习·数据挖掘
96771 小时前
对抗样本存在的原因
深度学习
如若1231 小时前
利用 `OpenCV` 和 `Matplotlib` 库进行图像读取、颜色空间转换、掩膜创建、颜色替换
人工智能·opencv·matplotlib
YRr YRr2 小时前
深度学习:神经网络中的损失函数的使用
人工智能·深度学习·神经网络
fengbizhe2 小时前
笔试-笔记2
c++·笔记