pytorch模型层的增、删、改
print打印下模型,可以看到各层的名字(小括号里的是层名)
如果层名是数字,写成 model.model[0].act 来定位到act层
import torch import ultralytics from ultralytics import YOLO yolo = YOLO("yolo11n-cls.pt") print(yolo) #小括号里的是层名
删,删除act层
del yolo.model.model[0].act #删除act层 print(yolo) #再查看下是否删除了
改,改linear层
将输出由1000类改为6类
in_features=yolo.model.model[10].linear.in_features yolo.model.model[10].linear=nn.Linear(in_features,out_features=6) # in_features=yolo.get_submodule("model.model.10.linear").in_features # yolo.set_submodule("model.model.10.linear",nn.Linear(in_features,out_features=6)) print(yolo)
两种方式:直接 yolo.model.model[10].linear,或者用set_submodule()方法(10如果在字符串里就直接写10即可)
怎么改某个class的forward???
YOLOv5改进 | Head | 将yolov5的检测头替换为ASFF_Detect_yolov5head改进-CSDN博客
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2023-12-09 QtConcurrent::run()多线程的同步、异步
2023-12-09 Qt并行计算
2023-12-09 Qt同步、异步
2019-12-09 面阵相机是否有拖影的计算方法
2019-12-09 CWnd与HWND,GetSafeHwnd()与m_hWnd