动手学深度学习24 AlexNet

动手学深度学习24 AlexNet

  • 1. AlexNet
    • 传统机器学习
    • AlexNet
  • 2. 代码
  • 3. QA

1. AlexNet

在这里插入图片描述

传统机器学习

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

AlexNet

在这里插入图片描述
AlexNet & LeNet对比
加了三层隐藏层,通道数和全连接层单元数更多
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
计算需要的浮点数,10亿次浮点数计算。
在这里插入图片描述
在这里插入图片描述

2. 代码

import torch
from torch import nn
from d2l import torch as d2lnet = nn.Sequential(# 这里使用一个11*11的更大窗口来捕捉对象。# 同时,步幅为4,以减少输出的高度和宽度。# 另外,输出通道的数目远大于LeNetnn.Conv2d(1, 96, kernel_size=11, stride=4, padding=1), nn.ReLU(),nn.MaxPool2d(kernel_size=3, stride=2),# 减小卷积窗口,使用填充为2来使得输入与输出的高和宽一致,且增大输出通道数nn.Conv2d(96, 256, kernel_size=5, padding=2), nn.ReLU(),nn.MaxPool2d(kernel_size=3, stride=2),# 使用三个连续的卷积层和较小的卷积窗口。# 除了最后的卷积层,输出通道的数量进一步增加。# 在前两个卷积层之后,汇聚层不用于减少输入的高度和宽度nn.Conv2d(256, 384, kernel_size=3, padding=1), nn.ReLU(),nn.Conv2d(384, 384, kernel_size=3, padding=1), nn.ReLU(),nn.Conv2d(384, 256, kernel_size=3, padding=1), nn.ReLU(),nn.MaxPool2d(kernel_size=3, stride=2),nn.Flatten(),# 这里,全连接层的输出数量是LeNet中的好几倍。使用dropout层来减轻过拟合nn.Linear(6400, 4096), nn.ReLU(), nn.Dropout(p=0.5),nn.Linear(4096, 4096), nn.ReLU(),nn.Dropout(p=0.5),# 最后是输出层。由于这里使用Fashion-MNIST,所以用类别数为10,而非论文中的1000nn.Linear(4096, 10)
)
X = torch.randn(1, 1, 224, 224)
for layer in net:X=layer(X)print(layer.__class__.__name__,'output shape:\t',X.shape)batch_size = 128
train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size, resize=224)lr, num_epochs = 0.01, 10
d2l.train_ch6(net, train_iter, test_iter, num_epochs, lr, d2l.try_gpu())
Conv2d output shape:	 torch.Size([1, 96, 54, 54])
ReLU output shape:	 torch.Size([1, 96, 54, 54])
MaxPool2d output shape:	 torch.Size([1, 96, 26, 26])
Conv2d output shape:	 torch.Size([1, 256, 26, 26])
ReLU output shape:	 torch.Size([1, 256, 26, 26])
MaxPool2d output shape:	 torch.Size([1, 256, 12, 12])
Conv2d output shape:	 torch.Size([1, 384, 12, 12])
ReLU output shape:	 torch.Size([1, 384, 12, 12])
Conv2d output shape:	 torch.Size([1, 384, 12, 12])
ReLU output shape:	 torch.Size([1, 384, 12, 12])
Conv2d output shape:	 torch.Size([1, 256, 12, 12])
ReLU output shape:	 torch.Size([1, 256, 12, 12])
MaxPool2d output shape:	 torch.Size([1, 256, 5, 5])
Flatten output shape:	 torch.Size([1, 6400])
Linear output shape:	 torch.Size([1, 4096])
ReLU output shape:	 torch.Size([1, 4096])
Dropout output shape:	 torch.Size([1, 4096])
Linear output shape:	 torch.Size([1, 4096])
ReLU output shape:	 torch.Size([1, 4096])
Dropout output shape:	 torch.Size([1, 4096])
Linear output shape:	 torch.Size([1, 10])
/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py:558: UserWarning: This DataLoader will create 4 worker processes in total. Our suggested max number of worker in current system is 2, which is smaller than what this DataLoader is going to create. Please be aware that excessive worker creation might get DataLoader running slow or even freeze, lower the worker number to avoid potential slowness/freeze if necessary.warnings.warn(_create_warning_msg(
training on cuda:0
/usr/local/lib/python3.10/dist-packages/torch/nn/modules/conv.py:456: UserWarning: Plan failed with a cudnnException: CUDNN_BACKEND_EXECUTION_PLAN_DESCRIPTOR: cudnnFinalize Descriptor Failed cudnn_status: CUDNN_STATUS_NOT_SUPPORTED (Triggered internally at ../aten/src/ATen/native/cudnn/Conv_v8.cpp:919.)return F.conv2d(input, weight, bias, self.stride,loss 0.326, train acc 0.880, test acc 0.882
1419.0 examples/sec on cuda:0

在这里插入图片描述

3. QA

cnn和softmax一起训练的,可能cnn学习到的就是softmax需要的,从模型层面就是一个模型,更高效一些。端到端的学习。

池化层33 22的区别:
33 往左偏往右偏都可以 22 允许往左偏一点点

最后两个全连接层在前面卷积抽取不够深的情况下继续抽取,模型更大。

参数对比, AlexNet 46M Vs LeNet 0.6M

宣传套路。

经典网络设计思路

技术基线已经很高,产品落地。

如果图片size和网络要求的size不一致,怎么处理。
多扣几个图出来。效果不会很大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/335236.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【信息学奥赛】两个整型变量的值交换

【信息学奥赛】两个整型变量的值交换 💖The Begin💖点点关注,收藏不迷路💖 编写如下一个函数,用于将两个整型变量的值交换 输入: 两个数 输出: 交换后的两个数 样例输入: 3 2样…

HTTPS单双向认证流程详解与联想

HTTPS单向认证 HTTPS在单向认证传输的过程中会涉及到三个密钥: 服务端的公钥和私钥,用来进行非对称加密交换密钥 客户端生成的随机密钥,用来进行对称加密传输数据 认证过程 1.客户端向服务器发起HTTPS请求,连接到服务器的443端…

【算法】位运算算法——两整数之和

题解:两整数之和(位运算算法) 目录 1.题目2.位运算算法3.参考代码4.总结 1.题目 题目链接:LINK 2.位运算算法 这个题目难点就在于不能用、- 那什么能够代替加号呢? 既然数的层面不能用号,那二进制的角度去用号即可。 恰好&a…

2024年学浪视频怎么录屏

由于学浪最新版PC学生版客户端已经有防止录屏,而且录屏效率太慢,本文将介绍你一种高效率的工具,小浪助手.exe,它可以很轻松的将你的学浪视频下载下来 学浪下载工具我已经打包好了,有需要的自己下载一下 注意&#xf…

福建聚鼎科技:装饰画生意到底有没有前景

在当今社会,随着人们生活水平的提高和审美需求的多样化,家居装饰行业迎来了新的发展机遇。装饰画作为家居装饰的重要组成部分,其市场前景备受关注。那么,装饰画生意到底有没有前景呢? 从市场需求的角度来看,装饰画市场…

服务器数据恢复—异常断电导致ESXi虚拟机无法启动的数据恢复案例

服务器数据恢复环境: 某大厂PS4000服务器,服务器上部署VMware ESXi虚拟化平台。 服务器故障: 机房断电,重启后服务器中的某台虚拟机不能正常启动。管理员查看虚拟机配置文件,发现无法启动的虚拟机的配置文件除了磁盘文…

Django序列化器中validate没起作用?validate的触发时机

今天上班的时候分配了一个任务,是修复前端的一个提示优化,如下图所示: 按照以往的经验我以为可以直接在validate上进行校验,如何抛出一个异常即可 ,例如: class CcmSerializer(serializers.ModelSerialize…

第十四届蓝桥杯c++研究生组

A 关键思路是求每个十进制数的数字以及怎么在一个数组中让判断所有的数字次数相等。 求每个十进制的数字 while(n!0){int x n%10;//x获取了n的每一个位数字n/10;}扩展:求二进制的每位数字 (注意:进制转换、1的个数、位运算) x…

【源码】2024完美运营版商城/拼团/团购/秒杀/积分/砍价/实物商品/虚拟商品等全功能商城

后台可以自由拖曳修改前端UI页面 还支持虚拟商品自动发货等功能 前端UNIAPP 后端PHP 一键部署版本 获取方式: 微:uucodes

Vue2+Element 封装评论+表情功能

有需要的小伙伴直接拿代码即可&#xff0c;不需要下载依赖。 评论组件如下&#xff1a; 创建 comment.vue 文件。 表情组件 VueEmoji.vue 在评论组件中使用。 <template><div class"comment"><div class"flex_box"><h2>评论 {…

香橙派AIpro开发板初体验

香橙派AIpro开发板初体验 一、引言 在当前的AI发展浪潮中&#xff0c;边缘计算逐渐成为了研究的热点。香橙派AIpro开发板作为一款基于昇腾AI技术的开发板&#xff0c;凭借其强大的算力和丰富的接口&#xff0c;为AI边缘计算提供了强大的支持。最近&#xff0c;我也是拿到了官…

男士内裤哪种款式舒服?五条实用技巧让你轻松挑选

对于很多男生来说&#xff0c;依然很难挑到真正舒适的内裤。比如卡臀卡裆&#xff0c;走路时不时还得提拉一下&#xff0c;真的很尴尬。又紧又闷的内裤&#xff01;尤其是炎热的夏天&#xff0c;黏糊糊的贼难受&#xff01;到底有没有一款舒适透气男士内裤呢&#xff1f;那今天…

Kafka之【生产消息】

消息&#xff08;Record&#xff09; 在kafka中传递的数据我们称之为消息&#xff08;message&#xff09;或记录(record)&#xff0c;所以Kafka发送数据前&#xff0c;需要将待发送的数据封装为指定的数据模型&#xff1a; 相关属性必须在构建数据模型时指定&#xff0c;其中…

【YOLOv10】使用yolov10训练自己的数据集/验证 /推理 /导出模型/ONNX模型的使用

YOLOv10: 实时端到端的目标检测。 性能 YOLOv10比最先进的YOLOv9延迟时间更低&#xff0c;测试结果可以与YOLOv9媲美&#xff0c;可能会成为YOLO系列模型部署的“新选择”。 目录 1 数据准备 2 配置文件 3 训练 4 验证 5 预测 6 导出模型 7 ONNX模型的使用 官方论文地址…

ubuntu下载离线软件包及依赖

目录 一、前言 二、正文 1.准备环境 2.开始下载 3.后续工作 三、总结 一、前言 由于给客户提供的设备机不允许上网&#xff0c;那么所有待安装的软件包及依赖库都需要提前下载好&#xff0c;然后通过局域网传过去再安装。 另外&#xff0c;软件包可能还依赖其他的库&…

如何利用Firebase Hosting来托管网站

文章目录 如何利用Firebase Hosting来托管网站前提条件详细步骤1. 安装 Firebase CLI2. 登录 Firebase3. 初始化 Firebase 项目4. 准备网站文件5. 部署到 Firebase6. 配置自定义域名&#xff08;可选&#xff09; 常见问题 如何利用Firebase Hosting来托管网站 以下是更详细的…

解决git status提示error bad signature 0x00000000

问题描述&#xff1a; 操作git的时候电脑卡了&#xff0c;重启电脑后git status就提示bad signature 0x00000000&#xff0c;index file corrupt错误&#xff0c;如下&#xff1a; 解决办法&#xff1a; rm -f .git/index git reset

【算法】dd爱转转

✨题目链接&#xff1a; dd爱旋转 ✨题目描述 读入一个n∗n的矩阵&#xff0c;对于一个矩阵有以下两种操作 1:顺时针旋180 2:关于行镜像 如 变成 给出q个操作&#xff0c;输出操作完的矩阵 ✨输入描述: 第一行一个数n(1≤n≤1000)&#xff0c;表示矩阵大小 接下来n行&#xff…

java项目之高校教师科研管理系统源码(springboot+vue+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的高校教师科研管理系统源码。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 高校教师科研管…

国产PS插件新选择;StartAI平替中的佼佼者!

前言 在设计的世界里&#xff0c;每一个细节都至关重要。设计师们常常面临时间紧迫、创意受限、工具复杂等挑战。Photoshop虽强大&#xff0c;但繁琐的操作和高昂的成本往往令人望而却步。今天我就为大家介绍一款PSAI插件——StartAI&#xff0c;一款专为Photoshop设计的国产A…