阿偶~ 2023-04-07 16:43 采纳率: 11.1%
浏览 88
已结题

如何删除预训练权重的前六个模块

由于自己是做以swin transformer为主干的faster rcnn的目标检测,但是官方并为给出faster rcnn的预训练权重文件,如果直接采用mask rcnn预训练权重会出现以下问题:

img

通过netron查看架构如下

img


发现前6个为mask相关权重因此才会出现第一张图片的错误,因此想请问以下两个问题:
1、如何删除预训练权重文件的前6个与mask相关的权重信息。该权重为swin transformer目标检测官方预训练权重如下图:

img


,如何才能删除该权重的前6个模块?
2、是否有以swin transformer为主干网络的faster rcnn的预训练权重呢?
注:需删除的模块均以roi_head.mask开头,如图二

  • 写回答

4条回答 默认 最新

  • 龙_傲_天 2023-04-07 16:47
    关注

    对于您的第一个问题,删除预训练权重文件的前6个与mask相关的权重信息可以通过以下步骤完成:

    使用Python中的NumPy库读取预训练权重文件。
    使用切片操作,将第7个模块以及之后的所有模块的权重提取出来。
    将提取的权重保存到一个新的权重文件中。
    以下是一个示例代码,演示如何完成这个任务:

    import numpy as np
    
    # 读取预训练权重文件
    weights = np.load('pretrained_weights.npy', allow_pickle=True).item()
    
    # 删除前6个与mask相关的权重
    new_weights = {}
    for key, value in weights.items():
        if 'layers' in key and int(key.split('.')[1]) >= 6:
            new_key = '.'.join(key.split('.')[1:])
            new_weights[new_key] = value
    
    # 保存新的权重文件
    np.save('new_weights.npy', new_weights)
    
    
    

    对于您的第二个问题,目前我无法确定是否有以Swin Transformer为主干网络的Faster R-CNN的预训练权重。您可以尝试在相关的论文、代码库或社区中搜索相关信息,或者直接联系作者或开发者以获取更多信息。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月8日
  • 修改了问题 4月7日
  • 修改了问题 4月7日
  • 创建了问题 4月7日

悬赏问题

  • ¥15 io.jsonwebtoken.security.Keys
  • ¥15 急,ubuntu安装后no caching mode page found等
  • ¥15 联想交换机NE2580O/NE1064TO安装SONIC
  • ¥15 防火墙的混合模式配置
  • ¥15 Ubuntu不小心注销了要怎么恢复啊
  • ¥15 win10电脑安装完plcsim advanced4.0运行时为什么会提示找不到虚拟网卡
  • ¥15 安装powerbuilder10卡在安装程序正在运行这个页面 没有下一步任何指令
  • ¥15 关于mpi的问题:请问遇到这种情况需要怎么解决,出现这个问题后电脑不能进行mpi多核运行只能进行单核运行
  • ¥50 微信聊天记录备份到电脑提示成功了,但还是没同步到电脑微信
  • ¥15 python怎么在已有视频文件后添加新帧