nn.Flatten()函数

本文介绍了PyTorch中Flatten层的作用,它用于将多维输入展平为一维。通过示例展示了在卷积神经网络后使用Flatten层如何改变输出尺寸。示例1中,默认的start_dim=1,输出大小为[32, 288];示例2中,指定start_dim=0,输出大小变为[9216]。这两个例子突显了start_dim参数的影响。

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

注意默认的start_dim从1开始
https://pytorch.org/docs/stable/generated/torch.nn.Flatten.html?highlight=flatten#torch.nn.Flatten
image.png

示例1

卷积公式

o u t s i z e = i n p u t s i z e − k s i z e + 2 ∗ p a d d i n g s t r i d e + 1 outsize=\frac{inputsize - ksize + 2*padding}{stride} + 1 outsize=strideinputsizeksize+2padding+1

import torch
import torch.nn as nn
input = torch.randn(32, 1, 5, 5)
m = nn.Sequential(
    nn.Conv2d(1, 32, 5, 1, 1),  # 通过卷积,得到torch.size([32, 32, 3, 3]
    nn.Flatten())

output = m(input)
print(output.size())

>> torch.Size([32, 288])

示例2

import torch
import torch.nn as nn
input = torch.randn(32, 1, 5, 5)
m = nn.Sequential(
    nn.Conv2d(1, 32, 5, 1, 1),  # 通过卷积,得到torch.size([32, 32, 3, 3]
    nn.Flatten(start_dim=0))

output = m(input)
print(output.size())

>>torch.Size([9216])
Visual Studio Code (VSCode)是一款强大的开源代码编辑器,为了更好地支持HTMLCSS和JavaScript等前端开发工作,你可以安装一些插件来增强其功能。以下是配置这些语言插件的一些步骤: 1. **安装Extension Manager**:如果你还没有,打开VSCode,在左下角点击"Extensions"或按 `Ctrl+Shift+X`,然后点击 "Install Extensions"。 2. **安装HTML插件**:推荐插件有: - "Live Server": 实时预览网页更改,方便调试。搜索并安装 "live-server"。 - "Prettier - HTML": 自动格式化HTML代码。搜索 "prettier-vscode" 或 "Prettier HTML"。 3. **安装CSS插件**: - "Color Highlight": 高亮显示CSS颜色。搜索并安装 "color-highlight" 或 "Color Highlight for CSS & SCSS"。 - "Autoprefixer": 根据浏览器前缀自动补全。搜索 "Autoprefixer"。 4. **安装JavaScript插件**: - "ESLint": JavaScript代码检查工具,搜索并安装 "eslint". - "JavaScript (TypeScript)": 如果你需要 TypeScript 支持,安装官方的 TypeScript 插件。 5. **配置设置**:安装完插件后,可以在文件夹或用户级别创建一个 `.vscode/settings.json` 文件,添加插件相关的配置,比如设置 ESLint 的路径或启用特定插件的功能。 6. **启动代码提示和自动完成**:确保在设置中启用了相应的代码提示功能,如 "editor.suggestOnTriggerCharacters" 和 "editor.codeActionsOnSave". 记得每次安装新插件后重启VSCode,以便加载新的设置和功能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值