加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

Facebook最新力作Pythia:模块化、即插即用,极大简化模型进展

发布时间:2019-05-23 06:25:18 所属栏目:建站 来源:佚名
导读:Facebook的人工智能研究部门近期推出Pythia,一个模块化的即插即用框架。目标是使数据科学家能够快速构建、复制和基准人工智能模型,将VQA v2.0数据集模型的性能从65.67%提高到70.22%,已在Github上开源。 Facebook最近接连针对开发者社区抛出了一系列工具

注册表

受到Redux全球商店的启发,Pythia生态系统所需的有用信息已在注册表中注册。可以将注册表视为框架的多个部分所需的信息的通用存储,并在需要该信息的任何地方起作用信息源。

注册表还基于如上所述的唯一密钥来注册模型、任务、数据集等。 注册表的函数可以用作需要注册的类的装饰器(例如模型等)

配置

根据研究需要,Pythia中的大多数参数/设置都是可配置的。 Pythia特定的默认值(training_parameters)存在于:

pythia/common/defaults/configs/base.yml

其中详细的注释描述了每个参数的用法。为了便于使用和模块化,每个数据集的配置分别保存在:

pythia/common/defaults/configs/tasks/[task]/[dataset].yml

可以从Tasks中的表中获取数据集的[task]值和数据集部分。模型配置也是分开的,并且是用户在创建自己的模型时需要定义的部分。

由于每个数据集的单独配置,这个概念可以扩展到执行多任务并在此包含多个数据集配置。

处理器

处理器的主要目的是使数据处理流程尽可能与不同数据集相似,并允许代码重用。

处理器接受带有与所需数据相对应key的字典,并返回带有处理数据的字典。这有助于通过修复所需的签名来使处理器独立于逻辑的其余部分。

处理器用于所有数据集以切换数据处理需求。在处理器文档中了解有关处理器的更多信息。

SampleList

SampleList受到了maskrcnn-benchmark中BBoxList的启发,但更为通用。与Pythia集成的所有数据集都需要返回一个Sample,该Sample将被整理到SampleList中。

现在,SampleList带有许多方便的功能,可以轻松地批量处理和访问事物。对于例如样本是带有一些key的字典。在SampleList中,这些key的值将根据它是张量还是列表而被巧妙地分组,并分配回该字典。

因此,终端用户可以很好地将这些key组合在一起,并可以在他们的模型中使用它们。与Pythia集成的模型接收SampleList作为参数,这再次使trainer对模型和数据集不再有任何影响。在其文档中了解有关Sample和SampleList的更多信息。

预训练模型

在Pythia中使用预训练模型进行推理很容易。从下表中选取一个预训练模型,并按照步骤进行推理或生成预测让EvalAI评估。(注意,这部分内容需要先安装教程中介绍的数据,教程链接在文末)

Facebook最新力作Pythia:模块化、即插即用,极大简化模型进展

现在,假设你到预培训模型model是link(从table中选择>右键单击>复制链接地址),相应的配置应该位于configs/[task]/[dataset]/[model].yml。例如,vqa2 train_and_val的配置文件应该是configs/vqa/vqa2/pythia_train_and_val.yml。现在要运行EvalAI的推断,请运行以下命令:

Facebook最新力作Pythia:模块化、即插即用,极大简化模型进展

如果要在val上进行培训或评估,请相应地将run_type改为train或val。你还可以使用多个运行类型,例如进行训练、对val进行推断、还可以将--run_type设置为train+val+inference进行推断。

如果删除--evalai_inference论证,Pythia 将执行推断并直接在数据集上提供结果。请注意,对于测试集,这是不能用的,因为我们没有它们的答案/目标。因此,这对于在本地执行 val集的推理很有用。

如果删除--evalai_inference论证,Pythia 将执行推断并直接在数据集上提供结果。请注意,对于测试集,这是不能用的,因为我们没有它们的答案/目标。因此,这对于在本地执行 val集的推理很有用。

下表显示了各种预培训模型的评估指标:

Facebook最新力作Pythia:模块化、即插即用,极大简化模型进展

Demo演示

Facebook最新力作Pythia:模块化、即插即用,极大简化模型进展

相关资源:

Github:

https://github.com/facebookresearch/pythia

Demo:

https://colab.research.google.com/drive/1Z9fsh10rFtgWe4uy8nvU4mQmqdokdIRR

教程:

https://learnpythia.readthedocs.io

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读