【问题标题】:Pytorch image segmentation transfer learningPytorch 图像分割迁移学习
【发布时间】:2020-11-07 17:14:32
【问题描述】:

我是 Pytorch 的新手。我的问题是:如何将迁移学习应用于自定义数据集?我正在对脑肿瘤进行图像分割。我可以找到使用 U-net 结构的示例,但找不到使用预训练模型的权重进行 U-net 图像分割的示例?

【问题讨论】:

  • 您可以使用 load_state_dict 函数使用预训练模型的权重初始化您的模型。

标签: pytorch image-segmentation transfer-learning


【解决方案1】:

您可以通过两种方式获得预训练模型:

  1. .pt.pth 等格式共享的模型权重或完整模型: 在这种情况下,Saving and Loading Models 是一个很好的起点。从那里的教程中复制,您可以将模型加载为
model = TheModelClass(*args, **kwargs)
model.load_state_dict(torch.load(PATH))
  1. 另一种方法是从torchvision 加载模型。可用型号列表可在Torchvision Models 获得。 U-Net 尚不可用。但是,可以加载一个预训练的模型作为编码器,并编写一个单独的解码器来形成一个带有预训练编码器的 U-Net。 在这种情况下,从 API 中显示的函数调用返回的模型对象在 pretrained=True 时已经加载了预训练的权重。

对于编写自定义数据加载器,PyTorch data loaders 可能是一个有用的指南。

【讨论】:

    猜你喜欢
    • 2019-01-09
    • 1970-01-01
    • 2016-11-28
    • 2018-11-30
    • 2021-11-30
    • 2020-06-06
    • 2022-10-17
    • 2019-11-08
    • 1970-01-01
    相关资源
    最近更新 更多