[Python | pytorch | torchvision ] models like ResNet... 命名变量说明

明明变量说明 num_ftrs

在 PyTorch 深度学习模型中,num_ftrs 是一个常用的变量命名,它是 "number of features"(特征数量)的缩写。

这个变量通常出现在以下场景中:

主要用途

迁移学习场景中最常见,特别是当你使用预训练模型(如 ResNet、VGG、AlexNet 等)并修改最后的分类层时:

python 复制代码
import torch.nn as nn
import torchvision.models as models

# 加载预训练模型
model = models.resnet18(pretrained=True)

# 获取全连接层的输入特征数
num_ftrs = model.fc.in_features  # 例如 ResNet18 中为 512

# 替换最后的分类层
model.fc = nn.Linear(num_ftrs, num_classes)  # num_classes 是你的新类别数

为什么需要它?

  • 预训练模型的最后分类层通常是针对原始数据集(如 ImageNet 的 1000 类)设计的
  • 当你进行迁移学习时,需要将最后的分类层替换为适合你任务的输出大小
  • num_ftrs 保存了前一层输出的特征数量,作为新分类层的输入维度

其他常见场景

  • 在特征提取器中表示提取的特征向量维度
  • 在自定义网络架构中表示某层的输出特征数
  • 在连接不同模块时作为维度参数

这是一种命名约定,帮助开发者清晰地表达"这里是一个特征数量的参数",而不是使用更模糊的变量名如 nsize

相关推荐
上弦月-编程2 分钟前
【C语言】函数栈帧的创建与销毁(底层原理)
c语言·开发语言
eqwaak05 分钟前
PyTorch张量操作全攻略:从入门到精通
开发语言·人工智能·pytorch·python
辞旧 lekkk6 分钟前
【Qt】初识(上)
开发语言·数据库·qt·学习·萌新
A懿轩A8 分钟前
Ghostty:告别 Mac 毛坯终端,打造 2026 最丝滑的 Ghostty AI 开发驾驶舱——Claude Code 团队也在用
python·macos·策略模式
格林威8 分钟前
线阵工业相机:如何计算线阵相机的行频(Line Rate)?公式+实例
开发语言·人工智能·数码相机·算法·计算机视觉·工业相机·线阵相机
Chasing Aurora9 分钟前
python 安装依赖和导入模块 详解
开发语言·python·虚拟环境·import·pyenv·requirements
近津薪荼12 分钟前
C++ vector容器底层深度剖析与模拟实现
开发语言·c++
木易 士心12 分钟前
为什么 Promise 比 setTimeout 先执行?——JavaScript 事件循环与异步顺序完全指南
开发语言·javascript·ecmascript
念恒1230612 分钟前
Python(for循环)
python·学习
海清河晏11113 分钟前
数据结构 | 链式队列
开发语言·数据结构·链表