[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 保存了前一层输出的特征数量,作为新分类层的输入维度

其他常见场景

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

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

相关推荐
默_笙4 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
qq_426003964 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫4 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
长沙三为智能科技4 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
风合星语4 天前
2026 具身智能技术实战(一):VLA 到底怎么控制机器人?——用 LeRobot 跑通 SmolVLA 推理
pytorch·机器人·具身智能·vla·lerobot·smolvla
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
只睡四小时4 天前
Canvas 弹道联机实战:700 行 + 固定时间步长
python·websocket·html5·游戏开发·canvas
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++
Tancenter4 天前
sequeeze()和unsequeeze()
pytorch·tensorr