Perceiver Perceiver IO: 人工智能的多功能工具

news2024/9/25 1:15:04

如今人工智能系统使用的大多数架构都是专业的。2D 残差网络可能是处理图像的一个很好的选择,但它最多只能用于其他类型的数据,比如自动驾驶汽车中使用的激光雷达信号或机器人中使用的 torques。此外,标准架构在设计时通常只考虑一项任务,这常常导致工程师竭尽全力去重塑、扭曲或修改他们的输入和输出,希望标准架构能够学会正确地处理他们的问题。处理不止一种数据,比如组成视频的声音和图像,就更加复杂了,通常涉及由许多不同部分构建的复杂的手工调节系统,即使是简单的任务。Perceiver/Perceiver IO 希望构建能够解决使用多种输入和输出类型的问题的系统,因此开始探索一种更通用和通用的架构,可以处理所有类型的数据。

在ICML 2021 上发表的 Perceiver: General Perception with Iterative Attention,是一种通用架构,可以处理包括图像、点云、音频、视频及其组合在内的数据。虽然感知器可以处理多种输入数据,但它仅限于具有简单输出的任务,如分类。Perceiver IO: A General Architecture for Structured Inputs & Outputs,是 Perceiver 架构的一个更通用的版本。Perceiver IO 可以从许多不同的输入产生各种各样的输出,使其适用于现实世界的领域,如语言、视觉和多模态理解,以及具有挑战性的游戏,如星际争霸II。为了帮助研究人员和整个机器学习社区,源代码已经开放。

Perceiver 构建在 Transformer 之上,Transformer 是一种使用称为“注意力”的操作将输入映射到输出的体系结构。通过比较输入的所有元素,transformer 根据输入之间的关系和任务来处理输入。注意力是简单而广泛适用的,但 Transformer 使用注意力的方式会随着输入数量的增加而迅速变得昂贵。这意味着 Transformer 可以很好地处理最多只有几千个元素的输入,但常见的数据形式,如图像、视频和书籍,可以很容易地包含数百万个元素。使用最初的 Perceiver,解决了通才架构的一个主要问题:在不引入领域特定假设的情况下,将 Transformer 的注意力操作扩展到非常大的输入。Perceiver 通过使用注意力首先将输入编码到一个小的潜在数组中来实现这一点。然后,这个潜在的数组可以以独立于输入大小的成本进一步处理,使感知器的内存和计算需求随着输入变大而优雅地增长,即使对于特别深的模型也是如此。

这种“优雅的增长”使感知器Perceiver 前所未有的通用性水平——它在基于图像、3D点云、音频和图像的基准测试上与特定领域的模型竞争。但由于最初的 Perceiver 每次输入只产生一个输出,所以它不像研究人员所需要的那样多功能。Perceiver IO 通过使用注意力不仅对潜在数组进行编码,而且还从中进行解码,从而解决了这个问题,这给了网络很大的灵活性。Perceiver IO现在可以扩展到大型和多样化的输入和输出,甚至可以同时处理许多任务或数据类型。这为各种各样的应用程序打开了大门,比如从文本的每个字符理解文本的含义,跟踪图像中所有点的运动,处理组成视频的声音、图像和标签,甚至玩游戏,所有这些都使用比替代方案更简单的单一架构。

Figure 1. The Perceiver IO architecture maps input arrays to output arrays by means of a small latent array, which lets it scale gracefully even for very large inputs and outputs. Perceiver IO uses a global attention mechanism that generalizes across many different kinds of data.

Figure 2. Perceiver IO produces state-of-the-art results on the challenging task of optical flow estimation, or tracking the motion of all pixels in an image. The colour of each pixel shows the direction and speed of motion estimated by Perceiver IO, as indicated in the legend above.

