可复现性是机器学习研究的重要组成部分,它能够验证所提出的模型是否达到了承诺的性能。当研究人员提交新论文时,他们通常会在GitHub上开源其预训练模型的代码和参数,以便其他人了解他们是否能够实现已发布的实验结果。然而,在加载模型以进行复现测试时涉及许多耗时的步骤。

为了提供更流畅的复制体验,Facebook宣布推出PyTorch Hub,这是一个新的预训练模型库,旨在促进模型的可复现性。由于其无与伦比的灵活性和强大功能,PyTorch是最受青睐的机器学习框架之一。 Facebook在上个月的F8开发者大会上发布了PyTorch v1.1,其中包括TensorBoard和JIT编译器等主要功能。

PyTorch Hub允许用户通过发送拉取请求来发布模型,并仅使用一行代码加载模型。以下是PyTorch Hub的主要功能的具体描述:

  1. 发布模型:PyTorch Hub支持通过添加一个简单的hubconf.py文件将预训练模型(模型定义和预训练权重)发布到GitHub存储库,该文件提供运行模型所需的受支持模型和依赖项列表。

在研究人员发送拉取请求后,Facebook PyTorch团队将帮助完善他们的拉取请求并决定是否接受它。接受的发布模型最终会出现在PyTorch Hub网页上。

  1. 加载模型:用户可以使用torch.hub.load()API加载预先训练的模型。下面是从pytorch / vision repo加载resnet18入口点的代码。

model = torch.hub.load(’pytorch / vision’,’resnet18’,pretrained = True)

PyTorch Hub目前可容纳18种备受瞩目的机器学习模型,包括谷歌的BERT,由Hugging Face重新实现,以及由Facebook AI Research推出的PGANs。用户还可以在Colab和Papers With Code上查看这些和其他模型。 Facebook表示,PyTorch Hub将很快为开发人员提供即插即用型号,以进一步加速机器学习模型的可重复性测试和开发。

有关PyTorch Hub项目页面的更多信息。

从A到Z,掌握机器学习基本词汇【A】

Accuracy: 准确率 机器学习的常用评价指标。定义如下: Accuracy = (TruePositives + TrueNegatives) / 总样本数 经常和准确率一起出现的,还有精确率和召...

阅读全文

小白的机器学习实战——向量,矩阵和数组

创建矩阵 import numpy as np # 创建矩阵 matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], ...

阅读全文

可能是最全的数据标准化教程(附python代码)

什么是数据标准化(归一化) 数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,当各指标间的水平相差很大时,...

阅读全文