如不用自动下载权重,要把pretrained=True改成False?

pretrained=True底层逻辑

1. pretrained=True的真正作用

当你调用resnet50(pretrained=True)时,torchvision的源码里会做两件事:

  • 第一步:初始化一个空的 ResNet50 模型结构;
  • 第二步:自动调用model_zoo.load_url(model_urls['resnet50'])------ 也就是去下载官方权重文件,并加载到模型中。

这就是为什么只要设pretrained=True就会触发下载 ------ 这是torchvision内置的逻辑,和你后续手动加载本地权重无关,哪怕你手动加载了,pretrained=True还是会先触发下载流程。

2. 改成pretrained=False的影响

pretrained=True改成pretrained=False仅会关闭 "自动下载 + 自动加载官方权重" 这一步,不会影响模型本身的结构,也不会影响你后续手动加载本地权重的操作。

简单说:

  • pretrained=True:模型结构 + 自动下载并加载官方权重;
  • pretrained=False:仅初始化模型结构(空参数),但你后续手动加载了本地的官方权重,最终模型的参数和pretrained=True完全一样的,不会影响项目其他部分。

如果不改False,哪怕你写了加载本地权重的代码,程序还是会先去尝试下载官方权重(这就是你之前遇到下载中断的原因),下载失败后才会执行你后续的代码(甚至可能直接报错终止,根本走不到你加载本地权重的步骤)。

相关推荐
这张生成的图像能检测吗1 个月前
(论文速读)AIMV2:一种基于多模态自回归预训练的大规模视觉编码器方法
人工智能·计算机视觉·预训练·视觉语言模型
2401_841495642 个月前
预训练基础模型简介
gpt·语言模型·自然语言处理·bert·transformer·大语言模型·预训练
镰刀韭菜3 个月前
【AI4S】DrugChat:迈向在药物分子图上实现类似ChatGPT的功能
llm·图神经网络·预训练·gnn·ai4s·drugchat·药物分子图谱
audyxiao0017 个月前
AAAI 2025论文分享│STD-PLM:基于预训练语言模型的时空数据预测与补全方法
人工智能·计算机·语言模型·自然语言处理·预训练·时空预测·注意力模块
青橘MATLAB学习8 个月前
深度学习中的预训练与微调:从基础概念到实战应用全解析
人工智能·深度学习·微调·迁移学习·预训练·梯度消失·模型复用
CS_木成河10 个月前
【深度学习】预训练和微调概述
人工智能·深度学习·语言模型·微调·预训练
SpikeKing1 年前
LLM - 大模型 ScallingLaws 的设计 100B 预训练方案(PLM) 教程(5)
人工智能·llm·预训练·scalinglaws·100b·deepnorm·egs
paixiaoxin1 年前
AAAI2024论文解读|HGPROMPT Bridging Homogeneous and Heterogeneous Graphs
提示学习·图神经网络·预训练·aaai·同构图·小样本学习·异构图
爱喝白开水a1 年前
基于Transformer的图像处理预训练模型
图像处理·人工智能·深度学习·transformer·预训练·ai大模型·计算机技术