news 2026/5/22 6:16:40

探究nn.Linear和nn.Conv2d的基本用法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
探究nn.Linear和nn.Conv2d的基本用法

1问题

1.如何在pytorch中使用nn.Linear?

2.如何在pytorch环境中运用nn.Conv2d?

2 方法

1.首先在网上查询了关于nn.Linear的含义。PyTorch的nn.Linear()是用于设置网络中的全连接层的,需要注意在二维图像处理的任务中,全连接层的输入与输出一般都设置为二维张量,形状通常为[batch_size, size],不同于卷积层要求输入输出是四维张量。其中in_features指的是输入的二维张量的大小,即输入的[batch_size, size]中的size。out_features指的是输出的二维张量的大小,即输出的二维张量的形状为[batch_size,output_size],当然,它也代表了该全连接层的神经元个数。
从输入输出的张量的shape角度来理解,相当于一个输入为[batch_size, in_features]的张量变换成了[batch_size, out_features]的输出张量。

  1. Conv2d是用来实现2d卷积操作的,其中:

in_channels 表示输入的channels数

out_channels 表示输出的channels数,

kernel_size 表示卷积核的尺寸,可以是方形卷积核、也可以不是,下边example可以看到

stride 表示 步长,用来控制卷积核移动间隔

padding 表示输入边沿扩边操作

import torch
from torch import nn
conv1 = nn.Conv2d(
in_channels=3, #输入通道数
#每个卷积核的通道数与输入通道数相同
#卷积运算后得到128张特征图
out_channels=128, #输出通道数,表示当前卷积层有128个卷积核
kernel_size=3, #卷积核大小3x3
stride=1, #步长,每次滑动窗口移动的长度,默认为1
)
fc1 = nn.Linear(
in_features=128*26*26, #前一层拉伸后的向量大小
out_features=10,
)
x = torch.rand(size=(32,3,28,28))
x = conv1(x)
x = torch.flatten(x,1) #二维的特征图与全连接进行连接时需要拉伸
x = fc1(x)
#[32,3,28,28] -> [32,32,26,26]
print(x.shape)

输出:

3结语

针对探究nn.Linear问题,其用于设置网络中的全连接层的,需要注意在二维图像处理的任务中,全连接层的输入与输出一般都设置为二维张量,其中参数in_features指的是输入的二维张量的大小,即输入的[batch_size, size]中的size。out_features指的是输出的二维张量的大小。

针对nn.Conv2d问题,其用法是用来实现2d卷积操作的,其中包含了许多用于卷积的参数,in_channels、out_channels和kernel_size是需要手动提供的,而其他的参数是有默认值。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/11 23:54:14

12月16号:分岐后机会更明显

这轮迷你周期从上周四开始,情绪和指数双冰点,航天动力逆势中表现出了气质,上周四是确认地位的买点,半路或者打板,上周五空头龙洲反助攻情绪修复,航天动力的买点在低吸。接着昨天周一受外围影响,…

作者头像 李华
网站建设 2026/5/12 6:57:18

静思闲杂语记

生活就是这样子,朋友是越交越少,金钱是越花越多。人们,不会怜悯弱者的苦难,只会同情强者的遭遇。千流万川常存世,一世芳华随风散。得一诺不如得一人,得一人不如得一心。心远则体乏,劳体则心疲。…

作者头像 李华
网站建设 2026/5/16 1:25:23

GitHub级文档美化终极方案:github-markdown-css完整指南

还在为技术文档排版杂乱无章而苦恼?还在为团队内部Markdown样式不统一而烦恼?今天我要分享一个3分钟就能让文档颜值飙升的解决方案——github-markdown-css。这个轻量级CSS库能够让你的文档瞬间拥有GitHub官方同款视觉体验,无论是个人博客、技…

作者头像 李华
网站建设 2026/5/11 17:01:31

Koodo Reader如何实现智能封面管理?电子书封面优化全攻略

Koodo Reader如何实现智能封面管理?电子书封面优化全攻略 【免费下载链接】koodo-reader A modern ebook manager and reader with sync and backup capacities for Windows, macOS, Linux and Web 项目地址: https://gitcode.com/GitHub_Trending/koo/koodo-read…

作者头像 李华
网站建设 2026/5/15 9:19:00

终极指南:如何在Android应用中快速集成Vosk中文语音识别功能

终极指南:如何在Android应用中快速集成Vosk中文语音识别功能 【免费下载链接】vosk-android-demo alphacep/vosk-android-demo: Vosk Android Demo 是一个演示项目,展示了如何在Android平台上使用Vosk语音识别引擎进行实时语音转文本功能。Vosk是开源的离…

作者头像 李华