Building architectures that can handle the world’s data (deepmind.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/430729.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Seal AppManager发布:基于平台工程理念的全新应用部署管理体验

4月12日,数澈软件Seal(以下简称“Seal”)宣布推出新一代应用统一部署管理平台 Seal AppManager,采用平台工程的理念,降低基础设施操作的复杂度为研发和运维团队提供易用、一致的应用管理和部署体验,进而提升…

SpringMVC使用介绍-快速入门

文章目录SpringMVCSpringMVC快速入门bean加载控制SpringMVC SpringMVC快速入门 SpringMVC是一种基于Java实现MVC模型的轻量级Web框架 优点 使用简单,开发便捷(相比于Servlet) 灵活性强 使用SpringMVC技术开发web程序流程: 1.创建web工程&a…

[牛客复盘] 牛客小白月赛70 20230407

[牛客复盘] 牛客小白月赛70 20230407 一、本周周赛总结A、 小d和答案修改2. 思路分析3. 代码实现B、小d和图片压缩1. 题目描述2. 思路分析3. 代码实现C、小d和超级泡泡堂1. 题目描述2. 思路分析3. 代码实现D、小d和孤独的区间1. 题目描述2. 思路分析3. 代码实现E、小d的博弈1. …

C语言内存函数介绍以及实现

目录 前言 一:内存拷贝函数 (1)memcpy( )函数 (2)memove( )函数 二:内存比较函数 三:内存设置函数 前言 本文介绍的函数的函数声明都在头文件string.h中。 一:内存拷贝函数 (1)memcpy( )函数 函数声明:void* memcpy(void* dest,const void* src,size_t num) 作用…

【python】制作一个简单的界面,有手就行的界面~

目录前言准备工作试手小案例开始我们今天的案例教学尾语 💝前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! ttkbootstrap 是一个基于 tkinter 的界面美化库, 使用这个工具可以开发出类似前端 bootstrap 风格的 tkinter 桌面程序。 ttkbootstrap 不…

8:00面试,8:05就出来了 ,问的实在是太变态了···

从外包出来,没想到算法死在另一家厂子。 自从加入这家公司,每天都在加班,钱倒是给的不少,所以也就忍了。没想到12月一纸通知,所有人不许加班,薪资直降30%,顿时有吃不起饭的赶脚。 好在有个兄弟…

Yolov5_DeepSort_Pytorch:基于 Yolov5 + Deep Sort 的实时多目标跟踪器

Yolov5_DeepSort_Pytorch:基于 Yolov5 Deep Sort 的实时多目标跟踪器 原创 视界君 Python视界 昨天 Python视界分享 原文地址:Yolov5_DeepSort_Pytorch:基于 Yolov5 Deep Sort 的实时多目标跟踪器 简介 该存储库包含一个两阶段跟踪器。…

linux主机设置主机间免密登录

举例:想要在A主机免密登录到B主机; 此文案前提是linux都安装了ssh服务,可以使用systemctl status sshd 查看ssh状态 1、使用任意用户在A主机上执行ssh-keygen -t rsa 所有提示均按回车默认,会在当前目录生成.ssh文件夹&#xff0…

实战-高并发下的读/写

文章目录高并发下的读/写高并发读业务场景高并发写业务场景同时高并发读和高并发写业务场景高并发读策略一:加缓存/读副本方案一:本地缓存/集中式缓存方案二:数据库层面的改变,Master/Slave,使用主从完成读写分离方案三…

MySQL学习笔记:count(1)、count(*)、count(字段)的区别

关于数据库中行数统计,无论是MySQL还是Oracle,都有一个函数可以使用,那就是COUNT()。 但是,就是这个常用的COUNT函数,却暗藏着很多玄机,尤其是在面试的时候,一不小心就会…

JUC多并发编程 CompletableFuture

Future 接口理论 Future 接口(FutureTask 实现类): 定义了操作异步任务执行一些方法,如获取异步任务的执行结果、取消任务的执行、判断任务是否被取消、判断任务执行是否完毕等 方法图: 类图: 代码示例: import ja…

Maven聚合开发【实例详解---5555字】

目录 一、Maven聚合开发_继承关系 二、Maven聚合案例 1. 搭建dao模块 2. 搭建service模块 3. 搭建web模块 4. 运行项目 一、Maven聚合开发_继承关系 Maven中的继承是针对于父工程和子工程。父工程定义的依赖和插件子工程可以直接使用。注意父工程类型一定为POM类型工程…

数字电路学习笔记 门电路概述

1 高低电平的实现 在数字电路中,输入输出都是二值逻辑,其高低电平用“0”和“1”表示其高低电平的获得是通过开关电路来实现,如二极管或三极管电路组成。如图 高低电平实现原理电其原理电路 当开关 S 断开时,输出电压 v。 V。&am…

Alibaba开源的Java诊断工具Arthas-实战

目录参考一、启动二、支持的ognl表达式三、监听参数监听Controller 的参数和返回值监听完整参数和返回值监听kafka消费监听单个参数监听异常按照耗时进行过滤监听参数比较四、变量和方法查询静态成员变量值查询配置类具体属性的值通过类加载器查看Spring容器中对象所有属性执行…

Qt显示数学公式

文章目录一、前言二、效果展示三、库文件四、使用教程五、MathML语法5.1、顶层元素5.2、字符/符号元素5.3、通用布局元素5.4、边标和角标元素5.5、表格教学5.6、数学符号六、转换工具6.1、手写转换公式工具myscript6.2、截图转换公式工具Mathpix一、前言 目前项目中需要显示数…

MySQL数据库学习——约束——概述+演示

我们先创建一个表&#xff1a; create database itheima; use itheima; create table user(id int primary key auto_increment comment 主键, name varchar(10) not null unique comment 姓名,age int check ( age > 0 && age <120 ) comment 年龄,status char…

零代码是什么?零代码平台适合谁用?

随着信息技术的发展&#xff0c;软件开发领域也不断发生变革&#xff0c;零代码&#xff08;No-Code&#xff09;开发模式越来越受到关注。 零代码到底是什么&#xff0c;能不能用通俗的话来说&#xff1f;这就来给大家讲一讲&#xff01; 01 零代码为什么出现&#xff1f; 随…

spring cloud consul服务注册源码分析

我们注册在consul上的服务&#xff0c;都是通过spring cloud consul discorvery来实现的&#xff0c;可以通过maven依赖导入spring-cloud-consul-discovery包。 对于spring项目&#xff0c;首先查看spring.factories文件&#xff1a; 从源码中可以找到服务注册、自动服务注册…

kubespray v2.21.0 部署 kubernetes v1.24.0 集群

文章目录1. 前言2. 创建7台虚拟机3. 部署 git3.1 dnf 安装3.2 tar 安装4. 下载 kubespray 介质5. 配置 zsh 终端6. 配置互信7. 安装 docker-ce8. 安装 ansible9. 安装其他依赖10. 配置内核参数11. 安装 k8s利用官方默认镜像部署 k8s 集群利用自定义构建镜像部署 k8s 集群12. 配…

第二讲 第一个Python程序

在上一课中&#xff0c;我们对 Python 语言的过去现在有了一些了解&#xff0c;我们准备好了运行 Python 程序所需要的解释器环境。相信大家已经迫不及待的想开始自己的 Python 编程之旅了&#xff0c;但是新问题来了&#xff0c;我们应该在什么地方书写 Python 程序&#xff0…