torch.hub.load()解析,如何加载本地权重

用yolov5训练了一个权重,项目只能部署在本地

官方文档

torch.hub.load(repo_or_dir, model, *args, source='github', force_reload=False, verbose=True, skip_validation=False, **kwargs)

[来源]

从 github 存储库或本地目录加载模型。

注意:加载模型是典型的用例,但这也可用于加载其他对象,例如分词器、损失函数等。

如果source是“github”,repo_or_dir则应repo_owner/repo_name[:tag_name]采用带有可选标签/分支的形式。

如果source是“local”,repo_or_dir则应为本地目录的路径。

参数

  • repo_or_dir ( string ) – 如果source是 'github',这应该对应于repo_owner/repo_name[:tag_name]具有可选标签/分支格式的 github 存储库,例如 'pytorch/vision:0.10'。如果tag_name未指定,则假定默认分支为main存在,否则为master。如果source是“local”,则它应该是本地目录的路径。

  • model ( string ) – 在 repo/dir's 中定义的可调用(入口点)的名称hubconf.py

  • *args可选)– callable 的相应参数model

  • source ( string optional ) – 'github' 或 'local'。指定如何 repo_or_dir解释。默认为“github”。

  • force_reload ( bool , optional ) – 是否无条件强制重新下载github repo。如果 没有任何影响 source = 'local'。默认为False

  • verbose ( bool , optional ) – 如果False,静音有关命中本地缓存的消息。请注意,有关首次下载的消息无法静音。如果source = 'local'没有任何影响。默认为True

  • skip_validation ( bool , optional ) – 如果False,torchhub 将检查github参数指定的分支或提交是否正确属于 repo 所有者。这将向 GitHub API 发出请求;您可以通过设置GITHUB_TOKEN环境变量来指定非默认 GitHub 令牌 。默认为False

  • **kwargs (可选) – callable 的相应 kwargs model

返回

model使用给定*args和调用时可调用 的输出**kwargs

例子

 # from a github repo
repo = 'pytorch/vision'
model = torch.hub.load(repo, 'resnet50', pretrained=True)
 # from a local directory
path = '/some/local/path/pytorch/vision'
model = torch.hub.load(path, 'resnet50', pretrained=True)

然后又去找了yolov5的官方文档glenn-jocher提到可以自定义模型:

model = torch.hub.load('ultralytics/yolov5', 'custom', path='path/to/best.pt')  # local model
model = torch.hub.load('path/to/yolov5', 'custom', path='path/to/best.pt', source='local')  # local repo

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2023年2月26日 上午9:21
下一篇 2023年2月26日 上午9:22

相关推荐