深度学习网络篇之一:LeNet5, VGG, DarkNet19 网络代码(供实验拷贝)

本文深入探讨了深度学习领域的三个经典模型:LeNet5、VGG系列和DarkNet19,详细介绍了它们的架构和构建过程,为读者提供了对这些模型工作原理的全面理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一: LeNet5
在这里插入图片描述

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import datasets, layers, optimizers, Sequential, metrics

model = Sequential()
model.add( layers.Input( shape = (28, 28, 1) ) )
model.add( layers.Conv2D( filters = 6, kernel_size = [5, 5], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.MaxPool2D( pool_size=[2, 2], strides = [2, 2], padding = "same") )
model.add( layers.Conv2D( filters = 16, kernel_size = [5, 5], strides = [1, 1], padding = "valid", activation = "relu") )
model.add( layers.MaxPool2D( pool_size=[2, 2], strides = [2, 2], padding = "same") )
model.add( layers.Flatten() )
model.add( layers.Dense( units = 120, activation = "relu" ) )
model.add( layers.Dense( units = 84, activation = "relu" ) )
model.add( layers.Dense( units = 10, activation = "softmax" ) )
model.summary()

第二:VGG
在这里插入图片描述
VGG11-A

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import datasets, layers, optimizers, Sequential, metrics

model = Sequential()
model.add( layers.Input( shape = (224, 224, 3) ) )
model.add( layers.Conv2D( filters = 64, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.MaxPool2D( pool_size=[2, 2], strides = [2, 2], padding = "same") )

model.add( layers.Conv2D( filters = 128, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.MaxPool2D( pool_size=[2, 2], strides = [2, 2], padding = "same") )

model.add( layers.Conv2D( filters = 256, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.Conv2D( filters = 256, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.MaxPool2D( pool_size=[2, 2], strides = [2, 2], padding = "same") )

model.add( layers.Conv2D( filters = 512, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.Conv2D( filters = 512, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.MaxPool2D( pool_size=[2, 2], strides = [2, 2], padding = "same") )

model.add( layers.Conv2D( filters = 512, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.Conv2D( filters = 512, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.MaxPool2D( pool_size=[2, 2], strides = [2, 2], padding = "same") )

model.add( layers.Flatten() )
model.add( layers.Dense( units = 4096, activation = "relu" ) )
model.add( layers.Dense( units = 4096, activation = "relu" ) )
model.add( layers.Dense( units = 1000, activation = "softmax" ) )
model.summary()

VGG13-B

model = Sequential()
model.add( layers.Input( shape = (224, 224, 3) ) )
model.add( layers.Conv2D( filters = 64, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.Conv2D( filters = 64, kernel_size = [3, 3], strides = [1, 1], padding = "same", activation = "relu") )
model.add( layers.MaxPool2D( pool_size=[2, 2], strides = [2, 2], padding = "same") 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值