在6月11日,Facebook宣布推出PyTorch Hub,这是一个简单的API和工作流程,聚合了计算机视觉、自然语言处理领域的众多经典模型,为机器学习研究的复现提供基础构建模块。无论是ResNet、BERT、GPT、VGG、PGAN还是MobileNet等,只需一行代码即可实现一键调用。图灵奖得主Yann LeCun强烈推荐。
PyTorch Hub旨在解决包括机器学习技术在内的许多研究领域中普遍存在的问题:不可复现或难以复现的问题。随着论文数量持续增长,尤其是在arXiv上数万篇论文以及历史大会投稿,研究可复现性比以往更为重要。虽然很多出版物附有有用的代码和训练好的模型,但仍然留下了一些需要自行解决的问题。
为了提高研究可复现性,PyTorch团队推出了PyTorch Hub,它由一个预先训练模型存储库组成,专门用于协助研究并实现新的研究。此外,还集成了Colab支持和Papers With Code网站,使得用户可以轻松地浏览和使用这些预训练模型。
发布者可以通过添加一个简单的hubconf.py文件来发布预训练模型。这提供了所支持模型的枚举以及运行模型所需依赖项列表。用户可以在torchvision,huggingface-bert和gan-model-zoo中找到示例。
对于用户来说,可以通过以下步骤操作:
查看可用的模型:使用torch.hub.list() API查看所有可用入口。
加载模型:使用torch.hub.load() API加载指定入口。这只需要一个命令,而不需要安装wheel。此外,可以调用torch.hub.help()获得如何演示如何使用预训练模式的一般信息。
了解方法:加载后,可以使用dir(model)查找该模式所支持方法,以bertForMaskedLM为例,可以查询forward方法参数帮助深入理解。
此外,由于直接链接到Colab,并且与Papers With Code结合,使得用户可以轻松进入Colab进行实验演示,同时也能访问最新版本更新。在保证稳定性的同时,也确保了最新版本获取。